diff --git a/providers/src/aws/v00.00.00000/provider.yaml b/providers/src/aws/v00.00.00000/provider.yaml
index 459c500e..7061fec5 100644
--- a/providers/src/aws/v00.00.00000/provider.yaml
+++ b/providers/src/aws/v00.00.00000/provider.yaml
@@ -20,6 +20,15 @@ providerServices:
title: acmpca
version: v00.00.00000
description: acmpca
+ amazonmq:
+ id: amazonmq:v00.00.00000
+ name: amazonmq
+ preferred: true
+ service:
+ $ref: aws/v00.00.00000/services/amazonmq.yaml
+ title: amazonmq
+ version: v00.00.00000
+ description: amazonmq
amplify:
id: amplify:v00.00.00000
name: amplify
@@ -101,6 +110,15 @@ providerServices:
title: applicationinsights
version: v00.00.00000
description: applicationinsights
+ applicationsignals:
+ id: applicationsignals:v00.00.00000
+ name: applicationsignals
+ preferred: true
+ service:
+ $ref: aws/v00.00.00000/services/applicationsignals.yaml
+ title: applicationsignals
+ version: v00.00.00000
+ description: applicationsignals
apprunner:
id: apprunner:v00.00.00000
name: apprunner
@@ -128,6 +146,15 @@ providerServices:
title: appsync
version: v00.00.00000
description: appsync
+ apptest:
+ id: apptest:v00.00.00000
+ name: apptest
+ preferred: true
+ service:
+ $ref: aws/v00.00.00000/services/apptest.yaml
+ title: apptest
+ version: v00.00.00000
+ description: apptest
aps:
id: aps:v00.00.00000
name: aps
@@ -461,6 +488,15 @@ providerServices:
title: connectcampaigns
version: v00.00.00000
description: connectcampaigns
+ connectcampaignsv2:
+ id: connectcampaignsv2:v00.00.00000
+ name: connectcampaignsv2
+ preferred: true
+ service:
+ $ref: aws/v00.00.00000/services/connectcampaignsv2.yaml
+ title: connectcampaignsv2
+ version: v00.00.00000
+ description: connectcampaignsv2
controltower:
id: controltower:v00.00.00000
name: controltower
@@ -911,6 +947,15 @@ providerServices:
title: internetmonitor
version: v00.00.00000
description: internetmonitor
+ invoicing:
+ id: invoicing:v00.00.00000
+ name: invoicing
+ preferred: true
+ service:
+ $ref: aws/v00.00.00000/services/invoicing.yaml
+ title: invoicing
+ version: v00.00.00000
+ description: invoicing
iot:
id: iot:v00.00.00000
name: iot
@@ -1100,6 +1145,15 @@ providerServices:
title: lambda
version: v00.00.00000
description: lambda
+ launchwizard:
+ id: launchwizard:v00.00.00000
+ name: launchwizard
+ preferred: true
+ service:
+ $ref: aws/v00.00.00000/services/launchwizard.yaml
+ title: launchwizard
+ version: v00.00.00000
+ description: launchwizard
lex:
id: lex:v00.00.00000
name: lex
@@ -1307,15 +1361,6 @@ providerServices:
title: networkmanager
version: v00.00.00000
description: networkmanager
- nimblestudio:
- id: nimblestudio:v00.00.00000
- name: nimblestudio
- preferred: true
- service:
- $ref: aws/v00.00.00000/services/nimblestudio.yaml
- title: nimblestudio
- version: v00.00.00000
- description: nimblestudio
oam:
id: oam:v00.00.00000
name: oam
@@ -1406,6 +1451,24 @@ providerServices:
title: pcaconnectorad
version: v00.00.00000
description: pcaconnectorad
+ pcaconnectorscep:
+ id: pcaconnectorscep:v00.00.00000
+ name: pcaconnectorscep
+ preferred: true
+ service:
+ $ref: aws/v00.00.00000/services/pcaconnectorscep.yaml
+ title: pcaconnectorscep
+ version: v00.00.00000
+ description: pcaconnectorscep
+ pcs:
+ id: pcs:v00.00.00000
+ name: pcs
+ preferred: true
+ service:
+ $ref: aws/v00.00.00000/services/pcs.yaml
+ title: pcs
+ version: v00.00.00000
+ description: pcs
personalize:
id: personalize:v00.00.00000
name: personalize
@@ -1478,6 +1541,15 @@ providerServices:
title: ram
version: v00.00.00000
description: ram
+ rbin:
+ id: rbin:v00.00.00000
+ name: rbin
+ preferred: true
+ service:
+ $ref: aws/v00.00.00000/services/rbin.yaml
+ title: rbin
+ version: v00.00.00000
+ description: rbin
rds:
id: rds:v00.00.00000
name: rds
@@ -1658,6 +1730,15 @@ providerServices:
title: s3outposts
version: v00.00.00000
description: s3outposts
+ s3tables:
+ id: s3tables:v00.00.00000
+ name: s3tables
+ preferred: true
+ service:
+ $ref: aws/v00.00.00000/services/s3tables.yaml
+ title: s3tables
+ version: v00.00.00000
+ description: s3tables
sagemaker:
id: sagemaker:v00.00.00000
name: sagemaker
@@ -1802,6 +1883,15 @@ providerServices:
title: ssmincidents
version: v00.00.00000
description: ssmincidents
+ ssmquicksetup:
+ id: ssmquicksetup:v00.00.00000
+ name: ssmquicksetup
+ preferred: true
+ service:
+ $ref: aws/v00.00.00000/services/ssmquicksetup.yaml
+ title: ssmquicksetup
+ version: v00.00.00000
+ description: ssmquicksetup
sso:
id: sso:v00.00.00000
name: sso
diff --git a/providers/src/aws/v00.00.00000/services/accessanalyzer.yaml b/providers/src/aws/v00.00.00000/services/accessanalyzer.yaml
index afd34209..2034ba14 100644
--- a/providers/src/aws/v00.00.00000/services/accessanalyzer.yaml
+++ b/providers/src/aws/v00.00.00000/services/accessanalyzer.yaml
@@ -438,22 +438,61 @@ components:
maxLength: 127
Value:
type: string
- description: 'The value for the tag. You can specify a value that is 1 to 255 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -. '
- minLength: 1
+ description: 'The value for the tag. You can specify a value that is 0 to 255 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -. '
+ minLength: 0
maxLength: 255
required:
- Key
- - Value
+ additionalProperties: false
+ Tags:
+ type: array
+ x-insertionOrder: false
+ uniqueItems: true
+ description: An array of key-value pairs to apply to this resource.
+ items:
+ $ref: '#/components/schemas/Tag'
+ AnalysisRuleCriteria:
+ description: The criteria for an analysis rule for an analyzer.
+ type: object
+ properties:
+ AccountIds:
+ description: A list of AWS account IDs to apply to the analysis rule criteria. The accounts cannot include the organization analyzer owner account. Account IDs can only be applied to the analysis rule criteria for organization-level analyzers.
+ type: array
+ x-insertionOrder: false
+ items:
+ type: string
+ ResourceTags:
+ description: |-
+ An array of key-value pairs to match for your resources. You can use the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -.
+
+ For the tag key, you can specify a value that is 1 to 128 characters in length and cannot be prefixed with aws:.
+
+ For the tag value, you can specify a value that is 0 to 256 characters in length. If the specified tag value is 0 characters, the rule is applied to all principals with the specified tag key.
+ type: array
+ x-insertionOrder: false
+ items:
+ $ref: '#/components/schemas/Tags'
additionalProperties: false
UnusedAccessConfiguration:
description: The Configuration for Unused Access Analyzer
type: object
properties:
UnusedAccessAge:
- description: 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.
+ description: 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 365 days.
type: integer
minimum: 1
- maximum: 180
+ maximum: 365
+ AnalysisRule:
+ description: Contains information about rules for the analyzer.
+ type: object
+ properties:
+ Exclusions:
+ description: A list of rules for the analyzer containing criteria to exclude from analysis. Entities that meet the rule criteria will not generate findings.
+ type: array
+ x-insertionOrder: false
+ items:
+ $ref: '#/components/schemas/AnalysisRuleCriteria'
+ additionalProperties: false
additionalProperties: false
Analyzer:
type: object
@@ -503,6 +542,7 @@ components:
x-create-only-properties:
- AnalyzerName
- Type
+ x-conditional-create-only-properties:
- AnalyzerConfiguration
x-read-only-properties:
- Arn
@@ -514,6 +554,10 @@ components:
tagUpdatable: true
cloudFormationSystemTags: true
tagProperty: /properties/Tags
+ permissions:
+ - access-analyzer:UntagResource
+ - access-analyzer:TagResource
+ - access-analyzer:ListTagsForResource
x-required-permissions:
create:
- access-analyzer:CreateAnalyzer
@@ -531,6 +575,7 @@ components:
- access-analyzer:ListAnalyzers
- access-analyzer:TagResource
- access-analyzer:UntagResource
+ - access-analyzer:UpdateAnalyzer
- access-analyzer:UpdateArchiveRule
delete:
- access-analyzer:DeleteAnalyzer
diff --git a/providers/src/aws/v00.00.00000/services/amazonmq.yaml b/providers/src/aws/v00.00.00000/services/amazonmq.yaml
new file mode 100644
index 00000000..07e729d9
--- /dev/null
+++ b/providers/src/aws/v00.00.00000/services/amazonmq.yaml
@@ -0,0 +1,966 @@
+openapi: 3.0.0
+info:
+ title: AmazonMQ
+ version: 2.0.0
+ x-serviceName: cloudcontrolapi
+servers:
+ - url: https://cloudcontrolapi.{region}.amazonaws.com
+ variables:
+ region:
+ description: The AWS region
+ enum:
+ - us-east-1
+ - us-east-2
+ - us-west-1
+ - us-west-2
+ - us-gov-west-1
+ - us-gov-east-1
+ - ca-central-1
+ - eu-north-1
+ - eu-west-1
+ - eu-west-2
+ - eu-west-3
+ - eu-central-1
+ - eu-south-1
+ - af-south-1
+ - ap-northeast-1
+ - ap-northeast-2
+ - ap-northeast-3
+ - ap-southeast-1
+ - ap-southeast-2
+ - ap-east-1
+ - ap-south-1
+ - sa-east-1
+ - me-south-1
+ default: us-east-1
+ description: The CloudControlApi multi-region endpoint
+ - url: https://cloudcontrolapi.{region}.amazonaws.com.cn
+ variables:
+ region:
+ description: The AWS region
+ enum:
+ - cn-north-1
+ - cn-northwest-1
+ default: cn-north-1
+ description: The CloudControlApi endpoint for China (Beijing) and China (Ningxia)
+components:
+ parameters:
+ X-Amz-Content-Sha256:
+ name: X-Amz-Content-Sha256
+ in: header
+ schema:
+ type: string
+ required: false
+ X-Amz-Date:
+ name: X-Amz-Date
+ in: header
+ schema:
+ type: string
+ required: false
+ X-Amz-Algorithm:
+ name: X-Amz-Algorithm
+ in: header
+ schema:
+ type: string
+ required: false
+ X-Amz-Credential:
+ name: X-Amz-Credential
+ in: header
+ schema:
+ type: string
+ required: false
+ X-Amz-Security-Token:
+ name: X-Amz-Security-Token
+ in: header
+ schema:
+ type: string
+ required: false
+ X-Amz-Signature:
+ name: X-Amz-Signature
+ in: header
+ schema:
+ type: string
+ required: false
+ X-Amz-SignedHeaders:
+ name: X-Amz-SignedHeaders
+ in: header
+ schema:
+ type: string
+ required: false
+ x-cloud-control-schemas:
+ AlreadyExistsException: {}
+ CancelResourceRequestInput:
+ properties:
+ RequestToken:
+ $ref: '#/components/x-cloud-control-schemas/RequestToken'
+ required:
+ - RequestToken
+ title: CancelResourceRequestInput
+ type: object
+ CancelResourceRequestOutput:
+ properties:
+ ProgressEvent:
+ $ref: '#/components/x-cloud-control-schemas/ProgressEvent'
+ type: object
+ ClientToken:
+ maxLength: 128
+ minLength: 1
+ pattern: '[-A-Za-z0-9+/=]+'
+ type: string
+ ClientTokenConflictException: {}
+ ConcurrentModificationException: {}
+ ConcurrentOperationException: {}
+ CreateResourceInput:
+ properties:
+ ClientToken:
+ type: string
+ DesiredState:
+ allOf:
+ - $ref: '#/components/x-cloud-control-schemas/Properties'
+ - description: >-
+
Structured data format representing the desired state of the resource, consisting of that resource's properties and their desired values.
Cloud Control API currently supports JSON as a structured data format.
<p>Specify the desired state as one of the following:</p> <ul> <li> <p>A JSON blob</p> </li> <li> <p>A local path containing the desired state in JSON data format</p>
+ </li> </ul> <p>For more information, see <a href="https://docs.aws.amazon.com/cloudcontrolapi/latest/userguide/resource-operations-create.html#resource-operations-create-desiredstate">Composing the desired state of the resource</a> in the <i>Amazon Web Services Cloud Control API User Guide</i>.</p> <p>For more information about the properties of a specific resource, refer to the related topic for the resource in the
+ <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-template-resource-type-ref.html">Resource and property types reference</a> in the <i>CloudFormation Users Guide</i>.</p>
+ RoleArn:
+ type: string
+ TypeName:
+ type: string
+ TypeVersionId:
+ type: string
+ required:
+ - DesiredState
+ title: CreateResourceInput
+ type: object
+ CreateResourceOutput:
+ properties:
+ ProgressEvent:
+ $ref: '#/components/x-cloud-control-schemas/ProgressEvent'
+ type: object
+ DeleteResourceInput:
+ properties:
+ ClientToken:
+ type: string
+ Identifier:
+ $ref: '#/components/x-cloud-control-schemas/Identifier'
+ RoleArn:
+ type: string
+ TypeName:
+ type: string
+ TypeVersionId:
+ type: string
+ required:
+ - Identifier
+ title: DeleteResourceInput
+ type: object
+ DeleteResourceOutput:
+ properties:
+ ProgressEvent:
+ $ref: '#/components/x-cloud-control-schemas/ProgressEvent'
+ type: object
+ GeneralServiceException: {}
+ GetResourceInput:
+ properties:
+ TypeName:
+ $ref: '#/components/x-cloud-control-schemas/TypeName'
+ Identifier:
+ $ref: '#/components/x-cloud-control-schemas/Identifier'
+ TypeVersionId:
+ $ref: '#/components/x-cloud-control-schemas/TypeVersionId'
+ RoleArn:
+ $ref: '#/components/x-cloud-control-schemas/RoleArn'
+ required:
+ - TypeName
+ - Identifier
+ title: GetResourceInput
+ type: object
+ GetResourceOutput:
+ properties:
+ ResourceDescription:
+ $ref: '#/components/x-cloud-control-schemas/ResourceDescription'
+ TypeName:
+ type: string
+ type: object
+ GetResourceRequestStatusInput:
+ properties:
+ RequestToken:
+ $ref: '#/components/x-cloud-control-schemas/RequestToken'
+ required:
+ - RequestToken
+ title: GetResourceRequestStatusInput
+ type: object
+ GetResourceRequestStatusOutput:
+ properties:
+ ProgressEvent:
+ $ref: '#/components/x-cloud-control-schemas/ProgressEvent'
+ type: object
+ HandlerErrorCode:
+ enum:
+ - NotUpdatable
+ - InvalidRequest
+ - AccessDenied
+ - InvalidCredentials
+ - AlreadyExists
+ - NotFound
+ - ResourceConflict
+ - Throttling
+ - ServiceLimitExceeded
+ - NotStabilized
+ - GeneralServiceException
+ - ServiceInternalError
+ - ServiceTimeout
+ - NetworkFailure
+ - InternalFailure
+ type: string
+ HandlerFailureException: {}
+ HandlerInternalFailureException: {}
+ HandlerNextToken:
+ maxLength: 2048
+ minLength: 1
+ pattern: .+
+ type: string
+ Identifier:
+ maxLength: 1024
+ minLength: 1
+ pattern: .+
+ type: string
+ InvalidCredentialsException: {}
+ InvalidRequestException: {}
+ MaxResults:
+ maximum: 100
+ minimum: 1
+ type: integer
+ NetworkFailureException: {}
+ NextToken:
+ maxLength: 2048
+ minLength: 1
+ pattern: '[-A-Za-z0-9+/=]+'
+ type: string
+ NotStabilizedException: {}
+ NotUpdatableException: {}
+ Operation:
+ enum:
+ - CREATE
+ - DELETE
+ - UPDATE
+ type: string
+ OperationStatus:
+ enum:
+ - PENDING
+ - IN_PROGRESS
+ - SUCCESS
+ - FAILED
+ - CANCEL_IN_PROGRESS
+ - CANCEL_COMPLETE
+ type: string
+ OperationStatuses:
+ items:
+ $ref: '#/components/x-cloud-control-schemas/OperationStatus'
+ type: array
+ Operations:
+ items:
+ $ref: '#/components/x-cloud-control-schemas/Operation'
+ type: array
+ PatchDocument:
+ format: password
+ maxLength: 65536
+ minLength: 1
+ pattern: '[\s\S]*'
+ type: string
+ PrivateTypeException: {}
+ ProgressEvent:
+ example:
+ ErrorCode: string
+ EventTime: number
+ Identifier: string
+ Operation: string
+ OperationStatus: string
+ RequestToken: string
+ ResourceModel: string
+ RetryAfter: number
+ StatusMessage: string
+ TypeName: string
+ properties:
+ ErrorCode:
+ type: string
+ EventTime:
+ type: number
+ Identifier:
+ type: string
+ Operation:
+ type: string
+ OperationStatus:
+ type: string
+ RequestToken:
+ type: string
+ ResourceModel:
+ type: string
+ RetryAfter:
+ type: number
+ StatusMessage:
+ type: string
+ TypeName:
+ type: string
+ type: object
+ Properties:
+ format: password
+ maxLength: 65536
+ minLength: 1
+ pattern: '[\s\S]*'
+ type: string
+ RequestToken:
+ maxLength: 128
+ minLength: 1
+ pattern: '[-A-Za-z0-9+/=]+'
+ type: string
+ RequestTokenNotFoundException: {}
+ ResourceConflictException: {}
+ ResourceDescription:
+ description: Represents information about a provisioned resource.
+ properties:
+ Identifier:
+ type: string
+ Properties:
+ type: string
+ type: object
+ ResourceDescriptions:
+ items:
+ $ref: '#/components/x-cloud-control-schemas/ResourceDescription'
+ type: array
+ ResourceNotFoundException: {}
+ ResourceRequestStatusFilter:
+ description: The filter criteria to use in determining the requests returned.
+ properties:
+ undefined:
+ allOf:
+ - $ref: '#/components/x-cloud-control-schemas/OperationStatuses'
+ - description: >-
+ The operation statuses to include in the filter.
-
PENDING: The operation has been requested, but not yet initiated.
-
IN_PROGRESS: The operation is in progress.
-
SUCCESS: The operation completed.
-
FAILED: The operation failed.
-
CANCEL_IN_PROGRESS: The operation is in the process of being canceled.
-
+ CANCEL_COMPLETE: The operation has been canceled.
+ type: object
+ ResourceRequestStatusSummaries:
+ items:
+ $ref: '#/components/x-cloud-control-schemas/ProgressEvent'
+ type: array
+ RoleArn:
+ maxLength: 2048
+ minLength: 20
+ pattern: arn:.+:iam::[0-9]{12}:role/.+
+ type: string
+ ServiceInternalErrorException: {}
+ ServiceLimitExceededException: {}
+ StatusMessage:
+ maxLength: 1024
+ minLength: 0
+ pattern: '[\s\S]*'
+ type: string
+ ThrottlingException: {}
+ Timestamp:
+ format: date-time
+ type: string
+ TypeName:
+ maxLength: 196
+ minLength: 10
+ pattern: '[A-Za-z0-9]{2,64}::[A-Za-z0-9]{2,64}::[A-Za-z0-9]{2,64}'
+ type: string
+ TypeNotFoundException: {}
+ TypeVersionId:
+ maxLength: 128
+ minLength: 1
+ pattern: '[A-Za-z0-9-]+'
+ type: string
+ UnsupportedActionException: {}
+ UpdateResourceInput:
+ properties:
+ undefined:
+ allOf:
+ - $ref: '#/components/x-cloud-control-schemas/PatchDocument'
+ required:
+ - Identifier
+ - PatchDocument
+ title: UpdateResourceInput
+ type: object
+ UpdateResourceOutput:
+ properties:
+ ProgressEvent:
+ $ref: '#/components/x-cloud-control-schemas/ProgressEvent'
+ type: object
+ schemas:
+ TagsEntry:
+ type: object
+ additionalProperties: false
+ properties:
+ Value:
+ type: string
+ Key:
+ type: string
+ required:
+ - Value
+ - Key
+ Configuration:
+ type: object
+ properties:
+ Arn:
+ type: string
+ description: The Amazon Resource Name (ARN) of the Amazon MQ configuration.
+ AuthenticationStrategy:
+ type: string
+ description: The authentication strategy associated with the configuration. The default is SIMPLE.
+ EngineType:
+ type: string
+ description: 'The type of broker engine. Note: Currently, Amazon MQ only supports ACTIVEMQ for creating and editing broker configurations.'
+ EngineVersion:
+ type: string
+ description: The version of the broker engine.
+ Data:
+ type: string
+ description: The base64-encoded XML configuration.
+ Description:
+ type: string
+ description: The description of the configuration.
+ Id:
+ type: string
+ description: The ID of the Amazon MQ configuration.
+ Name:
+ type: string
+ description: The name of the configuration.
+ Revision:
+ type: string
+ description: The revision number of the configuration.
+ Tags:
+ type: array
+ description: Create tags when creating the configuration.
+ x-insertionOrder: false
+ items:
+ $ref: '#/components/schemas/TagsEntry'
+ required:
+ - EngineType
+ - Name
+ x-stackql-resource-name: configuration
+ description: Resource Type definition for AWS::AmazonMQ::Configuration
+ x-type-name: AWS::AmazonMQ::Configuration
+ x-stackql-primary-identifier:
+ - Id
+ x-create-only-properties:
+ - AuthenticationStrategy
+ - EngineType
+ - EngineVersion
+ - Name
+ x-write-only-properties:
+ - Data
+ x-read-only-properties:
+ - Arn
+ - Id
+ - Revision
+ x-required-properties:
+ - EngineType
+ - Name
+ x-tagging:
+ taggable: true
+ tagOnCreate: true
+ tagUpdatable: true
+ cloudFormationSystemTags: false
+ tagProperty: /properties/Tags
+ permissions:
+ - mq:ListTags
+ - mq:CreateTags
+ - mq:DeleteTags
+ x-required-permissions:
+ create:
+ - mq:CreateConfiguration
+ - mq:CreateTags
+ - mq:UpdateConfiguration
+ read:
+ - mq:DescribeConfiguration
+ - mq:ListTags
+ update:
+ - mq:UpdateConfiguration
+ - mq:CreateTags
+ - mq:DeleteTags
+ delete:
+ - mq:DescribeConfiguration
+ list:
+ - mq:ListConfigurations
+ CreateConfigurationRequest:
+ properties:
+ ClientToken:
+ type: string
+ RoleArn:
+ type: string
+ TypeName:
+ type: string
+ TypeVersionId:
+ type: string
+ DesiredState:
+ type: object
+ properties:
+ Arn:
+ type: string
+ description: The Amazon Resource Name (ARN) of the Amazon MQ configuration.
+ AuthenticationStrategy:
+ type: string
+ description: The authentication strategy associated with the configuration. The default is SIMPLE.
+ EngineType:
+ type: string
+ description: 'The type of broker engine. Note: Currently, Amazon MQ only supports ACTIVEMQ for creating and editing broker configurations.'
+ EngineVersion:
+ type: string
+ description: The version of the broker engine.
+ Data:
+ type: string
+ description: The base64-encoded XML configuration.
+ Description:
+ type: string
+ description: The description of the configuration.
+ Id:
+ type: string
+ description: The ID of the Amazon MQ configuration.
+ Name:
+ type: string
+ description: The name of the configuration.
+ Revision:
+ type: string
+ description: The revision number of the configuration.
+ Tags:
+ type: array
+ description: Create tags when creating the configuration.
+ x-insertionOrder: false
+ items:
+ $ref: '#/components/schemas/TagsEntry'
+ x-stackQL-stringOnly: true
+ x-title: CreateConfigurationRequest
+ type: object
+ required: []
+ securitySchemes:
+ hmac:
+ type: apiKey
+ name: Authorization
+ in: header
+ description: Amazon Signature authorization v4
+ x-amazon-apigateway-authtype: awsSigv4
+ x-stackQL-resources:
+ configurations:
+ name: configurations
+ id: aws.amazonmq.configurations
+ x-cfn-schema-name: Configuration
+ x-cfn-type-name: AWS::AmazonMQ::Configuration
+ x-identifiers:
+ - Id
+ x-type: cloud_control
+ methods:
+ create_resource:
+ config:
+ requestBodyTranslate:
+ algorithm: naive_DesiredState
+ operation:
+ $ref: '#/paths/~1?Action=CreateResource&Version=2021-09-30&__Configuration&__detailTransformed=true/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::AmazonMQ::Configuration"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ update_resource:
+ operation:
+ $ref: '#/paths/~1?Action=UpdateResource&Version=2021-09-30/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::AmazonMQ::Configuration"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ delete_resource:
+ operation:
+ $ref: '#/paths/~1?Action=DeleteResource&Version=2021-09-30/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::AmazonMQ::Configuration"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ sqlVerbs:
+ insert:
+ - $ref: '#/components/x-stackQL-resources/configurations/methods/create_resource'
+ delete:
+ - $ref: '#/components/x-stackQL-resources/configurations/methods/delete_resource'
+ update:
+ - $ref: '#/components/x-stackQL-resources/configurations/methods/update_resource'
+ config:
+ views:
+ select:
+ predicate: sqlDialect == "sqlite3" && requiredParams == [ data__Identifier ]
+ ddl: |-
+ SELECT
+ region,
+ data__Identifier,
+ JSON_EXTRACT(Properties, '$.Arn') as arn,
+ JSON_EXTRACT(Properties, '$.AuthenticationStrategy') as authentication_strategy,
+ JSON_EXTRACT(Properties, '$.EngineType') as engine_type,
+ JSON_EXTRACT(Properties, '$.EngineVersion') as engine_version,
+ JSON_EXTRACT(Properties, '$.Data') as data,
+ JSON_EXTRACT(Properties, '$.Description') as description,
+ JSON_EXTRACT(Properties, '$.Id') as id,
+ JSON_EXTRACT(Properties, '$.Name') as name,
+ JSON_EXTRACT(Properties, '$.Revision') as revision,
+ JSON_EXTRACT(Properties, '$.Tags') as tags
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::AmazonMQ::Configuration'
+ AND data__Identifier = ''
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "sqlite3"
+ ddl: |-
+ SELECT
+ detail.region,
+ JSON_EXTRACT(detail.Properties, '$.Arn') as arn,
+ JSON_EXTRACT(detail.Properties, '$.AuthenticationStrategy') as authentication_strategy,
+ JSON_EXTRACT(detail.Properties, '$.EngineType') as engine_type,
+ JSON_EXTRACT(detail.Properties, '$.EngineVersion') as engine_version,
+ JSON_EXTRACT(detail.Properties, '$.Data') as data,
+ JSON_EXTRACT(detail.Properties, '$.Description') as description,
+ JSON_EXTRACT(detail.Properties, '$.Id') as id,
+ JSON_EXTRACT(detail.Properties, '$.Name') as name,
+ JSON_EXTRACT(detail.Properties, '$.Revision') as revision,
+ JSON_EXTRACT(detail.Properties, '$.Tags') as tags
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ WHERE listing.data__TypeName = 'AWS::AmazonMQ::Configuration'
+ AND detail.data__TypeName = 'AWS::AmazonMQ::Configuration'
+ AND listing.region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres" && requiredParams == [ data__Identifier ]
+ ddl: |-
+ SELECT
+ region,
+ data__Identifier,
+ json_extract_path_text(Properties, 'Arn') as arn,
+ json_extract_path_text(Properties, 'AuthenticationStrategy') as authentication_strategy,
+ json_extract_path_text(Properties, 'EngineType') as engine_type,
+ json_extract_path_text(Properties, 'EngineVersion') as engine_version,
+ json_extract_path_text(Properties, 'Data') as data,
+ json_extract_path_text(Properties, 'Description') as description,
+ json_extract_path_text(Properties, 'Id') as id,
+ json_extract_path_text(Properties, 'Name') as name,
+ json_extract_path_text(Properties, 'Revision') as revision,
+ json_extract_path_text(Properties, 'Tags') as tags
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::AmazonMQ::Configuration'
+ AND data__Identifier = ''
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres"
+ ddl: |-
+ SELECT
+ detail.region,
+ json_extract_path_text(detail.Properties, 'Arn') as arn,
+ json_extract_path_text(detail.Properties, 'AuthenticationStrategy') as authentication_strategy,
+ json_extract_path_text(detail.Properties, 'EngineType') as engine_type,
+ json_extract_path_text(detail.Properties, 'EngineVersion') as engine_version,
+ json_extract_path_text(detail.Properties, 'Data') as data,
+ json_extract_path_text(detail.Properties, 'Description') as description,
+ json_extract_path_text(detail.Properties, 'Id') as id,
+ json_extract_path_text(detail.Properties, 'Name') as name,
+ json_extract_path_text(detail.Properties, 'Revision') as revision,
+ json_extract_path_text(detail.Properties, 'Tags') as tags
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ WHERE listing.data__TypeName = 'AWS::AmazonMQ::Configuration'
+ AND detail.data__TypeName = 'AWS::AmazonMQ::Configuration'
+ AND listing.region = 'us-east-1'
+ configurations_list_only:
+ name: configurations_list_only
+ id: aws.amazonmq.configurations_list_only
+ x-cfn-schema-name: Configuration
+ x-cfn-type-name: AWS::AmazonMQ::Configuration
+ x-identifiers:
+ - Id
+ x-type: cloud_control_view
+ methods: {}
+ sqlVerbs:
+ insert: []
+ delete: []
+ update: []
+ config:
+ views:
+ select:
+ predicate: sqlDialect == "sqlite3"
+ ddl: |-
+ SELECT
+ region,
+ JSON_EXTRACT(Properties, '$.Id') as id
+ FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::AmazonMQ::Configuration'
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres"
+ ddl: |-
+ SELECT
+ region,
+ json_extract_path_text(Properties, 'Id') as id
+ FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::AmazonMQ::Configuration'
+ AND region = 'us-east-1'
+ configuration_tags:
+ name: configuration_tags
+ id: aws.amazonmq.configuration_tags
+ x-cfn-schema-name: Configuration
+ x-cfn-type-name: AWS::AmazonMQ::Configuration
+ x-type: cloud_control_view
+ methods: {}
+ sqlVerbs:
+ insert: []
+ delete: []
+ update: []
+ config:
+ views:
+ select:
+ predicate: sqlDialect == "sqlite3"
+ ddl: |-
+ SELECT
+ detail.region,
+ JSON_EXTRACT(json_each.value, '$.Key') as tag_key,
+ JSON_EXTRACT(json_each.value, '$.Value') as tag_value,
+ JSON_EXTRACT(detail.Properties, '$.Arn') as arn,
+ JSON_EXTRACT(detail.Properties, '$.AuthenticationStrategy') as authentication_strategy,
+ JSON_EXTRACT(detail.Properties, '$.EngineType') as engine_type,
+ JSON_EXTRACT(detail.Properties, '$.EngineVersion') as engine_version,
+ JSON_EXTRACT(detail.Properties, '$.Data') as data,
+ JSON_EXTRACT(detail.Properties, '$.Description') as description,
+ JSON_EXTRACT(detail.Properties, '$.Id') as id,
+ JSON_EXTRACT(detail.Properties, '$.Name') as name,
+ JSON_EXTRACT(detail.Properties, '$.Revision') as revision
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ ,json_each(JSON_EXTRACT(detail.Properties, '$.Tags'))
+ WHERE listing.data__TypeName = 'AWS::AmazonMQ::Configuration'
+ AND detail.data__TypeName = 'AWS::AmazonMQ::Configuration'
+ AND listing.region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres"
+ ddl: |-
+ SELECT
+ detail.region,
+ json_extract_path_text(json_each.value, 'Key') as tag_key,
+ json_extract_path_text(json_each.value, 'Value') as tag_value,
+ json_extract_path_text(detail.Properties, 'Arn') as arn,
+ json_extract_path_text(detail.Properties, 'AuthenticationStrategy') as authentication_strategy,
+ json_extract_path_text(detail.Properties, 'EngineType') as engine_type,
+ json_extract_path_text(detail.Properties, 'EngineVersion') as engine_version,
+ json_extract_path_text(detail.Properties, 'Data') as data,
+ json_extract_path_text(detail.Properties, 'Description') as description,
+ json_extract_path_text(detail.Properties, 'Id') as id,
+ json_extract_path_text(detail.Properties, 'Name') as name,
+ json_extract_path_text(detail.Properties, 'Revision') as revision
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ ,json_array_elements_text(json_extract_path_text(detail.Properties, 'Tags'))
+ WHERE listing.data__TypeName = 'AWS::AmazonMQ::Configuration'
+ AND detail.data__TypeName = 'AWS::AmazonMQ::Configuration'
+ AND listing.region = 'us-east-1'
+paths:
+ /?Action=CreateResource&Version=2021-09-30:
+ parameters:
+ - $ref: '#/components/parameters/X-Amz-Content-Sha256'
+ - $ref: '#/components/parameters/X-Amz-Date'
+ - $ref: '#/components/parameters/X-Amz-Algorithm'
+ - $ref: '#/components/parameters/X-Amz-Credential'
+ - $ref: '#/components/parameters/X-Amz-Security-Token'
+ - $ref: '#/components/parameters/X-Amz-Signature'
+ - $ref: '#/components/parameters/X-Amz-SignedHeaders'
+ post:
+ operationId: CreateResource
+ parameters:
+ - description: Action Header
+ in: header
+ name: X-Amz-Target
+ required: false
+ schema:
+ default: CloudApiService.CreateResource
+ enum:
+ - CloudApiService.CreateResource
+ type: string
+ - in: header
+ name: Content-Type
+ required: false
+ schema:
+ default: application/x-amz-json-1.0
+ enum:
+ - application/x-amz-json-1.0
+ type: string
+ requestBody:
+ content:
+ application/x-amz-json-1.0:
+ schema:
+ $ref: '#/components/x-cloud-control-schemas/CreateResourceInput'
+ required: true
+ responses:
+ '200':
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/x-cloud-control-schemas/ProgressEvent'
+ description: Success
+ /?Action=DeleteResource&Version=2021-09-30:
+ parameters:
+ - $ref: '#/components/parameters/X-Amz-Content-Sha256'
+ - $ref: '#/components/parameters/X-Amz-Date'
+ - $ref: '#/components/parameters/X-Amz-Algorithm'
+ - $ref: '#/components/parameters/X-Amz-Credential'
+ - $ref: '#/components/parameters/X-Amz-Security-Token'
+ - $ref: '#/components/parameters/X-Amz-Signature'
+ - $ref: '#/components/parameters/X-Amz-SignedHeaders'
+ post:
+ operationId: DeleteResource
+ parameters:
+ - description: Action Header
+ in: header
+ name: X-Amz-Target
+ required: false
+ schema:
+ default: CloudApiService.DeleteResource
+ enum:
+ - CloudApiService.DeleteResource
+ type: string
+ - in: header
+ name: Content-Type
+ required: false
+ schema:
+ default: application/x-amz-json-1.0
+ enum:
+ - application/x-amz-json-1.0
+ type: string
+ requestBody:
+ content:
+ application/x-amz-json-1.0:
+ schema:
+ $ref: '#/components/x-cloud-control-schemas/DeleteResourceInput'
+ required: true
+ responses:
+ '200':
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/x-cloud-control-schemas/DeleteResourceOutput'
+ description: Success
+ /?Action=UpdateResource&Version=2021-09-30:
+ parameters:
+ - $ref: '#/components/parameters/X-Amz-Content-Sha256'
+ - $ref: '#/components/parameters/X-Amz-Date'
+ - $ref: '#/components/parameters/X-Amz-Algorithm'
+ - $ref: '#/components/parameters/X-Amz-Credential'
+ - $ref: '#/components/parameters/X-Amz-Security-Token'
+ - $ref: '#/components/parameters/X-Amz-Signature'
+ - $ref: '#/components/parameters/X-Amz-SignedHeaders'
+ post:
+ operationId: UpdateResource
+ parameters:
+ - description: Action Header
+ in: header
+ name: X-Amz-Target
+ required: false
+ schema:
+ default: CloudApiService.UpdateResource
+ enum:
+ - CloudApiService.UpdateResource
+ type: string
+ - in: header
+ name: Content-Type
+ required: false
+ schema:
+ default: application/x-amz-json-1.0
+ enum:
+ - application/x-amz-json-1.0
+ type: string
+ requestBody:
+ content:
+ application/x-amz-json-1.0:
+ schema:
+ properties:
+ ClientName:
+ type: string
+ Identifier:
+ $ref: '#/components/x-cloud-control-schemas/Identifier'
+ PatchDocument:
+ type: string
+ RoleArn:
+ $ref: '#/components/x-cloud-control-schemas/RoleArn'
+ TypeName:
+ $ref: '#/components/x-cloud-control-schemas/TypeName'
+ TypeVersionId:
+ $ref: '#/components/x-cloud-control-schemas/TypeVersionId'
+ required:
+ - Identifier
+ - PatchDocument
+ type: object
+ required: true
+ responses:
+ '200':
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/x-cloud-control-schemas/UpdateResourceOutput'
+ description: Success
+ /?Action=CreateResource&Version=2021-09-30&__Configuration&__detailTransformed=true:
+ parameters:
+ - $ref: '#/components/parameters/X-Amz-Content-Sha256'
+ - $ref: '#/components/parameters/X-Amz-Date'
+ - $ref: '#/components/parameters/X-Amz-Algorithm'
+ - $ref: '#/components/parameters/X-Amz-Credential'
+ - $ref: '#/components/parameters/X-Amz-Security-Token'
+ - $ref: '#/components/parameters/X-Amz-Signature'
+ - $ref: '#/components/parameters/X-Amz-SignedHeaders'
+ post:
+ operationId: CreateConfiguration
+ parameters:
+ - description: Action Header
+ in: header
+ name: X-Amz-Target
+ required: false
+ schema:
+ default: CloudApiService.CreateResource
+ enum:
+ - CloudApiService.CreateResource
+ type: string
+ - in: header
+ name: Content-Type
+ required: false
+ schema:
+ default: application/x-amz-json-1.0
+ enum:
+ - application/x-amz-json-1.0
+ type: string
+ requestBody:
+ content:
+ application/x-amz-json-1.0:
+ schema:
+ $ref: '#/components/schemas/CreateConfigurationRequest'
+ required: true
+ responses:
+ '200':
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/x-cloud-control-schemas/ProgressEvent'
+ description: Success
+x-stackQL-config:
+ requestTranslate:
+ algorithm: drop_double_underscore_params
+ pagination:
+ requestToken:
+ key: NextToken
+ location: body
+ responseToken:
+ key: NextToken
+ location: body
diff --git a/providers/src/aws/v00.00.00000/services/amplify.yaml b/providers/src/aws/v00.00.00000/services/amplify.yaml
index 24194628..d7ec3e78 100644
--- a/providers/src/aws/v00.00.00000/services/amplify.yaml
+++ b/providers/src/aws/v00.00.00000/services/amplify.yaml
@@ -448,6 +448,15 @@ components:
required:
- Username
- Password
+ CacheConfig:
+ type: object
+ additionalProperties: false
+ properties:
+ Type:
+ type: string
+ enum:
+ - AMPLIFY_MANAGED
+ - AMPLIFY_MANAGED_NO_COOKIES
CustomRule:
type: object
additionalProperties: false
@@ -538,6 +547,8 @@ components:
minLength: 1
maxLength: 25000
pattern: (?s).+
+ CacheConfig:
+ $ref: '#/components/schemas/CacheConfig'
CustomHeaders:
type: string
minLength: 0
@@ -979,6 +990,8 @@ components:
minLength: 1
maxLength: 25000
pattern: (?s).+
+ CacheConfig:
+ $ref: '#/components/schemas/CacheConfig'
CustomHeaders:
type: string
minLength: 0
@@ -1254,6 +1267,7 @@ components:
JSON_EXTRACT(Properties, '$.AutoBranchCreationConfig') as auto_branch_creation_config,
JSON_EXTRACT(Properties, '$.BasicAuthConfig') as basic_auth_config,
JSON_EXTRACT(Properties, '$.BuildSpec') as build_spec,
+ JSON_EXTRACT(Properties, '$.CacheConfig') as cache_config,
JSON_EXTRACT(Properties, '$.CustomHeaders') as custom_headers,
JSON_EXTRACT(Properties, '$.CustomRules') as custom_rules,
JSON_EXTRACT(Properties, '$.DefaultDomain') as default_domain,
@@ -1281,6 +1295,7 @@ components:
JSON_EXTRACT(detail.Properties, '$.AutoBranchCreationConfig') as auto_branch_creation_config,
JSON_EXTRACT(detail.Properties, '$.BasicAuthConfig') as basic_auth_config,
JSON_EXTRACT(detail.Properties, '$.BuildSpec') as build_spec,
+ JSON_EXTRACT(detail.Properties, '$.CacheConfig') as cache_config,
JSON_EXTRACT(detail.Properties, '$.CustomHeaders') as custom_headers,
JSON_EXTRACT(detail.Properties, '$.CustomRules') as custom_rules,
JSON_EXTRACT(detail.Properties, '$.DefaultDomain') as default_domain,
@@ -1313,6 +1328,7 @@ components:
json_extract_path_text(Properties, 'AutoBranchCreationConfig') as auto_branch_creation_config,
json_extract_path_text(Properties, 'BasicAuthConfig') as basic_auth_config,
json_extract_path_text(Properties, 'BuildSpec') as build_spec,
+ json_extract_path_text(Properties, 'CacheConfig') as cache_config,
json_extract_path_text(Properties, 'CustomHeaders') as custom_headers,
json_extract_path_text(Properties, 'CustomRules') as custom_rules,
json_extract_path_text(Properties, 'DefaultDomain') as default_domain,
@@ -1340,6 +1356,7 @@ components:
json_extract_path_text(detail.Properties, 'AutoBranchCreationConfig') as auto_branch_creation_config,
json_extract_path_text(detail.Properties, 'BasicAuthConfig') as basic_auth_config,
json_extract_path_text(detail.Properties, 'BuildSpec') as build_spec,
+ json_extract_path_text(detail.Properties, 'CacheConfig') as cache_config,
json_extract_path_text(detail.Properties, 'CustomHeaders') as custom_headers,
json_extract_path_text(detail.Properties, 'CustomRules') as custom_rules,
json_extract_path_text(detail.Properties, 'DefaultDomain') as default_domain,
@@ -1417,6 +1434,7 @@ components:
JSON_EXTRACT(detail.Properties, '$.AutoBranchCreationConfig') as auto_branch_creation_config,
JSON_EXTRACT(detail.Properties, '$.BasicAuthConfig') as basic_auth_config,
JSON_EXTRACT(detail.Properties, '$.BuildSpec') as build_spec,
+ JSON_EXTRACT(detail.Properties, '$.CacheConfig') as cache_config,
JSON_EXTRACT(detail.Properties, '$.CustomHeaders') as custom_headers,
JSON_EXTRACT(detail.Properties, '$.CustomRules') as custom_rules,
JSON_EXTRACT(detail.Properties, '$.DefaultDomain') as default_domain,
@@ -1450,6 +1468,7 @@ components:
json_extract_path_text(detail.Properties, 'AutoBranchCreationConfig') as auto_branch_creation_config,
json_extract_path_text(detail.Properties, 'BasicAuthConfig') as basic_auth_config,
json_extract_path_text(detail.Properties, 'BuildSpec') as build_spec,
+ json_extract_path_text(detail.Properties, 'CacheConfig') as cache_config,
json_extract_path_text(detail.Properties, 'CustomHeaders') as custom_headers,
json_extract_path_text(detail.Properties, 'CustomRules') as custom_rules,
json_extract_path_text(detail.Properties, 'DefaultDomain') as default_domain,
diff --git a/providers/src/aws/v00.00.00000/services/amplifyuibuilder.yaml b/providers/src/aws/v00.00.00000/services/amplifyuibuilder.yaml
index 8c2b53b4..2dfa6860 100644
--- a/providers/src/aws/v00.00.00000/services/amplifyuibuilder.yaml
+++ b/providers/src/aws/v00.00.00000/services/amplifyuibuilder.yaml
@@ -746,6 +746,9 @@ components:
tagUpdatable: true
cloudFormationSystemTags: true
tagProperty: /properties/Tags
+ permissions:
+ - amplifyuibuilder:TagResource
+ - amplifyuibuilder:UntagResource
x-required-permissions:
create:
- amplify:GetApp
@@ -1124,17 +1127,18 @@ components:
tagUpdatable: true
cloudFormationSystemTags: true
tagProperty: /properties/Tags
+ permissions:
+ - amplifyuibuilder:TagResource
+ - amplifyuibuilder:UntagResource
x-required-permissions:
create:
- amplify:GetApp
- amplifyuibuilder:CreateForm
- amplifyuibuilder:GetForm
- amplifyuibuilder:TagResource
- - amplifyuibuilder:UntagResource
read:
- amplify:GetApp
- amplifyuibuilder:GetForm
- - amplifyuibuilder:TagResource
update:
- amplify:GetApp
- amplifyuibuilder:GetForm
@@ -1144,7 +1148,6 @@ components:
delete:
- amplify:GetApp
- amplifyuibuilder:DeleteForm
- - amplifyuibuilder:TagResource
- amplifyuibuilder:UntagResource
list:
- amplify:GetApp
@@ -1216,6 +1219,9 @@ components:
tagUpdatable: true
cloudFormationSystemTags: true
tagProperty: /properties/Tags
+ permissions:
+ - amplifyuibuilder:TagResource
+ - amplifyuibuilder:UntagResource
x-required-permissions:
create:
- amplify:GetApp
diff --git a/providers/src/aws/v00.00.00000/services/apigateway.yaml b/providers/src/aws/v00.00.00000/services/apigateway.yaml
index 9180aac3..7043bede 100644
--- a/providers/src/aws/v00.00.00000/services/apigateway.yaml
+++ b/providers/src/aws/v00.00.00000/services/apigateway.yaml
@@ -392,7 +392,7 @@ components:
description: ''
type: string
CloudWatchRoleArn:
- description: The ARN of an Amazon CloudWatch role for the current Account.
+ description: ''
type: string
x-stackql-resource-name: account
description: The ``AWS::ApiGateway::Account`` resource specifies the IAM role that Amazon API Gateway uses to write API logs to Amazon CloudWatch Logs. To avoid overwriting other roles, you should only have one ``AWS::ApiGateway::Account`` resource per region per account.
@@ -421,10 +421,10 @@ components:
additionalProperties: false
properties:
RestApiId:
- description: The string identifier of the associated RestApi.
+ description: ''
type: string
StageName:
- description: The stage name associated with the stage key.
+ description: ''
type: string
description: '``StageKey`` is a property of the [AWS::ApiGateway::ApiKey](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-apikey.html) resource that specifies the stage to associate with the API key. This association allows only clients with the key to make requests to methods in that stage.'
Tag:
@@ -446,17 +446,17 @@ components:
description: ''
type: string
CustomerId:
- description: An MKT customer identifier, when integrating with the AWS SaaS Marketplace.
+ description: ''
type: string
Description:
- description: The description of the ApiKey.
+ description: ''
type: string
Enabled:
- description: Specifies whether the ApiKey can be used by callers.
+ description: ''
default: false
type: boolean
GenerateDistinctId:
- description: Specifies whether (``true``) or not (``false``) the key identifier is distinct from the created API key value. This parameter is deprecated and should not be used.
+ description: ''
type: boolean
Name:
description: |-
@@ -464,19 +464,19 @@ components:
If you specify a name, you cannot perform updates that require replacement of this resource. You can perform updates that require no or some interruption. If you must replace the resource, specify a new name.
type: string
StageKeys:
- description: DEPRECATED FOR USAGE PLANS - Specifies stages associated with the API key.
+ description: ''
type: array
uniqueItems: true
items:
$ref: '#/components/schemas/StageKey'
Tags:
- description: The key-value map of strings. The valid character set is [a-zA-Z+-=._:/]. The tag key can be up to 128 characters and must not start with ``aws:``. The tag value can be up to 256 characters.
+ description: ''
type: array
uniqueItems: false
items:
$ref: '#/components/schemas/Tag'
Value:
- description: Specifies a value of the API key.
+ description: ''
type: string
x-stackql-resource-name: api_key
description: The ``AWS::ApiGateway::ApiKey`` resource creates a unique key that you can distribute to clients who are executing API Gateway ``Method`` resources that require an API key. To specify which API key clients must use, map the API key with the ``RestApi`` and ``Stage`` resources that include the methods that require a key.
@@ -522,48 +522,41 @@ components:
type: object
properties:
RestApiId:
- description: The string identifier of the associated RestApi.
+ description: ''
type: string
AuthorizerId:
type: string
description: ''
AuthType:
- description: Optional customer-defined field, used in OpenAPI imports and exports without functional impact.
+ description: ''
type: string
AuthorizerCredentials:
- description: Specifies the required credentials as an IAM role for API Gateway to invoke the authorizer. To specify an IAM role for API Gateway to assume, use the role's Amazon Resource Name (ARN). To use resource-based permissions on the Lambda function, specify null.
+ description: ''
type: string
AuthorizerResultTtlInSeconds:
- description: The TTL in seconds of cached authorizer results. If it equals 0, authorization caching is disabled. If it is greater than 0, API Gateway will cache authorizer responses. If this field is not set, the default value is 300. The maximum value is 3600, or 1 hour.
+ description: ''
type: integer
AuthorizerUri:
- description: >-
- Specifies the authorizer's Uniform Resource Identifier (URI). For ``TOKEN`` or ``REQUEST`` authorizers, this must be a well-formed Lambda function URI, for example, ``arn:aws:apigateway:us-west-2:lambda:path/2015-03-31/functions/arn:aws:lambda:us-west-2:{account_id}:function:{lambda_function_name}/invocations``. In general, the URI has this form ``arn:aws:apigateway:{region}:lambda:path/{service_api}``, where ``{region}`` is the same as the region hosting the Lambda function,
- ``path`` indicates that the remaining substring in the URI should be treated as the path to the resource, including the initial ``/``. For Lambda functions, this is usually of the form ``/2015-03-31/functions/[FunctionARN]/invocations``.
+ description: ''
type: string
IdentitySource:
- description: >-
- The identity source for which authorization is requested. For a ``TOKEN`` or ``COGNITO_USER_POOLS`` authorizer, this is required and specifies the request header mapping expression for the custom header holding the authorization token submitted by the client. For example, if the token header name is ``Auth``, the header mapping expression is ``method.request.header.Auth``. For the ``REQUEST`` authorizer, this is required when authorization caching is enabled. The value is a
- comma-separated string of one or more mapping expressions of the specified request parameters. For example, if an ``Auth`` header, a ``Name`` query string parameter are defined as identity sources, this value is ``method.request.header.Auth, method.request.querystring.Name``. These parameters will be used to derive the authorization caching key and to perform runtime validation of the ``REQUEST`` authorizer by verifying all of the identity-related request parameters are present, not
- null and non-empty. Only when this is true does the authorizer invoke the authorizer Lambda function, otherwise, it returns a 401 Unauthorized response without calling the Lambda function. The valid value is a string of comma-separated mapping expressions of the specified request parameters. When the authorization caching is not enabled, this property is optional.
+ description: ''
type: string
IdentityValidationExpression:
- description: >-
- A validation expression for the incoming identity token. For ``TOKEN`` authorizers, this value is a regular expression. For ``COGNITO_USER_POOLS`` authorizers, API Gateway will match the ``aud`` field of the incoming token from the client against the specified regular expression. It will invoke the authorizer's Lambda function when there is a match. Otherwise, it will return a 401 Unauthorized response without calling the Lambda function. The validation expression does not apply to
- the ``REQUEST`` authorizer.
+ description: ''
type: string
Name:
- description: The name of the authorizer.
+ description: ''
type: string
ProviderARNs:
- description: 'A list of the Amazon Cognito user pool ARNs for the ``COGNITO_USER_POOLS`` authorizer. Each element is of this format: ``arn:aws:cognito-idp:{region}:{account_id}:userpool/{user_pool_id}``. For a ``TOKEN`` or ``REQUEST`` authorizer, this is not defined.'
+ description: ''
type: array
uniqueItems: true
items:
type: string
x-insertionOrder: false
Type:
- description: The authorizer type. Valid values are ``TOKEN`` for a Lambda function using a single authorization token submitted in a custom header, ``REQUEST`` for a Lambda function using incoming request parameters, and ``COGNITO_USER_POOLS`` for using an Amazon Cognito user pool.
+ description: ''
type: string
required:
- RestApiId
@@ -607,16 +600,16 @@ components:
properties:
BasePath:
type: string
- description: The base path name that callers of the API must provide as part of the URL after the domain name.
+ description: ''
DomainName:
type: string
- description: The domain name of the BasePathMapping resource to be described.
+ description: ''
RestApiId:
type: string
- description: The string identifier of the associated RestApi.
+ description: ''
Stage:
type: string
- description: The name of the associated stage.
+ description: ''
required:
- DomainName
x-stackql-resource-name: base_path_mapping
@@ -649,6 +642,59 @@ components:
- apigateway:DELETE
list:
- apigateway:GET
+ BasePathMappingV2:
+ type: object
+ properties:
+ BasePath:
+ type: string
+ description: The base path name that callers of the API must provide in the URL after the domain name.
+ DomainNameArn:
+ type: string
+ description: The Arn of an AWS::ApiGateway::DomainNameV2 resource.
+ RestApiId:
+ type: string
+ description: The ID of the API.
+ Stage:
+ type: string
+ description: The name of the API's stage.
+ BasePathMappingArn:
+ type: string
+ description: Amazon Resource Name (ARN) of the resource.
+ required:
+ - DomainNameArn
+ - RestApiId
+ x-stackql-resource-name: base_path_mapping_v2
+ description: Resource Type definition for AWS::ApiGateway::BasePathMappingV2
+ x-type-name: AWS::ApiGateway::BasePathMappingV2
+ x-stackql-primary-identifier:
+ - BasePathMappingArn
+ x-create-only-properties:
+ - DomainNameArn
+ - BasePath
+ x-read-only-properties:
+ - BasePathMappingArn
+ x-required-properties:
+ - DomainNameArn
+ - RestApiId
+ x-tagging:
+ taggable: false
+ tagOnCreate: false
+ tagUpdatable: false
+ cloudFormationSystemTags: false
+ x-required-permissions:
+ create:
+ - apigateway:POST
+ - apigateway:GET
+ read:
+ - apigateway:GET
+ update:
+ - apigateway:GET
+ - apigateway:DELETE
+ - apigateway:PATCH
+ delete:
+ - apigateway:DELETE
+ list:
+ - apigateway:GET
ClientCertificate:
type: object
properties:
@@ -656,10 +702,10 @@ components:
description: ''
type: string
Description:
- description: The description of the client certificate.
+ description: ''
type: string
Tags:
- description: The collection of tags. Each tag element is associated with a given resource.
+ description: ''
type: array
uniqueItems: false
items:
@@ -705,25 +751,25 @@ components:
additionalProperties: false
properties:
CacheDataEncrypted:
- description: Specifies whether the cached responses are encrypted.
+ description: ''
type: boolean
CacheTtlInSeconds:
- description: Specifies the time to live (TTL), in seconds, for cached responses. The higher the TTL, the longer the response will be cached.
+ description: ''
type: integer
CachingEnabled:
- description: Specifies whether responses should be cached and returned for requests. A cache cluster must be enabled on the stage for responses to be cached.
+ description: ''
type: boolean
DataTraceEnabled:
- description: Specifies whether data trace logging is enabled for this method, which affects the log entries pushed to Amazon CloudWatch Logs. This can be useful to troubleshoot APIs, but can result in logging sensitive data. We recommend that you don't enable this option for production APIs.
+ description: ''
type: boolean
HttpMethod:
description: The HTTP method. To apply settings to multiple resources and methods, specify an asterisk (``*``) for the ``HttpMethod`` and ``/*`` for the ``ResourcePath``. This parameter is required when you specify a ``MethodSetting``.
type: string
LoggingLevel:
- description: Specifies the logging level for this method, which affects the log entries pushed to Amazon CloudWatch Logs. Valid values are ``OFF``, ``ERROR``, and ``INFO``. Choose ``ERROR`` to write only error-level entries to CloudWatch Logs, or choose ``INFO`` to include all ``ERROR`` events as well as extra informational events.
+ description: ''
type: string
MetricsEnabled:
- description: Specifies whether Amazon CloudWatch metrics are enabled for this method.
+ description: ''
type: boolean
ResourcePath:
description: >-
@@ -731,11 +777,11 @@ components:
``MethodSetting``.
type: string
ThrottlingBurstLimit:
- description: Specifies the throttling burst limit.
+ description: ''
type: integer
minimum: 0
ThrottlingRateLimit:
- description: Specifies the throttling rate limit.
+ description: ''
type: number
minimum: 0
StageDescription:
@@ -812,30 +858,30 @@ components:
items:
$ref: '#/components/schemas/Tag'
CacheClusterEnabled:
- description: Specifies whether a cache cluster is enabled for the stage.
+ description: ''
type: boolean
CanarySetting:
- description: Configuration settings of a canary deployment.
+ description: ''
type: object
additionalProperties: false
properties:
DeploymentId:
- description: The ID of the canary deployment.
+ description: ''
type: string
PercentTraffic:
- description: The percent (0-100) of traffic diverted to a canary deployment.
+ description: ''
type: number
minimum: 0
maximum: 100
StageVariableOverrides:
- description: Stage variables overridden for a canary release deployment, including new stage variables introduced in the canary. These stage variables are represented as a string-to-string map between stage variable names and their values.
+ description: ''
type: object
additionalProperties: false
x-patternProperties:
'[a-zA-Z0-9]+':
type: string
UseStageCache:
- description: A Boolean flag to indicate whether the canary deployment uses the stage cache or not.
+ description: ''
type: boolean
DeploymentCanarySettings:
description: The ``DeploymentCanarySettings`` property type specifies settings for the canary deployment.
@@ -846,14 +892,14 @@ components:
x-patternProperties:
'[a-zA-Z0-9]+':
type: string
- description: A stage variable overrides used for the canary release deployment. They can override existing stage variables or add new stage variables for the canary release deployment. These stage variables are represented as a string-to-string map between stage variable names and their values.
+ description: ''
additionalProperties: false
type: object
PercentTraffic:
- description: The percentage (0.0-100.0) of traffic routed to the canary deployment.
+ description: ''
type: number
UseStageCache:
- description: A Boolean flag to indicate whether the canary release deployment uses the stage cache or not.
+ description: ''
type: boolean
AccessLogSetting:
description: |-
@@ -875,19 +921,19 @@ components:
description: ''
type: string
Description:
- description: The description for the Deployment resource to create.
+ description: ''
type: string
StageDescription:
description: The description of the Stage resource for the Deployment resource to create. To specify a stage description, you must also provide a stage name.
$ref: '#/components/schemas/StageDescription'
StageName:
- description: The name of the Stage resource for the Deployment resource to create.
+ description: ''
type: string
RestApiId:
- description: The string identifier of the associated RestApi.
+ description: ''
type: string
DeploymentCanarySettings:
- description: The input configuration for a canary deployment.
+ description: ''
$ref: '#/components/schemas/DeploymentCanarySettings'
required:
- RestApiId
@@ -933,23 +979,19 @@ components:
additionalProperties: false
properties:
Method:
- description: >-
- The HTTP verb of a method. It is a valid field for the API entity types of ``METHOD``, ``PATH_PARAMETER``, ``QUERY_PARAMETER``, ``REQUEST_HEADER``, ``REQUEST_BODY``, ``RESPONSE``, ``RESPONSE_HEADER``, and ``RESPONSE_BODY``. The default value is ``*`` for any method. When an applicable child entity inherits the content of an entity of the same type with more general specifications of the other ``location`` attributes, the child entity's ``method`` attribute must match that of the
- parent entity exactly.
+ description: ''
type: string
Name:
- description: The name of the targeted API entity. It is a valid and required field for the API entity types of ``AUTHORIZER``, ``MODEL``, ``PATH_PARAMETER``, ``QUERY_PARAMETER``, ``REQUEST_HEADER``, ``REQUEST_BODY`` and ``RESPONSE_HEADER``. It is an invalid field for any other entity type.
+ description: ''
type: string
Path:
- description: >-
- The URL path of the target. It is a valid field for the API entity types of ``RESOURCE``, ``METHOD``, ``PATH_PARAMETER``, ``QUERY_PARAMETER``, ``REQUEST_HEADER``, ``REQUEST_BODY``, ``RESPONSE``, ``RESPONSE_HEADER``, and ``RESPONSE_BODY``. The default value is ``/`` for the root resource. When an applicable child entity inherits the content of another entity of the same type with more general specifications of the other ``location`` attributes, the child entity's ``path`` attribute
- must match that of the parent entity as a prefix.
+ description: ''
type: string
StatusCode:
- description: The HTTP status code of a response. It is a valid field for the API entity types of ``RESPONSE``, ``RESPONSE_HEADER``, and ``RESPONSE_BODY``. The default value is ``*`` for any status code. When an applicable child entity inherits the content of an entity of the same type with more general specifications of the other ``location`` attributes, the child entity's ``statusCode`` attribute must match that of the parent entity exactly.
+ description: ''
type: string
Type:
- description: The type of API entity to which the documentation content applies. Valid values are ``API``, ``AUTHORIZER``, ``MODEL``, ``RESOURCE``, ``METHOD``, ``PATH_PARAMETER``, ``QUERY_PARAMETER``, ``REQUEST_HEADER``, ``REQUEST_BODY``, ``RESPONSE``, ``RESPONSE_HEADER``, and ``RESPONSE_BODY``. Content inheritance does not apply to any entity of the ``API``, ``AUTHORIZER``, ``METHOD``, ``MODEL``, ``REQUEST_BODY``, or ``RESOURCE`` type.
+ description: ''
type: string
enum:
- API
@@ -974,13 +1016,13 @@ components:
description: ''
type: string
Location:
- description: The location of the targeted API entity of the to-be-created documentation part.
+ description: ''
$ref: '#/components/schemas/Location'
Properties:
- description: The new documentation content map of the targeted API entity. Enclosed key-value pairs are API-specific, but only OpenAPI-compliant key-value pairs can be exported and, hence, published.
+ description: ''
type: string
RestApiId:
- description: The string identifier of the associated RestApi.
+ description: ''
type: string
required:
- Location
@@ -1020,14 +1062,14 @@ components:
type: object
properties:
Description:
- description: A description about the new documentation snapshot.
+ description: ''
type: string
DocumentationVersion:
- description: The version identifier of the to-be-updated documentation version.
+ description: ''
type: string
minLength: 1
RestApiId:
- description: The string identifier of the associated RestApi.
+ description: ''
type: string
minLength: 1
required:
@@ -1060,6 +1102,14 @@ components:
- apigateway:DELETE
list:
- apigateway:GET
+ MutualTlsAuthentication:
+ additionalProperties: false
+ type: object
+ properties:
+ TruststoreVersion:
+ type: string
+ TruststoreUri:
+ type: string
EndpointConfiguration:
description: |-
The ``EndpointConfiguration`` property type specifies the endpoint types of a REST API.
@@ -1069,56 +1119,48 @@ components:
properties:
Types:
uniqueItems: true
- description: A list of endpoint types of an API (RestApi) or its custom domain name (DomainName). For an edge-optimized API and its custom domain name, the endpoint type is ``"EDGE"``. For a regional API and its custom domain name, the endpoint type is ``REGIONAL``. For a private API, the endpoint type is ``PRIVATE``.
+ description: ''
type: array
items:
type: string
VpcEndpointIds:
uniqueItems: true
- description: A list of VpcEndpointIds of an API (RestApi) against which to create Route53 ALIASes. It is only supported for ``PRIVATE`` endpoint type.
+ description: ''
type: array
items:
relationshipRef:
typeName: AWS::EC2::VPCEndpoint
propertyPath: /properties/Id
type: string
- MutualTlsAuthentication:
+ DomainName:
type: object
properties:
- TruststoreUri:
+ MutualTlsAuthentication:
+ $ref: '#/components/schemas/MutualTlsAuthentication'
+ OwnershipVerificationCertificateArn:
type: string
- TruststoreVersion:
+ RegionalHostedZoneId:
+ type: string
+ RegionalDomainName:
type: string
- additionalProperties: false
- DomainName:
- type: object
- properties:
DomainName:
type: string
- DistributionDomainName:
+ SecurityPolicy:
type: string
DistributionHostedZoneId:
type: string
EndpointConfiguration:
$ref: '#/components/schemas/EndpointConfiguration'
- MutualTlsAuthentication:
- $ref: '#/components/schemas/MutualTlsAuthentication'
- RegionalDomainName:
- type: string
- RegionalHostedZoneId:
- type: string
- CertificateArn:
+ DistributionDomainName:
type: string
RegionalCertificateArn:
type: string
- OwnershipVerificationCertificateArn:
- type: string
- SecurityPolicy:
- type: string
Tags:
type: array
items:
$ref: '#/components/schemas/Tag'
+ CertificateArn:
+ type: string
x-stackql-resource-name: domain_name
description: Resource Type definition for AWS::ApiGateway::DomainName.
x-type-name: AWS::ApiGateway::DomainName
@@ -1131,17 +1173,151 @@ components:
- DistributionDomainName
- RegionalDomainName
- DistributionHostedZoneId
+ x-tagging:
+ taggable: true
+ tagOnCreate: true
+ tagUpdatable: true
+ tagProperty: /properties/Tags
+ cloudFormationSystemTags: true
x-required-permissions:
- create:
- - apigateway:*
read:
- apigateway:*
+ create:
+ - apigateway:*
update:
- apigateway:*
+ list:
+ - apigateway:*
delete:
- apigateway:*
+ DomainNameAccessAssociation:
+ type: object
+ properties:
+ DomainNameAccessAssociationArn:
+ type: string
+ description: The amazon resource name (ARN) of the domain name access association resource.
+ DomainNameArn:
+ type: string
+ description: The amazon resource name (ARN) of the domain name resource.
+ AccessAssociationSource:
+ type: string
+ description: The source of the domain name access association resource.
+ AccessAssociationSourceType:
+ type: string
+ description: The source type of the domain name access association resource.
+ enum:
+ - VPCE
+ Tags:
+ description: An array of arbitrary tags (key-value pairs) to associate with the domainname access association.
+ uniqueItems: false
+ type: array
+ items:
+ $ref: '#/components/schemas/Tag'
+ required:
+ - DomainNameArn
+ - AccessAssociationSource
+ - AccessAssociationSourceType
+ x-stackql-resource-name: domain_name_access_association
+ description: Resource Type definition for AWS::ApiGateway::DomainNameAccessAssociation.
+ x-type-name: AWS::ApiGateway::DomainNameAccessAssociation
+ x-stackql-primary-identifier:
+ - DomainNameAccessAssociationArn
+ x-create-only-properties:
+ - DomainNameArn
+ - AccessAssociationSource
+ - AccessAssociationSourceType
+ - Tags
+ x-read-only-properties:
+ - DomainNameAccessAssociationArn
+ x-required-properties:
+ - DomainNameArn
+ - AccessAssociationSource
+ - AccessAssociationSourceType
+ x-tagging:
+ taggable: true
+ tagOnCreate: true
+ tagUpdatable: false
+ cloudFormationSystemTags: true
+ tagProperty: /properties/Tags
+ permissions:
+ - apigateway:POST
+ - apigateway:DELETE
+ - apigateway:GET
+ x-required-permissions:
+ create:
+ - apigateway:POST
+ - apigateway:GET
+ read:
+ - apigateway:GET
+ delete:
+ - apigateway:DELETE
+ - apigateway:GET
list:
- - apigateway:*
+ - apigateway:GET
+ DomainNameV2:
+ type: object
+ properties:
+ CertificateArn:
+ type: string
+ DomainName:
+ type: string
+ EndpointConfiguration:
+ $ref: '#/components/schemas/EndpointConfiguration'
+ SecurityPolicy:
+ type: string
+ Policy:
+ type: object
+ DomainNameId:
+ type: string
+ DomainNameArn:
+ type: string
+ description: The amazon resource name (ARN) of the domain name resource.
+ Tags:
+ type: array
+ items:
+ $ref: '#/components/schemas/Tag'
+ x-stackql-resource-name: domain_name_v2
+ description: Resource Type definition for AWS::ApiGateway::DomainNameV2.
+ x-type-name: AWS::ApiGateway::DomainNameV2
+ x-stackql-primary-identifier:
+ - DomainNameArn
+ x-create-only-properties:
+ - DomainName
+ - SecurityPolicy
+ - EndpointConfiguration
+ x-read-only-properties:
+ - DomainNameId
+ - DomainNameArn
+ x-tagging:
+ taggable: true
+ tagOnCreate: true
+ tagUpdatable: true
+ cloudFormationSystemTags: true
+ tagProperty: /properties/Tags
+ permissions:
+ - apigateway:PUT
+ - apigateway:PATCH
+ - apigateway:DELETE
+ - apigateway:GET
+ - apigateway:POST
+ x-required-permissions:
+ create:
+ - apigateway:POST
+ - apigateway:GET
+ - apigateway:UpdateDomainNamePolicy
+ read:
+ - apigateway:GET
+ update:
+ - apigateway:GET
+ - apigateway:PUT
+ - apigateway:PATCH
+ - apigateway:UpdateDomainNamePolicy
+ delete:
+ - apigateway:DELETE
+ - apigateway:GET
+ - apigateway:UpdateDomainNamePolicy
+ list:
+ - apigateway:GET
GatewayResponse:
type: object
properties:
@@ -1149,23 +1325,23 @@ components:
description: ''
type: string
RestApiId:
- description: The string identifier of the associated RestApi.
+ description: ''
type: string
ResponseType:
- description: The response type of the associated GatewayResponse.
+ description: ''
type: string
StatusCode:
- description: The HTTP status code for this GatewayResponse.
+ description: ''
type: string
ResponseParameters:
- description: Response parameters (paths, query strings and headers) of the GatewayResponse as a string-to-string map of key-value pairs.
+ description: ''
type: object
additionalProperties: false
x-patternProperties:
'[a-zA-Z0-9]+':
type: string
ResponseTemplates:
- description: Response templates of the GatewayResponse as a string-to-string map of key-value pairs.
+ description: ''
type: object
additionalProperties: false
x-patternProperties:
@@ -1204,7 +1380,7 @@ components:
list:
- apigateway:GET
MethodResponse:
- description: Represents a method response of a given HTTP status code returned to the client. The method response is passed from the back end through the associated integration response that can be transformed using a mapping template.
+ description: ''
additionalProperties: false
type: object
properties:
@@ -1212,19 +1388,17 @@ components:
x-patternProperties:
'[a-zA-Z0-9]+':
type: boolean
- description: >-
- A key-value map specifying required or optional response parameters that API Gateway can send back to the caller. A key defines a method response header and the value specifies whether the associated method response header is required or not. The expression of the key must match the pattern ``method.response.header.{name}``, where ``name`` is a valid and unique header name. API Gateway passes certain integration response data to the method response headers specified here according to
- the mapping you prescribe in the API's IntegrationResponse. The integration response data that can be mapped include an integration response header expressed in ``integration.response.header.{name}``, a static value enclosed within a pair of single quotes (e.g., ``'application/json'``), or a JSON expression from the back-end response payload in the form of ``integration.response.body.{JSON-expression}``, where ``JSON-expression`` is a valid JSON expression without the ``$`` prefix.)
+ description: ''
additionalProperties: false
type: object
StatusCode:
- description: The method response's status code.
+ description: ''
type: string
ResponseModels:
x-patternProperties:
'[a-zA-Z0-9]+':
type: string
- description: Specifies the Model resources used for the response's content-type. Response models are represented as a key/value map, with a content-type as the key and a Model name as the value.
+ description: ''
additionalProperties: false
type: object
required:
@@ -1235,33 +1409,28 @@ components:
type: object
properties:
CacheNamespace:
- description: Specifies a group of related cached parameters. By default, API Gateway uses the resource ID as the ``cacheNamespace``. You can specify the same ``cacheNamespace`` across resources to return the same cached data for requests to different resources.
+ description: ''
type: string
ConnectionType:
- description: The type of the network connection to the integration endpoint. The valid value is ``INTERNET`` for connections through the public routable internet or ``VPC_LINK`` for private connections between API Gateway and a network load balancer in a VPC. The default value is ``INTERNET``.
+ description: ''
type: string
enum:
- INTERNET
- VPC_LINK
IntegrationResponses:
uniqueItems: true
- description: Specifies the integration's responses.
+ description: ''
type: array
items:
$ref: '#/components/schemas/IntegrationResponse'
IntegrationHttpMethod:
- description: Specifies the integration's HTTP method type. For the Type property, if you specify ``MOCK``, this property is optional. For Lambda integrations, you must set the integration method to ``POST``. For all other types, you must specify this property.
+ description: ''
type: string
Uri:
- description: |-
- Specifies Uniform Resource Identifier (URI) of the integration endpoint.
- For ``HTTP`` or ``HTTP_PROXY`` integrations, the URI must be a fully formed, encoded HTTP(S) URL according to the RFC-3986 specification for standard integrations. If ``connectionType`` is ``VPC_LINK`` specify the Network Load Balancer DNS name. For ``AWS`` or ``AWS_PROXY`` integrations, the URI is of the form ``arn:aws:apigateway:{region}:{subdomain.service|service}:path|action/{service_api}``. Here, {Region} is the API Gateway region (e.g., us-east-1); {service} is the name of the integrated AWS service (e.g., s3); and {subdomain} is a designated subdomain supported by certain AWS service for fast host-name lookup. action can be used for an AWS service action-based API, using an Action={name}&{p1}={v1}&p2={v2}... query string. The ensuing {service_api} refers to a supported action {name} plus any required input parameters. Alternatively, path can be used for an AWS service path-based API. The ensuing service_api refers to the path to an AWS service resource, including the region of the integrated AWS service, if applicable. For example, for integration with the S3 API of GetObject, the uri can be either ``arn:aws:apigateway:us-west-2:s3:action/GetObject&Bucket={bucket}&Key={key}`` or ``arn:aws:apigateway:us-west-2:s3:path/{bucket}/{key}``
+ description: ''
type: string
PassthroughBehavior:
- description: >-
- Specifies how the method request body of an unmapped content type will be passed through the integration request to the back end without transformation. A content type is unmapped if no mapping template is defined in the integration or the content type does not match any of the mapped content types, as specified in ``requestTemplates``. The valid value is one of the following: ``WHEN_NO_MATCH``: passes the method request body through the integration request to the back end without
- transformation when the method request content type does not match any content type associated with the mapping templates defined in the integration request. ``WHEN_NO_TEMPLATES``: passes the method request body through the integration request to the back end without transformation when no mapping template is defined in the integration request. If a template is defined when this option is selected, the method request of an unmapped content-type will be rejected with an HTTP 415
- Unsupported Media Type response. ``NEVER``: rejects the method request with an HTTP 415 Unsupported Media Type response when either the method request content type does not match any content type associated with the mapping templates defined in the integration request or no mapping template is defined in the integration request.
+ description: ''
type: string
enum:
- WHEN_NO_MATCH
@@ -1271,18 +1440,14 @@ components:
x-patternProperties:
'[a-zA-Z0-9]+':
type: string
- description: >-
- A key-value map specifying request parameters that are passed from the method request to the back end. The key is an integration request parameter name and the associated value is a method request parameter value or static value that must be enclosed within single quotes and pre-encoded as required by the back end. The method request parameter value must match the pattern of ``method.request.{location}.{name}``, where ``location`` is ``querystring``, ``path``, or ``header`` and
- ``name`` must be a valid and unique method request parameter name.
+ description: ''
additionalProperties: false
type: object
ConnectionId:
- description: The ID of the VpcLink used for the integration when ``connectionType=VPC_LINK`` and undefined, otherwise.
+ description: ''
type: string
Type:
- description: |-
- Specifies an API method integration type. The valid value is one of the following:
- For the HTTP and HTTP proxy integrations, each integration can specify a protocol (``http/https``), port and path. Standard 80 and 443 ports are supported as well as custom ports above 1024. An HTTP or HTTP proxy integration with a ``connectionType`` of ``VPC_LINK`` is referred to as a private integration and uses a VpcLink to connect API Gateway to a network load balancer of a VPC.
+ description: ''
type: string
enum:
- AWS
@@ -1292,14 +1457,12 @@ components:
- MOCK
CacheKeyParameters:
uniqueItems: true
- description: A list of request parameters whose values API Gateway caches. To be valid values for ``cacheKeyParameters``, these parameters must also be specified for Method ``requestParameters``.
+ description: ''
type: array
items:
type: string
ContentHandling:
- description: |-
- Specifies how to handle request payload content type conversions. Supported values are ``CONVERT_TO_BINARY`` and ``CONVERT_TO_TEXT``, with the following behaviors:
- If this property is not defined, the request payload will be passed through from the method request to integration request without modification, provided that the ``passthroughBehavior`` is configured to support payload pass-through.
+ description: ''
type: string
enum:
- CONVERT_TO_BINARY
@@ -1308,15 +1471,15 @@ components:
x-patternProperties:
'[a-zA-Z0-9]+':
type: string
- description: Represents a map of Velocity templates that are applied on the request payload based on the value of the Content-Type header sent by the client. The content type value is the key in this map, and the template (as a String) is the value.
+ description: ''
additionalProperties: false
type: object
TimeoutInMillis:
- description: Custom timeout between 50 and 29,000 milliseconds. The default value is 29,000 milliseconds or 29 seconds.
+ description: ''
type: integer
minimum: 50
Credentials:
- description: Specifies the credentials required for the integration, if any. For AWS integrations, three options are available. To specify an IAM Role for API Gateway to assume, use the role's Amazon Resource Name (ARN). To require that the caller's identity be passed through from the request, specify the string ``arn:aws:iam::\*:user/\*``. To use resource-based permissions on supported AWS services, specify null.
+ description: ''
type: string
required:
- Type
@@ -1329,18 +1492,14 @@ components:
x-patternProperties:
'[a-zA-Z0-9]+':
type: string
- description: Specifies the templates used to transform the integration response body. Response templates are represented as a key/value map, with a content-type as the key and a template as the value.
+ description: ''
additionalProperties: false
type: object
SelectionPattern:
- description: >-
- Specifies the regular expression (regex) pattern used to choose an integration response based on the response from the back end. For example, if the success response returns nothing and the error response returns some string, you could use the ``.+`` regex to match error response. However, make sure that the error response does not contain any newline (``\n``) character in such cases. If the back end is an LAMlong function, the LAMlong function error header is matched. For all other
- HTTP and AWS back ends, the HTTP status code is matched.
+ description: ''
type: string
ContentHandling:
- description: |-
- Specifies how to handle response payload content type conversions. Supported values are ``CONVERT_TO_BINARY`` and ``CONVERT_TO_TEXT``, with the following behaviors:
- If this property is not defined, the response payload will be passed through from the integration response to the method response without modification.
+ description: ''
type: string
enum:
- CONVERT_TO_BINARY
@@ -1349,13 +1508,11 @@ components:
x-patternProperties:
'[a-zA-Z0-9]+':
type: string
- description: >-
- A key-value map specifying response parameters that are passed to the method response from the back end. The key is a method response header parameter name and the mapped value is an integration response header value, a static value enclosed within a pair of single quotes, or a JSON expression from the integration response body. The mapping key must match the pattern of ``method.response.header.{name}``, where ``name`` is a valid and unique header name. The mapped non-static value
- must match the pattern of ``integration.response.header.{name}`` or ``integration.response.body.{JSON-expression}``, where ``name`` is a valid and unique response header name and ``JSON-expression`` is a valid JSON expression without the ``$`` prefix.
+ description: ''
additionalProperties: false
type: object
StatusCode:
- description: Specifies the status code that is used to map the integration response to an existing MethodResponse.
+ description: ''
type: string
required:
- StatusCode
@@ -1363,54 +1520,50 @@ components:
type: object
properties:
Integration:
- description: Represents an ``HTTP``, ``HTTP_PROXY``, ``AWS``, ``AWS_PROXY``, or Mock integration.
+ description: ''
$ref: '#/components/schemas/Integration'
OperationName:
- description: A human-friendly operation identifier for the method. For example, you can assign the ``operationName`` of ``ListPets`` for the ``GET /pets`` method in the ``PetStore`` example.
+ description: ''
type: string
RequestModels:
x-patternProperties:
'[a-zA-Z0-9]+':
type: string
- description: A key-value map specifying data schemas, represented by Model resources, (as the mapped value) of the request payloads of given content types (as the mapping key).
+ description: ''
additionalProperties: false
type: object
RestApiId:
- description: The string identifier of the associated RestApi.
+ description: ''
type: string
AuthorizationScopes:
- description: >-
- A list of authorization scopes configured on the method. The scopes are used with a ``COGNITO_USER_POOLS`` authorizer to authorize the method invocation. The authorization works by matching the method scopes against the scopes parsed from the access token in the incoming request. The method invocation is authorized if any method scopes matches a claimed scope in the access token. Otherwise, the invocation is not authorized. When the method scope is configured, the client must provide
- an access token instead of an identity token for authorization purposes.
+ description: ''
type: array
items:
type: string
RequestValidatorId:
- description: The identifier of a RequestValidator for request validation.
+ description: ''
type: string
RequestParameters:
x-patternProperties:
'[a-zA-Z0-9]+':
type: boolean
- description: >-
- A key-value map defining required or optional method request parameters that can be accepted by API Gateway. A key is a method request parameter name matching the pattern of ``method.request.{location}.{name}``, where ``location`` is ``querystring``, ``path``, or ``header`` and ``name`` is a valid and unique parameter name. The value associated with the key is a Boolean flag indicating whether the parameter is required (``true``) or optional (``false``). The method request parameter
- names defined here are available in Integration to be mapped to integration request parameters or templates.
+ description: ''
additionalProperties: false
type: object
MethodResponses:
uniqueItems: true
- description: Gets a method response associated with a given HTTP status code.
+ description: ''
type: array
items:
$ref: '#/components/schemas/MethodResponse'
AuthorizerId:
- description: The identifier of an authorizer to use on this method. The method's authorization type must be ``CUSTOM`` or ``COGNITO_USER_POOLS``.
+ description: ''
type: string
ResourceId:
- description: The Resource identifier for the MethodResponse resource.
+ description: ''
type: string
ApiKeyRequired:
- description: A boolean flag specifying whether a valid ApiKey is required to invoke this method.
+ description: ''
type: boolean
AuthorizationType:
description: |-
@@ -1418,7 +1571,7 @@ components:
If you specify the ``AuthorizerId`` property, specify ``CUSTOM`` or ``COGNITO_USER_POOLS`` for this property.
type: string
HttpMethod:
- description: The method's HTTP verb.
+ description: ''
type: string
required:
- RestApiId
@@ -1463,10 +1616,10 @@ components:
properties:
ContentType:
type: string
- description: The content-type for the model.
+ description: ''
Description:
type: string
- description: The description of the model.
+ description: ''
Name:
type: string
description: |-
@@ -1474,9 +1627,9 @@ components:
If you specify a name, you cannot perform updates that require replacement of this resource. You can perform updates that require no or some interruption. If you must replace the resource, specify a new name.
RestApiId:
type: string
- description: The string identifier of the associated RestApi.
+ description: ''
Schema:
- description: The schema for the model. For ``application/json`` models, this should be JSON schema draft 4 model. Do not include "\*/" characters in the description of any properties because such "\*/" characters may be interpreted as the closing marker for comments in some languages, such as Java or JavaScript, causing the installation of your API's SDK generated by API Gateway to fail.
+ description: ''
type: object
required:
- RestApiId
@@ -1515,16 +1668,16 @@ components:
description: ''
type: string
Name:
- description: The name of this RequestValidator
+ description: ''
type: string
RestApiId:
- description: The string identifier of the associated RestApi.
+ description: ''
type: string
ValidateRequestBody:
- description: A Boolean flag to indicate whether to validate a request body according to the configured Model schema.
+ description: ''
type: boolean
ValidateRequestParameters:
- description: A Boolean flag to indicate whether to validate request parameters (``true``) or not (``false``).
+ description: ''
type: boolean
required:
- RestApiId
@@ -1560,16 +1713,16 @@ components:
type: object
properties:
ParentId:
- description: The parent resource's identifier.
+ description: ''
type: string
PathPart:
- description: The last path segment for this resource.
+ description: ''
type: string
ResourceId:
description: ''
type: string
RestApiId:
- description: The string identifier of the associated RestApi.
+ description: ''
type: string
required:
- ParentId
@@ -1637,20 +1790,20 @@ components:
description: The Amazon Simple Storage Service (Amazon S3) location that points to an OpenAPI file, which defines a set of RESTful APIs in JSON or YAML format.
$ref: '#/components/schemas/S3Location'
Description:
- description: The description of the RestApi.
+ description: ''
type: string
MinimumCompressionSize:
- description: A nullable integer that is used to enable compression (with non-negative between 0 and 10485760 (10M) bytes, inclusive) or disable compression (with a null value) on an API. When compression is enabled, compression or decompression is not applied on the payload if the payload size is smaller than this value. Setting it to zero allows compression for any payload size.
+ description: ''
type: integer
Parameters:
x-patternProperties:
'[a-zA-Z0-9]+':
type: string
- description: Custom header parameters as part of the request. For example, to exclude DocumentationParts from an imported API, set ``ignore=documentation`` as a ``parameters`` value, as in the AWS CLI command of ``aws apigateway import-rest-api --parameters ignore=documentation --body 'file:///path/to/imported-api-body.json'``.
+ description: ''
additionalProperties: false
type: object
CloneFrom:
- description: The ID of the RestApi that you want to clone from.
+ description: ''
type: string
Mode:
description: |-
@@ -1665,14 +1818,14 @@ components:
description: ''
type: string
DisableExecuteApiEndpoint:
- description: Specifies whether clients can invoke your API by using the default ``execute-api`` endpoint. By default, clients can invoke your API with the default ``https://{api_id}.execute-api.{region}.amazonaws.com`` endpoint. To require that clients use a custom domain name to invoke your API, disable the default endpoint
+ description: ''
type: boolean
FailOnWarnings:
- description: A query parameter to indicate whether to rollback the API update (``true``) or not (``false``) when a warning is encountered. The default value is ``false``.
+ description: ''
type: boolean
BinaryMediaTypes:
uniqueItems: true
- description: The list of binary media types supported by the RestApi. By default, the RestApi supports only UTF-8-encoded text payloads.
+ description: ''
type: array
items:
type: string
@@ -1683,7 +1836,7 @@ components:
description: ''
type: string
ApiKeySourceType:
- description: 'The source of the API key for metering requests according to a usage plan. Valid values are: ``HEADER`` to read the API key from the ``X-API-Key`` header of a request. ``AUTHORIZER`` to read the API key from the ``UsageIdentifierKey`` from a custom authorizer.'
+ description: ''
type: string
EndpointConfiguration:
description: A list of the endpoint types of the API. Use this property when creating an API. When importing an existing API, specify the endpoint configuration types using the ``Parameters`` property.
@@ -1693,7 +1846,7 @@ components:
type: object
Tags:
uniqueItems: false
- description: The key-value map of strings. The valid character set is [a-zA-Z+-=._:/]. The tag key can be up to 128 characters and must not start with ``aws:``. The tag value can be up to 256 characters.
+ description: ''
type: array
items:
$ref: '#/components/schemas/Tag'
@@ -1751,51 +1904,51 @@ components:
type: object
properties:
AccessLogSetting:
- description: Access log settings, including the access log format and access log destination ARN.
+ description: ''
$ref: '#/components/schemas/AccessLogSetting'
CacheClusterEnabled:
- description: Specifies whether a cache cluster is enabled for the stage.
+ description: ''
type: boolean
CacheClusterSize:
- description: The stage's cache capacity in GB. For more information about choosing a cache size, see [Enabling API caching to enhance responsiveness](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-caching.html).
+ description: ''
type: string
CanarySetting:
- description: Settings for the canary deployment in this stage.
+ description: ''
$ref: '#/components/schemas/CanarySetting'
ClientCertificateId:
- description: The identifier of a client certificate for an API stage.
+ description: ''
type: string
DeploymentId:
- description: The identifier of the Deployment that the stage points to.
+ description: ''
type: string
Description:
- description: The stage's description.
+ description: ''
type: string
DocumentationVersion:
- description: The version of the associated API documentation.
+ description: ''
type: string
MethodSettings:
- description: A map that defines the method settings for a Stage resource. Keys (designated as ``/{method_setting_key`` below) are method paths defined as ``{resource_path}/{http_method}`` for an individual method override, or ``/\*/\*`` for overriding all methods in the stage.
+ description: ''
type: array
uniqueItems: true
x-insertionOrder: false
items:
$ref: '#/components/schemas/MethodSetting'
RestApiId:
- description: The string identifier of the associated RestApi.
+ description: ''
type: string
StageName:
- description: The name of the stage is the first path segment in the Uniform Resource Identifier (URI) of a call to API Gateway. Stage names can only contain alphanumeric characters, hyphens, and underscores. Maximum length is 128 characters.
+ description: ''
type: string
Tags:
- description: The collection of tags. Each tag element is associated with a given resource.
+ description: ''
type: array
uniqueItems: false
x-insertionOrder: false
items:
$ref: '#/components/schemas/Tag'
TracingEnabled:
- description: Specifies whether active tracing with X-ray is enabled for the Stage.
+ description: ''
type: boolean
Variables:
description: 'A map (string-to-string map) that defines the stage variables, where the variable name is the key and the variable value is the value. Variable names are limited to alphanumeric characters. Values must match the following regular expression: ``[A-Za-z0-9-._~:/?#&=,]+``.'
@@ -1850,18 +2003,18 @@ components:
properties:
ApiId:
type: string
- description: API Id of the associated API stage in a usage plan.
+ description: ''
Stage:
type: string
- description: API stage name of the associated API stage in a usage plan.
+ description: ''
Throttle:
type: object
- description: Map containing method level throttling information for API stage in a usage plan.
+ description: ''
additionalProperties: false
x-patternProperties:
.*:
$ref: '#/components/schemas/ThrottleSettings'
- description: API stage name of the associated API stage in a usage plan.
+ description: ''
ThrottleSettings:
type: object
additionalProperties: false
@@ -1869,11 +2022,11 @@ components:
BurstLimit:
type: integer
minimum: 0
- description: The API target request burst rate limit. This allows more requests through for a period of time than the target rate limit.
+ description: ''
RateLimit:
type: number
minimum: 0
- description: The API target request rate limit.
+ description: ''
description: '``ThrottleSettings`` is a property of the [AWS::ApiGateway::UsagePlan](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplan.html) resource that specifies the overall request rate (average requests per second) and burst capacity when users call your REST APIs.'
QuotaSettings:
type: object
@@ -1882,14 +2035,14 @@ components:
Limit:
type: integer
minimum: 0
- description: The target maximum number of requests that can be made in a given time period.
+ description: ''
Offset:
type: integer
minimum: 0
- description: The number of requests subtracted from the given limit in the initial time period.
+ description: ''
Period:
type: string
- description: The time period in which the limit applies. Valid values are "DAY", "WEEK" or "MONTH".
+ description: ''
description: |-
``QuotaSettings`` is a property of the [AWS::ApiGateway::UsagePlan](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplan.html) resource that specifies a target for the maximum number of requests users can make to your REST APIs.
In some cases clients can exceed the targets that you set. Don’t rely on usage plans to control costs. Consider using [](https://docs.aws.amazon.com/cost-management/latest/userguide/budgets-managing-costs.html) to monitor costs and [](https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html) to manage API requests.
@@ -1901,29 +2054,29 @@ components:
description: ''
ApiStages:
type: array
- description: The associated API stages of a usage plan.
+ description: ''
uniqueItems: true
items:
$ref: '#/components/schemas/ApiStage'
Description:
type: string
- description: The description of a usage plan.
+ description: ''
Quota:
$ref: '#/components/schemas/QuotaSettings'
- description: The target maximum number of permitted requests per a given unit time interval.
+ description: ''
Tags:
type: array
- description: The collection of tags. Each tag element is associated with a given resource.
+ description: ''
x-insertionOrder: false
uniqueItems: false
items:
$ref: '#/components/schemas/Tag'
Throttle:
$ref: '#/components/schemas/ThrottleSettings'
- description: A map containing method level throttling information for API stage in a usage plan.
+ description: ''
UsagePlanName:
type: string
- description: The name of a usage plan.
+ description: ''
x-stackql-resource-name: usage_plan
description: |-
The ``AWS::ApiGateway::UsagePlan`` resource creates a usage plan for deployed APIs. A usage plan sets a target for the throttling and quota limits on individual client API keys. For more information, see [Creating and Using API Usage Plans in Amazon API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-api-usage-plans.html) in the *API Gateway Developer Guide*.
@@ -1968,7 +2121,7 @@ components:
description: The Id of the UsagePlanKey resource.
type: string
KeyType:
- description: The type of a UsagePlanKey resource for a plan customer.
+ description: ''
type: string
enum:
- API_KEY
@@ -2014,10 +2167,10 @@ components:
type: object
properties:
Name:
- description: The name used to label and identify the VPC link.
+ description: ''
type: string
Description:
- description: The description of the VPC link.
+ description: ''
type: string
Tags:
description: An array of arbitrary tags (key-value pairs) to associate with the VPC link.
@@ -2027,7 +2180,7 @@ components:
items:
$ref: '#/components/schemas/Tag'
TargetArns:
- description: The ARN of the network load balancer of the VPC targeted by the VPC link. The network load balancer must be owned by the same AWS-account of the API owner.
+ description: ''
type: array
uniqueItems: false
x-insertionOrder: false
@@ -2111,7 +2264,7 @@ components:
description: ''
type: string
CloudWatchRoleArn:
- description: The ARN of an Amazon CloudWatch role for the current Account.
+ description: ''
type: string
x-stackQL-stringOnly: true
x-title: CreateAccountRequest
@@ -2134,17 +2287,17 @@ components:
description: ''
type: string
CustomerId:
- description: An MKT customer identifier, when integrating with the AWS SaaS Marketplace.
+ description: ''
type: string
Description:
- description: The description of the ApiKey.
+ description: ''
type: string
Enabled:
- description: Specifies whether the ApiKey can be used by callers.
+ description: ''
default: false
type: boolean
GenerateDistinctId:
- description: Specifies whether (``true``) or not (``false``) the key identifier is distinct from the created API key value. This parameter is deprecated and should not be used.
+ description: ''
type: boolean
Name:
description: |-
@@ -2152,19 +2305,19 @@ components:
If you specify a name, you cannot perform updates that require replacement of this resource. You can perform updates that require no or some interruption. If you must replace the resource, specify a new name.
type: string
StageKeys:
- description: DEPRECATED FOR USAGE PLANS - Specifies stages associated with the API key.
+ description: ''
type: array
uniqueItems: true
items:
$ref: '#/components/schemas/StageKey'
Tags:
- description: The key-value map of strings. The valid character set is [a-zA-Z+-=._:/]. The tag key can be up to 128 characters and must not start with ``aws:``. The tag value can be up to 256 characters.
+ description: ''
type: array
uniqueItems: false
items:
$ref: '#/components/schemas/Tag'
Value:
- description: Specifies a value of the API key.
+ description: ''
type: string
x-stackQL-stringOnly: true
x-title: CreateApiKeyRequest
@@ -2184,48 +2337,41 @@ components:
type: object
properties:
RestApiId:
- description: The string identifier of the associated RestApi.
+ description: ''
type: string
AuthorizerId:
type: string
description: ''
AuthType:
- description: Optional customer-defined field, used in OpenAPI imports and exports without functional impact.
+ description: ''
type: string
AuthorizerCredentials:
- description: Specifies the required credentials as an IAM role for API Gateway to invoke the authorizer. To specify an IAM role for API Gateway to assume, use the role's Amazon Resource Name (ARN). To use resource-based permissions on the Lambda function, specify null.
+ description: ''
type: string
AuthorizerResultTtlInSeconds:
- description: The TTL in seconds of cached authorizer results. If it equals 0, authorization caching is disabled. If it is greater than 0, API Gateway will cache authorizer responses. If this field is not set, the default value is 300. The maximum value is 3600, or 1 hour.
+ description: ''
type: integer
AuthorizerUri:
- description: >-
- Specifies the authorizer's Uniform Resource Identifier (URI). For ``TOKEN`` or ``REQUEST`` authorizers, this must be a well-formed Lambda function URI, for example, ``arn:aws:apigateway:us-west-2:lambda:path/2015-03-31/functions/arn:aws:lambda:us-west-2:{account_id}:function:{lambda_function_name}/invocations``. In general, the URI has this form ``arn:aws:apigateway:{region}:lambda:path/{service_api}``, where ``{region}`` is the same as the region hosting the Lambda function,
- ``path`` indicates that the remaining substring in the URI should be treated as the path to the resource, including the initial ``/``. For Lambda functions, this is usually of the form ``/2015-03-31/functions/[FunctionARN]/invocations``.
+ description: ''
type: string
IdentitySource:
- description: >-
- The identity source for which authorization is requested. For a ``TOKEN`` or ``COGNITO_USER_POOLS`` authorizer, this is required and specifies the request header mapping expression for the custom header holding the authorization token submitted by the client. For example, if the token header name is ``Auth``, the header mapping expression is ``method.request.header.Auth``. For the ``REQUEST`` authorizer, this is required when authorization caching is enabled. The value is a
- comma-separated string of one or more mapping expressions of the specified request parameters. For example, if an ``Auth`` header, a ``Name`` query string parameter are defined as identity sources, this value is ``method.request.header.Auth, method.request.querystring.Name``. These parameters will be used to derive the authorization caching key and to perform runtime validation of the ``REQUEST`` authorizer by verifying all of the identity-related request parameters are present,
- not null and non-empty. Only when this is true does the authorizer invoke the authorizer Lambda function, otherwise, it returns a 401 Unauthorized response without calling the Lambda function. The valid value is a string of comma-separated mapping expressions of the specified request parameters. When the authorization caching is not enabled, this property is optional.
+ description: ''
type: string
IdentityValidationExpression:
- description: >-
- A validation expression for the incoming identity token. For ``TOKEN`` authorizers, this value is a regular expression. For ``COGNITO_USER_POOLS`` authorizers, API Gateway will match the ``aud`` field of the incoming token from the client against the specified regular expression. It will invoke the authorizer's Lambda function when there is a match. Otherwise, it will return a 401 Unauthorized response without calling the Lambda function. The validation expression does not apply
- to the ``REQUEST`` authorizer.
+ description: ''
type: string
Name:
- description: The name of the authorizer.
+ description: ''
type: string
ProviderARNs:
- description: 'A list of the Amazon Cognito user pool ARNs for the ``COGNITO_USER_POOLS`` authorizer. Each element is of this format: ``arn:aws:cognito-idp:{region}:{account_id}:userpool/{user_pool_id}``. For a ``TOKEN`` or ``REQUEST`` authorizer, this is not defined.'
+ description: ''
type: array
uniqueItems: true
items:
type: string
x-insertionOrder: false
Type:
- description: The authorizer type. Valid values are ``TOKEN`` for a Lambda function using a single authorization token submitted in a custom header, ``REQUEST`` for a Lambda function using incoming request parameters, and ``COGNITO_USER_POOLS`` for using an Amazon Cognito user pool.
+ description: ''
type: string
x-stackQL-stringOnly: true
x-title: CreateAuthorizerRequest
@@ -2246,20 +2392,52 @@ components:
properties:
BasePath:
type: string
- description: The base path name that callers of the API must provide as part of the URL after the domain name.
+ description: ''
DomainName:
type: string
- description: The domain name of the BasePathMapping resource to be described.
+ description: ''
RestApiId:
type: string
- description: The string identifier of the associated RestApi.
+ description: ''
Stage:
type: string
- description: The name of the associated stage.
+ description: ''
x-stackQL-stringOnly: true
x-title: CreateBasePathMappingRequest
type: object
required: []
+ CreateBasePathMappingV2Request:
+ properties:
+ ClientToken:
+ type: string
+ RoleArn:
+ type: string
+ TypeName:
+ type: string
+ TypeVersionId:
+ type: string
+ DesiredState:
+ type: object
+ properties:
+ BasePath:
+ type: string
+ description: The base path name that callers of the API must provide in the URL after the domain name.
+ DomainNameArn:
+ type: string
+ description: The Arn of an AWS::ApiGateway::DomainNameV2 resource.
+ RestApiId:
+ type: string
+ description: The ID of the API.
+ Stage:
+ type: string
+ description: The name of the API's stage.
+ BasePathMappingArn:
+ type: string
+ description: Amazon Resource Name (ARN) of the resource.
+ x-stackQL-stringOnly: true
+ x-title: CreateBasePathMappingV2Request
+ type: object
+ required: []
CreateClientCertificateRequest:
properties:
ClientToken:
@@ -2277,10 +2455,10 @@ components:
description: ''
type: string
Description:
- description: The description of the client certificate.
+ description: ''
type: string
Tags:
- description: The collection of tags. Each tag element is associated with a given resource.
+ description: ''
type: array
uniqueItems: false
items:
@@ -2306,19 +2484,19 @@ components:
description: ''
type: string
Description:
- description: The description for the Deployment resource to create.
+ description: ''
type: string
StageDescription:
description: The description of the Stage resource for the Deployment resource to create. To specify a stage description, you must also provide a stage name.
$ref: '#/components/schemas/StageDescription'
StageName:
- description: The name of the Stage resource for the Deployment resource to create.
+ description: ''
type: string
RestApiId:
- description: The string identifier of the associated RestApi.
+ description: ''
type: string
DeploymentCanarySettings:
- description: The input configuration for a canary deployment.
+ description: ''
$ref: '#/components/schemas/DeploymentCanarySettings'
x-stackQL-stringOnly: true
x-title: CreateDeploymentRequest
@@ -2341,13 +2519,13 @@ components:
description: ''
type: string
Location:
- description: The location of the targeted API entity of the to-be-created documentation part.
+ description: ''
$ref: '#/components/schemas/Location'
Properties:
- description: The new documentation content map of the targeted API entity. Enclosed key-value pairs are API-specific, but only OpenAPI-compliant key-value pairs can be exported and, hence, published.
+ description: ''
type: string
RestApiId:
- description: The string identifier of the associated RestApi.
+ description: ''
type: string
x-stackQL-stringOnly: true
x-title: CreateDocumentationPartRequest
@@ -2367,14 +2545,14 @@ components:
type: object
properties:
Description:
- description: A description about the new documentation snapshot.
+ description: ''
type: string
DocumentationVersion:
- description: The version identifier of the to-be-updated documentation version.
+ description: ''
type: string
minLength: 1
RestApiId:
- description: The string identifier of the associated RestApi.
+ description: ''
type: string
minLength: 1
x-stackQL-stringOnly: true
@@ -2394,34 +2572,107 @@ components:
DesiredState:
type: object
properties:
+ MutualTlsAuthentication:
+ $ref: '#/components/schemas/MutualTlsAuthentication'
+ OwnershipVerificationCertificateArn:
+ type: string
+ RegionalHostedZoneId:
+ type: string
+ RegionalDomainName:
+ type: string
DomainName:
type: string
- DistributionDomainName:
+ SecurityPolicy:
type: string
DistributionHostedZoneId:
type: string
EndpointConfiguration:
$ref: '#/components/schemas/EndpointConfiguration'
- MutualTlsAuthentication:
- $ref: '#/components/schemas/MutualTlsAuthentication'
- RegionalDomainName:
+ DistributionDomainName:
type: string
- RegionalHostedZoneId:
+ RegionalCertificateArn:
type: string
+ Tags:
+ type: array
+ items:
+ $ref: '#/components/schemas/Tag'
CertificateArn:
type: string
- RegionalCertificateArn:
+ x-stackQL-stringOnly: true
+ x-title: CreateDomainNameRequest
+ type: object
+ required: []
+ CreateDomainNameAccessAssociationRequest:
+ properties:
+ ClientToken:
+ type: string
+ RoleArn:
+ type: string
+ TypeName:
+ type: string
+ TypeVersionId:
+ type: string
+ DesiredState:
+ type: object
+ properties:
+ DomainNameAccessAssociationArn:
type: string
- OwnershipVerificationCertificateArn:
+ description: The amazon resource name (ARN) of the domain name access association resource.
+ DomainNameArn:
+ type: string
+ description: The amazon resource name (ARN) of the domain name resource.
+ AccessAssociationSource:
+ type: string
+ description: The source of the domain name access association resource.
+ AccessAssociationSourceType:
+ type: string
+ description: The source type of the domain name access association resource.
+ enum:
+ - VPCE
+ Tags:
+ description: An array of arbitrary tags (key-value pairs) to associate with the domainname access association.
+ uniqueItems: false
+ type: array
+ items:
+ $ref: '#/components/schemas/Tag'
+ x-stackQL-stringOnly: true
+ x-title: CreateDomainNameAccessAssociationRequest
+ type: object
+ required: []
+ CreateDomainNameV2Request:
+ properties:
+ ClientToken:
+ type: string
+ RoleArn:
+ type: string
+ TypeName:
+ type: string
+ TypeVersionId:
+ type: string
+ DesiredState:
+ type: object
+ properties:
+ CertificateArn:
+ type: string
+ DomainName:
type: string
+ EndpointConfiguration:
+ $ref: '#/components/schemas/EndpointConfiguration'
SecurityPolicy:
type: string
+ Policy:
+ type: object
+ DomainNameId:
+ type: string
+ DomainNameArn:
+ type: string
+ description: The amazon resource name (ARN) of the domain name resource.
Tags:
type: array
items:
$ref: '#/components/schemas/Tag'
x-stackQL-stringOnly: true
- x-title: CreateDomainNameRequest
+ x-title: CreateDomainNameV2Request
type: object
required: []
CreateGatewayResponseRequest:
@@ -2441,23 +2692,23 @@ components:
description: ''
type: string
RestApiId:
- description: The string identifier of the associated RestApi.
+ description: ''
type: string
ResponseType:
- description: The response type of the associated GatewayResponse.
+ description: ''
type: string
StatusCode:
- description: The HTTP status code for this GatewayResponse.
+ description: ''
type: string
ResponseParameters:
- description: Response parameters (paths, query strings and headers) of the GatewayResponse as a string-to-string map of key-value pairs.
+ description: ''
type: object
additionalProperties: false
x-patternProperties:
'[a-zA-Z0-9]+':
type: string
ResponseTemplates:
- description: Response templates of the GatewayResponse as a string-to-string map of key-value pairs.
+ description: ''
type: object
additionalProperties: false
x-patternProperties:
@@ -2481,54 +2732,50 @@ components:
type: object
properties:
Integration:
- description: Represents an ``HTTP``, ``HTTP_PROXY``, ``AWS``, ``AWS_PROXY``, or Mock integration.
+ description: ''
$ref: '#/components/schemas/Integration'
OperationName:
- description: A human-friendly operation identifier for the method. For example, you can assign the ``operationName`` of ``ListPets`` for the ``GET /pets`` method in the ``PetStore`` example.
+ description: ''
type: string
RequestModels:
x-patternProperties:
'[a-zA-Z0-9]+':
type: string
- description: A key-value map specifying data schemas, represented by Model resources, (as the mapped value) of the request payloads of given content types (as the mapping key).
+ description: ''
additionalProperties: false
type: object
RestApiId:
- description: The string identifier of the associated RestApi.
+ description: ''
type: string
AuthorizationScopes:
- description: >-
- A list of authorization scopes configured on the method. The scopes are used with a ``COGNITO_USER_POOLS`` authorizer to authorize the method invocation. The authorization works by matching the method scopes against the scopes parsed from the access token in the incoming request. The method invocation is authorized if any method scopes matches a claimed scope in the access token. Otherwise, the invocation is not authorized. When the method scope is configured, the client must
- provide an access token instead of an identity token for authorization purposes.
+ description: ''
type: array
items:
type: string
RequestValidatorId:
- description: The identifier of a RequestValidator for request validation.
+ description: ''
type: string
RequestParameters:
x-patternProperties:
'[a-zA-Z0-9]+':
type: boolean
- description: >-
- A key-value map defining required or optional method request parameters that can be accepted by API Gateway. A key is a method request parameter name matching the pattern of ``method.request.{location}.{name}``, where ``location`` is ``querystring``, ``path``, or ``header`` and ``name`` is a valid and unique parameter name. The value associated with the key is a Boolean flag indicating whether the parameter is required (``true``) or optional (``false``). The method request
- parameter names defined here are available in Integration to be mapped to integration request parameters or templates.
+ description: ''
additionalProperties: false
type: object
MethodResponses:
uniqueItems: true
- description: Gets a method response associated with a given HTTP status code.
+ description: ''
type: array
items:
$ref: '#/components/schemas/MethodResponse'
AuthorizerId:
- description: The identifier of an authorizer to use on this method. The method's authorization type must be ``CUSTOM`` or ``COGNITO_USER_POOLS``.
+ description: ''
type: string
ResourceId:
- description: The Resource identifier for the MethodResponse resource.
+ description: ''
type: string
ApiKeyRequired:
- description: A boolean flag specifying whether a valid ApiKey is required to invoke this method.
+ description: ''
type: boolean
AuthorizationType:
description: |-
@@ -2536,7 +2783,7 @@ components:
If you specify the ``AuthorizerId`` property, specify ``CUSTOM`` or ``COGNITO_USER_POOLS`` for this property.
type: string
HttpMethod:
- description: The method's HTTP verb.
+ description: ''
type: string
x-stackQL-stringOnly: true
x-title: CreateMethodRequest
@@ -2557,10 +2804,10 @@ components:
properties:
ContentType:
type: string
- description: The content-type for the model.
+ description: ''
Description:
type: string
- description: The description of the model.
+ description: ''
Name:
type: string
description: |-
@@ -2568,9 +2815,9 @@ components:
If you specify a name, you cannot perform updates that require replacement of this resource. You can perform updates that require no or some interruption. If you must replace the resource, specify a new name.
RestApiId:
type: string
- description: The string identifier of the associated RestApi.
+ description: ''
Schema:
- description: The schema for the model. For ``application/json`` models, this should be JSON schema draft 4 model. Do not include "\*/" characters in the description of any properties because such "\*/" characters may be interpreted as the closing marker for comments in some languages, such as Java or JavaScript, causing the installation of your API's SDK generated by API Gateway to fail.
+ description: ''
type: object
x-stackQL-stringOnly: true
x-title: CreateModelRequest
@@ -2593,16 +2840,16 @@ components:
description: ''
type: string
Name:
- description: The name of this RequestValidator
+ description: ''
type: string
RestApiId:
- description: The string identifier of the associated RestApi.
+ description: ''
type: string
ValidateRequestBody:
- description: A Boolean flag to indicate whether to validate a request body according to the configured Model schema.
+ description: ''
type: boolean
ValidateRequestParameters:
- description: A Boolean flag to indicate whether to validate request parameters (``true``) or not (``false``).
+ description: ''
type: boolean
x-stackQL-stringOnly: true
x-title: CreateRequestValidatorRequest
@@ -2622,16 +2869,16 @@ components:
type: object
properties:
ParentId:
- description: The parent resource's identifier.
+ description: ''
type: string
PathPart:
- description: The last path segment for this resource.
+ description: ''
type: string
ResourceId:
description: ''
type: string
RestApiId:
- description: The string identifier of the associated RestApi.
+ description: ''
type: string
x-stackQL-stringOnly: true
x-title: CreateResourceRequest
@@ -2657,20 +2904,20 @@ components:
description: The Amazon Simple Storage Service (Amazon S3) location that points to an OpenAPI file, which defines a set of RESTful APIs in JSON or YAML format.
$ref: '#/components/schemas/S3Location'
Description:
- description: The description of the RestApi.
+ description: ''
type: string
MinimumCompressionSize:
- description: A nullable integer that is used to enable compression (with non-negative between 0 and 10485760 (10M) bytes, inclusive) or disable compression (with a null value) on an API. When compression is enabled, compression or decompression is not applied on the payload if the payload size is smaller than this value. Setting it to zero allows compression for any payload size.
+ description: ''
type: integer
Parameters:
x-patternProperties:
'[a-zA-Z0-9]+':
type: string
- description: Custom header parameters as part of the request. For example, to exclude DocumentationParts from an imported API, set ``ignore=documentation`` as a ``parameters`` value, as in the AWS CLI command of ``aws apigateway import-rest-api --parameters ignore=documentation --body 'file:///path/to/imported-api-body.json'``.
+ description: ''
additionalProperties: false
type: object
CloneFrom:
- description: The ID of the RestApi that you want to clone from.
+ description: ''
type: string
Mode:
description: |-
@@ -2685,14 +2932,14 @@ components:
description: ''
type: string
DisableExecuteApiEndpoint:
- description: Specifies whether clients can invoke your API by using the default ``execute-api`` endpoint. By default, clients can invoke your API with the default ``https://{api_id}.execute-api.{region}.amazonaws.com`` endpoint. To require that clients use a custom domain name to invoke your API, disable the default endpoint
+ description: ''
type: boolean
FailOnWarnings:
- description: A query parameter to indicate whether to rollback the API update (``true``) or not (``false``) when a warning is encountered. The default value is ``false``.
+ description: ''
type: boolean
BinaryMediaTypes:
uniqueItems: true
- description: The list of binary media types supported by the RestApi. By default, the RestApi supports only UTF-8-encoded text payloads.
+ description: ''
type: array
items:
type: string
@@ -2703,7 +2950,7 @@ components:
description: ''
type: string
ApiKeySourceType:
- description: 'The source of the API key for metering requests according to a usage plan. Valid values are: ``HEADER`` to read the API key from the ``X-API-Key`` header of a request. ``AUTHORIZER`` to read the API key from the ``UsageIdentifierKey`` from a custom authorizer.'
+ description: ''
type: string
EndpointConfiguration:
description: A list of the endpoint types of the API. Use this property when creating an API. When importing an existing API, specify the endpoint configuration types using the ``Parameters`` property.
@@ -2713,7 +2960,7 @@ components:
type: object
Tags:
uniqueItems: false
- description: The key-value map of strings. The valid character set is [a-zA-Z+-=._:/]. The tag key can be up to 128 characters and must not start with ``aws:``. The tag value can be up to 256 characters.
+ description: ''
type: array
items:
$ref: '#/components/schemas/Tag'
@@ -2735,51 +2982,51 @@ components:
type: object
properties:
AccessLogSetting:
- description: Access log settings, including the access log format and access log destination ARN.
+ description: ''
$ref: '#/components/schemas/AccessLogSetting'
CacheClusterEnabled:
- description: Specifies whether a cache cluster is enabled for the stage.
+ description: ''
type: boolean
CacheClusterSize:
- description: The stage's cache capacity in GB. For more information about choosing a cache size, see [Enabling API caching to enhance responsiveness](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-caching.html).
+ description: ''
type: string
CanarySetting:
- description: Settings for the canary deployment in this stage.
+ description: ''
$ref: '#/components/schemas/CanarySetting'
ClientCertificateId:
- description: The identifier of a client certificate for an API stage.
+ description: ''
type: string
DeploymentId:
- description: The identifier of the Deployment that the stage points to.
+ description: ''
type: string
Description:
- description: The stage's description.
+ description: ''
type: string
DocumentationVersion:
- description: The version of the associated API documentation.
+ description: ''
type: string
MethodSettings:
- description: A map that defines the method settings for a Stage resource. Keys (designated as ``/{method_setting_key`` below) are method paths defined as ``{resource_path}/{http_method}`` for an individual method override, or ``/\*/\*`` for overriding all methods in the stage.
+ description: ''
type: array
uniqueItems: true
x-insertionOrder: false
items:
$ref: '#/components/schemas/MethodSetting'
RestApiId:
- description: The string identifier of the associated RestApi.
+ description: ''
type: string
StageName:
- description: The name of the stage is the first path segment in the Uniform Resource Identifier (URI) of a call to API Gateway. Stage names can only contain alphanumeric characters, hyphens, and underscores. Maximum length is 128 characters.
+ description: ''
type: string
Tags:
- description: The collection of tags. Each tag element is associated with a given resource.
+ description: ''
type: array
uniqueItems: false
x-insertionOrder: false
items:
$ref: '#/components/schemas/Tag'
TracingEnabled:
- description: Specifies whether active tracing with X-ray is enabled for the Stage.
+ description: ''
type: boolean
Variables:
description: 'A map (string-to-string map) that defines the stage variables, where the variable name is the key and the variable value is the value. Variable names are limited to alphanumeric characters. Values must match the following regular expression: ``[A-Za-z0-9-._~:/?#&=,]+``.'
@@ -2810,29 +3057,29 @@ components:
description: ''
ApiStages:
type: array
- description: The associated API stages of a usage plan.
+ description: ''
uniqueItems: true
items:
$ref: '#/components/schemas/ApiStage'
Description:
type: string
- description: The description of a usage plan.
+ description: ''
Quota:
$ref: '#/components/schemas/QuotaSettings'
- description: The target maximum number of permitted requests per a given unit time interval.
+ description: ''
Tags:
type: array
- description: The collection of tags. Each tag element is associated with a given resource.
+ description: ''
x-insertionOrder: false
uniqueItems: false
items:
$ref: '#/components/schemas/Tag'
Throttle:
$ref: '#/components/schemas/ThrottleSettings'
- description: A map containing method level throttling information for API stage in a usage plan.
+ description: ''
UsagePlanName:
type: string
- description: The name of a usage plan.
+ description: ''
x-stackQL-stringOnly: true
x-title: CreateUsagePlanRequest
type: object
@@ -2854,7 +3101,7 @@ components:
description: The Id of the UsagePlanKey resource.
type: string
KeyType:
- description: The type of a UsagePlanKey resource for a plan customer.
+ description: ''
type: string
enum:
- API_KEY
@@ -2882,10 +3129,10 @@ components:
type: object
properties:
Name:
- description: The name used to label and identify the VPC link.
+ description: ''
type: string
Description:
- description: The description of the VPC link.
+ description: ''
type: string
Tags:
description: An array of arbitrary tags (key-value pairs) to associate with the VPC link.
@@ -2895,7 +3142,7 @@ components:
items:
$ref: '#/components/schemas/Tag'
TargetArns:
- description: The ARN of the network load balancer of the VPC targeted by the VPC link. The network load balancer must be owned by the same AWS-account of the API owner.
+ description: ''
type: array
uniqueItems: false
x-insertionOrder: false
@@ -3548,6 +3795,156 @@ components:
json_extract_path_text(Properties, 'BasePath') as base_path
FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::ApiGateway::BasePathMapping'
AND region = 'us-east-1'
+ base_path_mapping_v2s:
+ name: base_path_mapping_v2s
+ id: aws.apigateway.base_path_mapping_v2s
+ x-cfn-schema-name: BasePathMappingV2
+ x-cfn-type-name: AWS::ApiGateway::BasePathMappingV2
+ x-identifiers:
+ - BasePathMappingArn
+ x-type: cloud_control
+ methods:
+ create_resource:
+ config:
+ requestBodyTranslate:
+ algorithm: naive_DesiredState
+ operation:
+ $ref: '#/paths/~1?Action=CreateResource&Version=2021-09-30&__BasePathMappingV2&__detailTransformed=true/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::ApiGateway::BasePathMappingV2"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ update_resource:
+ operation:
+ $ref: '#/paths/~1?Action=UpdateResource&Version=2021-09-30/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::ApiGateway::BasePathMappingV2"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ delete_resource:
+ operation:
+ $ref: '#/paths/~1?Action=DeleteResource&Version=2021-09-30/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::ApiGateway::BasePathMappingV2"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ sqlVerbs:
+ insert:
+ - $ref: '#/components/x-stackQL-resources/base_path_mapping_v2s/methods/create_resource'
+ delete:
+ - $ref: '#/components/x-stackQL-resources/base_path_mapping_v2s/methods/delete_resource'
+ update:
+ - $ref: '#/components/x-stackQL-resources/base_path_mapping_v2s/methods/update_resource'
+ config:
+ views:
+ select:
+ predicate: sqlDialect == "sqlite3" && requiredParams == [ data__Identifier ]
+ ddl: |-
+ SELECT
+ region,
+ data__Identifier,
+ JSON_EXTRACT(Properties, '$.BasePath') as base_path,
+ JSON_EXTRACT(Properties, '$.DomainNameArn') as domain_name_arn,
+ JSON_EXTRACT(Properties, '$.RestApiId') as rest_api_id,
+ JSON_EXTRACT(Properties, '$.Stage') as stage,
+ JSON_EXTRACT(Properties, '$.BasePathMappingArn') as base_path_mapping_arn
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::ApiGateway::BasePathMappingV2'
+ AND data__Identifier = ''
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "sqlite3"
+ ddl: |-
+ SELECT
+ detail.region,
+ JSON_EXTRACT(detail.Properties, '$.BasePath') as base_path,
+ JSON_EXTRACT(detail.Properties, '$.DomainNameArn') as domain_name_arn,
+ JSON_EXTRACT(detail.Properties, '$.RestApiId') as rest_api_id,
+ JSON_EXTRACT(detail.Properties, '$.Stage') as stage,
+ JSON_EXTRACT(detail.Properties, '$.BasePathMappingArn') as base_path_mapping_arn
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ WHERE listing.data__TypeName = 'AWS::ApiGateway::BasePathMappingV2'
+ AND detail.data__TypeName = 'AWS::ApiGateway::BasePathMappingV2'
+ AND listing.region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres" && requiredParams == [ data__Identifier ]
+ ddl: |-
+ SELECT
+ region,
+ data__Identifier,
+ json_extract_path_text(Properties, 'BasePath') as base_path,
+ json_extract_path_text(Properties, 'DomainNameArn') as domain_name_arn,
+ json_extract_path_text(Properties, 'RestApiId') as rest_api_id,
+ json_extract_path_text(Properties, 'Stage') as stage,
+ json_extract_path_text(Properties, 'BasePathMappingArn') as base_path_mapping_arn
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::ApiGateway::BasePathMappingV2'
+ AND data__Identifier = ''
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres"
+ ddl: |-
+ SELECT
+ detail.region,
+ json_extract_path_text(detail.Properties, 'BasePath') as base_path,
+ json_extract_path_text(detail.Properties, 'DomainNameArn') as domain_name_arn,
+ json_extract_path_text(detail.Properties, 'RestApiId') as rest_api_id,
+ json_extract_path_text(detail.Properties, 'Stage') as stage,
+ json_extract_path_text(detail.Properties, 'BasePathMappingArn') as base_path_mapping_arn
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ WHERE listing.data__TypeName = 'AWS::ApiGateway::BasePathMappingV2'
+ AND detail.data__TypeName = 'AWS::ApiGateway::BasePathMappingV2'
+ AND listing.region = 'us-east-1'
+ base_path_mapping_v2s_list_only:
+ name: base_path_mapping_v2s_list_only
+ id: aws.apigateway.base_path_mapping_v2s_list_only
+ x-cfn-schema-name: BasePathMappingV2
+ x-cfn-type-name: AWS::ApiGateway::BasePathMappingV2
+ x-identifiers:
+ - BasePathMappingArn
+ x-type: cloud_control_view
+ methods: {}
+ sqlVerbs:
+ insert: []
+ delete: []
+ update: []
+ config:
+ views:
+ select:
+ predicate: sqlDialect == "sqlite3"
+ ddl: |-
+ SELECT
+ region,
+ JSON_EXTRACT(Properties, '$.BasePathMappingArn') as base_path_mapping_arn
+ FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::ApiGateway::BasePathMappingV2'
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres"
+ ddl: |-
+ SELECT
+ region,
+ json_extract_path_text(Properties, 'BasePathMappingArn') as base_path_mapping_arn
+ FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::ApiGateway::BasePathMappingV2'
+ AND region = 'us-east-1'
client_certificates:
name: client_certificates
id: aws.apigateway.client_certificates
@@ -4177,27 +4574,458 @@ components:
predicate: sqlDialect == "sqlite3"
ddl: |-
SELECT
- region,
- JSON_EXTRACT(Properties, '$.DocumentationVersion') as documentation_version,
- JSON_EXTRACT(Properties, '$.RestApiId') as rest_api_id
- FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::ApiGateway::DocumentationVersion'
- AND region = 'us-east-1'
+ region,
+ JSON_EXTRACT(Properties, '$.DocumentationVersion') as documentation_version,
+ JSON_EXTRACT(Properties, '$.RestApiId') as rest_api_id
+ FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::ApiGateway::DocumentationVersion'
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres"
+ ddl: |-
+ SELECT
+ region,
+ json_extract_path_text(Properties, 'DocumentationVersion') as documentation_version,
+ json_extract_path_text(Properties, 'RestApiId') as rest_api_id
+ FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::ApiGateway::DocumentationVersion'
+ AND region = 'us-east-1'
+ domain_names:
+ name: domain_names
+ id: aws.apigateway.domain_names
+ x-cfn-schema-name: DomainName
+ x-cfn-type-name: AWS::ApiGateway::DomainName
+ x-identifiers:
+ - DomainName
+ x-type: cloud_control
+ methods:
+ create_resource:
+ config:
+ requestBodyTranslate:
+ algorithm: naive_DesiredState
+ operation:
+ $ref: '#/paths/~1?Action=CreateResource&Version=2021-09-30&__DomainName&__detailTransformed=true/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::ApiGateway::DomainName"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ update_resource:
+ operation:
+ $ref: '#/paths/~1?Action=UpdateResource&Version=2021-09-30/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::ApiGateway::DomainName"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ delete_resource:
+ operation:
+ $ref: '#/paths/~1?Action=DeleteResource&Version=2021-09-30/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::ApiGateway::DomainName"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ sqlVerbs:
+ insert:
+ - $ref: '#/components/x-stackQL-resources/domain_names/methods/create_resource'
+ delete:
+ - $ref: '#/components/x-stackQL-resources/domain_names/methods/delete_resource'
+ update:
+ - $ref: '#/components/x-stackQL-resources/domain_names/methods/update_resource'
+ config:
+ views:
+ select:
+ predicate: sqlDialect == "sqlite3" && requiredParams == [ data__Identifier ]
+ ddl: |-
+ SELECT
+ region,
+ data__Identifier,
+ JSON_EXTRACT(Properties, '$.MutualTlsAuthentication') as mutual_tls_authentication,
+ JSON_EXTRACT(Properties, '$.OwnershipVerificationCertificateArn') as ownership_verification_certificate_arn,
+ JSON_EXTRACT(Properties, '$.RegionalHostedZoneId') as regional_hosted_zone_id,
+ JSON_EXTRACT(Properties, '$.RegionalDomainName') as regional_domain_name,
+ JSON_EXTRACT(Properties, '$.DomainName') as domain_name,
+ JSON_EXTRACT(Properties, '$.SecurityPolicy') as security_policy,
+ JSON_EXTRACT(Properties, '$.DistributionHostedZoneId') as distribution_hosted_zone_id,
+ JSON_EXTRACT(Properties, '$.EndpointConfiguration') as endpoint_configuration,
+ JSON_EXTRACT(Properties, '$.DistributionDomainName') as distribution_domain_name,
+ JSON_EXTRACT(Properties, '$.RegionalCertificateArn') as regional_certificate_arn,
+ JSON_EXTRACT(Properties, '$.Tags') as tags,
+ JSON_EXTRACT(Properties, '$.CertificateArn') as certificate_arn
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::ApiGateway::DomainName'
+ AND data__Identifier = ''
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "sqlite3"
+ ddl: |-
+ SELECT
+ detail.region,
+ JSON_EXTRACT(detail.Properties, '$.MutualTlsAuthentication') as mutual_tls_authentication,
+ JSON_EXTRACT(detail.Properties, '$.OwnershipVerificationCertificateArn') as ownership_verification_certificate_arn,
+ JSON_EXTRACT(detail.Properties, '$.RegionalHostedZoneId') as regional_hosted_zone_id,
+ JSON_EXTRACT(detail.Properties, '$.RegionalDomainName') as regional_domain_name,
+ JSON_EXTRACT(detail.Properties, '$.DomainName') as domain_name,
+ JSON_EXTRACT(detail.Properties, '$.SecurityPolicy') as security_policy,
+ JSON_EXTRACT(detail.Properties, '$.DistributionHostedZoneId') as distribution_hosted_zone_id,
+ JSON_EXTRACT(detail.Properties, '$.EndpointConfiguration') as endpoint_configuration,
+ JSON_EXTRACT(detail.Properties, '$.DistributionDomainName') as distribution_domain_name,
+ JSON_EXTRACT(detail.Properties, '$.RegionalCertificateArn') as regional_certificate_arn,
+ JSON_EXTRACT(detail.Properties, '$.Tags') as tags,
+ JSON_EXTRACT(detail.Properties, '$.CertificateArn') as certificate_arn
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ WHERE listing.data__TypeName = 'AWS::ApiGateway::DomainName'
+ AND detail.data__TypeName = 'AWS::ApiGateway::DomainName'
+ AND listing.region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres" && requiredParams == [ data__Identifier ]
+ ddl: |-
+ SELECT
+ region,
+ data__Identifier,
+ json_extract_path_text(Properties, 'MutualTlsAuthentication') as mutual_tls_authentication,
+ json_extract_path_text(Properties, 'OwnershipVerificationCertificateArn') as ownership_verification_certificate_arn,
+ json_extract_path_text(Properties, 'RegionalHostedZoneId') as regional_hosted_zone_id,
+ json_extract_path_text(Properties, 'RegionalDomainName') as regional_domain_name,
+ json_extract_path_text(Properties, 'DomainName') as domain_name,
+ json_extract_path_text(Properties, 'SecurityPolicy') as security_policy,
+ json_extract_path_text(Properties, 'DistributionHostedZoneId') as distribution_hosted_zone_id,
+ json_extract_path_text(Properties, 'EndpointConfiguration') as endpoint_configuration,
+ json_extract_path_text(Properties, 'DistributionDomainName') as distribution_domain_name,
+ json_extract_path_text(Properties, 'RegionalCertificateArn') as regional_certificate_arn,
+ json_extract_path_text(Properties, 'Tags') as tags,
+ json_extract_path_text(Properties, 'CertificateArn') as certificate_arn
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::ApiGateway::DomainName'
+ AND data__Identifier = ''
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres"
+ ddl: |-
+ SELECT
+ detail.region,
+ json_extract_path_text(detail.Properties, 'MutualTlsAuthentication') as mutual_tls_authentication,
+ json_extract_path_text(detail.Properties, 'OwnershipVerificationCertificateArn') as ownership_verification_certificate_arn,
+ json_extract_path_text(detail.Properties, 'RegionalHostedZoneId') as regional_hosted_zone_id,
+ json_extract_path_text(detail.Properties, 'RegionalDomainName') as regional_domain_name,
+ json_extract_path_text(detail.Properties, 'DomainName') as domain_name,
+ json_extract_path_text(detail.Properties, 'SecurityPolicy') as security_policy,
+ json_extract_path_text(detail.Properties, 'DistributionHostedZoneId') as distribution_hosted_zone_id,
+ json_extract_path_text(detail.Properties, 'EndpointConfiguration') as endpoint_configuration,
+ json_extract_path_text(detail.Properties, 'DistributionDomainName') as distribution_domain_name,
+ json_extract_path_text(detail.Properties, 'RegionalCertificateArn') as regional_certificate_arn,
+ json_extract_path_text(detail.Properties, 'Tags') as tags,
+ json_extract_path_text(detail.Properties, 'CertificateArn') as certificate_arn
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ WHERE listing.data__TypeName = 'AWS::ApiGateway::DomainName'
+ AND detail.data__TypeName = 'AWS::ApiGateway::DomainName'
+ AND listing.region = 'us-east-1'
+ domain_names_list_only:
+ name: domain_names_list_only
+ id: aws.apigateway.domain_names_list_only
+ x-cfn-schema-name: DomainName
+ x-cfn-type-name: AWS::ApiGateway::DomainName
+ x-identifiers:
+ - DomainName
+ x-type: cloud_control_view
+ methods: {}
+ sqlVerbs:
+ insert: []
+ delete: []
+ update: []
+ config:
+ views:
+ select:
+ predicate: sqlDialect == "sqlite3"
+ ddl: |-
+ SELECT
+ region,
+ JSON_EXTRACT(Properties, '$.DomainName') as domain_name
+ FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::ApiGateway::DomainName'
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres"
+ ddl: |-
+ SELECT
+ region,
+ json_extract_path_text(Properties, 'DomainName') as domain_name
+ FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::ApiGateway::DomainName'
+ AND region = 'us-east-1'
+ domain_name_tags:
+ name: domain_name_tags
+ id: aws.apigateway.domain_name_tags
+ x-cfn-schema-name: DomainName
+ x-cfn-type-name: AWS::ApiGateway::DomainName
+ x-type: cloud_control_view
+ methods: {}
+ sqlVerbs:
+ insert: []
+ delete: []
+ update: []
+ config:
+ views:
+ select:
+ predicate: sqlDialect == "sqlite3"
+ ddl: |-
+ SELECT
+ detail.region,
+ JSON_EXTRACT(json_each.value, '$.Key') as tag_key,
+ JSON_EXTRACT(json_each.value, '$.Value') as tag_value,
+ JSON_EXTRACT(detail.Properties, '$.MutualTlsAuthentication') as mutual_tls_authentication,
+ JSON_EXTRACT(detail.Properties, '$.OwnershipVerificationCertificateArn') as ownership_verification_certificate_arn,
+ JSON_EXTRACT(detail.Properties, '$.RegionalHostedZoneId') as regional_hosted_zone_id,
+ JSON_EXTRACT(detail.Properties, '$.RegionalDomainName') as regional_domain_name,
+ JSON_EXTRACT(detail.Properties, '$.DomainName') as domain_name,
+ JSON_EXTRACT(detail.Properties, '$.SecurityPolicy') as security_policy,
+ JSON_EXTRACT(detail.Properties, '$.DistributionHostedZoneId') as distribution_hosted_zone_id,
+ JSON_EXTRACT(detail.Properties, '$.EndpointConfiguration') as endpoint_configuration,
+ JSON_EXTRACT(detail.Properties, '$.DistributionDomainName') as distribution_domain_name,
+ JSON_EXTRACT(detail.Properties, '$.RegionalCertificateArn') as regional_certificate_arn,
+ JSON_EXTRACT(detail.Properties, '$.CertificateArn') as certificate_arn
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ ,json_each(JSON_EXTRACT(detail.Properties, '$.Tags'))
+ WHERE listing.data__TypeName = 'AWS::ApiGateway::DomainName'
+ AND detail.data__TypeName = 'AWS::ApiGateway::DomainName'
+ AND listing.region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres"
+ ddl: |-
+ SELECT
+ detail.region,
+ json_extract_path_text(json_each.value, 'Key') as tag_key,
+ json_extract_path_text(json_each.value, 'Value') as tag_value,
+ json_extract_path_text(detail.Properties, 'MutualTlsAuthentication') as mutual_tls_authentication,
+ json_extract_path_text(detail.Properties, 'OwnershipVerificationCertificateArn') as ownership_verification_certificate_arn,
+ json_extract_path_text(detail.Properties, 'RegionalHostedZoneId') as regional_hosted_zone_id,
+ json_extract_path_text(detail.Properties, 'RegionalDomainName') as regional_domain_name,
+ json_extract_path_text(detail.Properties, 'DomainName') as domain_name,
+ json_extract_path_text(detail.Properties, 'SecurityPolicy') as security_policy,
+ json_extract_path_text(detail.Properties, 'DistributionHostedZoneId') as distribution_hosted_zone_id,
+ json_extract_path_text(detail.Properties, 'EndpointConfiguration') as endpoint_configuration,
+ json_extract_path_text(detail.Properties, 'DistributionDomainName') as distribution_domain_name,
+ json_extract_path_text(detail.Properties, 'RegionalCertificateArn') as regional_certificate_arn,
+ json_extract_path_text(detail.Properties, 'CertificateArn') as certificate_arn
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ ,json_array_elements_text(json_extract_path_text(detail.Properties, 'Tags'))
+ WHERE listing.data__TypeName = 'AWS::ApiGateway::DomainName'
+ AND detail.data__TypeName = 'AWS::ApiGateway::DomainName'
+ AND listing.region = 'us-east-1'
+ domain_name_access_associations:
+ name: domain_name_access_associations
+ id: aws.apigateway.domain_name_access_associations
+ x-cfn-schema-name: DomainNameAccessAssociation
+ x-cfn-type-name: AWS::ApiGateway::DomainNameAccessAssociation
+ x-identifiers:
+ - DomainNameAccessAssociationArn
+ x-type: cloud_control
+ methods:
+ create_resource:
+ config:
+ requestBodyTranslate:
+ algorithm: naive_DesiredState
+ operation:
+ $ref: '#/paths/~1?Action=CreateResource&Version=2021-09-30&__DomainNameAccessAssociation&__detailTransformed=true/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::ApiGateway::DomainNameAccessAssociation"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ delete_resource:
+ operation:
+ $ref: '#/paths/~1?Action=DeleteResource&Version=2021-09-30/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::ApiGateway::DomainNameAccessAssociation"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ sqlVerbs:
+ insert:
+ - $ref: '#/components/x-stackQL-resources/domain_name_access_associations/methods/create_resource'
+ delete:
+ - $ref: '#/components/x-stackQL-resources/domain_name_access_associations/methods/delete_resource'
+ update: []
+ config:
+ views:
+ select:
+ predicate: sqlDialect == "sqlite3" && requiredParams == [ data__Identifier ]
+ ddl: |-
+ SELECT
+ region,
+ data__Identifier,
+ JSON_EXTRACT(Properties, '$.DomainNameAccessAssociationArn') as domain_name_access_association_arn,
+ JSON_EXTRACT(Properties, '$.DomainNameArn') as domain_name_arn,
+ JSON_EXTRACT(Properties, '$.AccessAssociationSource') as access_association_source,
+ JSON_EXTRACT(Properties, '$.AccessAssociationSourceType') as access_association_source_type,
+ JSON_EXTRACT(Properties, '$.Tags') as tags
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::ApiGateway::DomainNameAccessAssociation'
+ AND data__Identifier = ''
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "sqlite3"
+ ddl: |-
+ SELECT
+ detail.region,
+ JSON_EXTRACT(detail.Properties, '$.DomainNameAccessAssociationArn') as domain_name_access_association_arn,
+ JSON_EXTRACT(detail.Properties, '$.DomainNameArn') as domain_name_arn,
+ JSON_EXTRACT(detail.Properties, '$.AccessAssociationSource') as access_association_source,
+ JSON_EXTRACT(detail.Properties, '$.AccessAssociationSourceType') as access_association_source_type,
+ JSON_EXTRACT(detail.Properties, '$.Tags') as tags
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ WHERE listing.data__TypeName = 'AWS::ApiGateway::DomainNameAccessAssociation'
+ AND detail.data__TypeName = 'AWS::ApiGateway::DomainNameAccessAssociation'
+ AND listing.region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres" && requiredParams == [ data__Identifier ]
+ ddl: |-
+ SELECT
+ region,
+ data__Identifier,
+ json_extract_path_text(Properties, 'DomainNameAccessAssociationArn') as domain_name_access_association_arn,
+ json_extract_path_text(Properties, 'DomainNameArn') as domain_name_arn,
+ json_extract_path_text(Properties, 'AccessAssociationSource') as access_association_source,
+ json_extract_path_text(Properties, 'AccessAssociationSourceType') as access_association_source_type,
+ json_extract_path_text(Properties, 'Tags') as tags
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::ApiGateway::DomainNameAccessAssociation'
+ AND data__Identifier = ''
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres"
+ ddl: |-
+ SELECT
+ detail.region,
+ json_extract_path_text(detail.Properties, 'DomainNameAccessAssociationArn') as domain_name_access_association_arn,
+ json_extract_path_text(detail.Properties, 'DomainNameArn') as domain_name_arn,
+ json_extract_path_text(detail.Properties, 'AccessAssociationSource') as access_association_source,
+ json_extract_path_text(detail.Properties, 'AccessAssociationSourceType') as access_association_source_type,
+ json_extract_path_text(detail.Properties, 'Tags') as tags
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ WHERE listing.data__TypeName = 'AWS::ApiGateway::DomainNameAccessAssociation'
+ AND detail.data__TypeName = 'AWS::ApiGateway::DomainNameAccessAssociation'
+ AND listing.region = 'us-east-1'
+ domain_name_access_associations_list_only:
+ name: domain_name_access_associations_list_only
+ id: aws.apigateway.domain_name_access_associations_list_only
+ x-cfn-schema-name: DomainNameAccessAssociation
+ x-cfn-type-name: AWS::ApiGateway::DomainNameAccessAssociation
+ x-identifiers:
+ - DomainNameAccessAssociationArn
+ x-type: cloud_control_view
+ methods: {}
+ sqlVerbs:
+ insert: []
+ delete: []
+ update: []
+ config:
+ views:
+ select:
+ predicate: sqlDialect == "sqlite3"
+ ddl: |-
+ SELECT
+ region,
+ JSON_EXTRACT(Properties, '$.DomainNameAccessAssociationArn') as domain_name_access_association_arn
+ FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::ApiGateway::DomainNameAccessAssociation'
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres"
+ ddl: |-
+ SELECT
+ region,
+ json_extract_path_text(Properties, 'DomainNameAccessAssociationArn') as domain_name_access_association_arn
+ FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::ApiGateway::DomainNameAccessAssociation'
+ AND region = 'us-east-1'
+ domain_name_access_association_tags:
+ name: domain_name_access_association_tags
+ id: aws.apigateway.domain_name_access_association_tags
+ x-cfn-schema-name: DomainNameAccessAssociation
+ x-cfn-type-name: AWS::ApiGateway::DomainNameAccessAssociation
+ x-type: cloud_control_view
+ methods: {}
+ sqlVerbs:
+ insert: []
+ delete: []
+ update: []
+ config:
+ views:
+ select:
+ predicate: sqlDialect == "sqlite3"
+ ddl: |-
+ SELECT
+ detail.region,
+ JSON_EXTRACT(json_each.value, '$.Key') as tag_key,
+ JSON_EXTRACT(json_each.value, '$.Value') as tag_value,
+ JSON_EXTRACT(detail.Properties, '$.DomainNameAccessAssociationArn') as domain_name_access_association_arn,
+ JSON_EXTRACT(detail.Properties, '$.DomainNameArn') as domain_name_arn,
+ JSON_EXTRACT(detail.Properties, '$.AccessAssociationSource') as access_association_source,
+ JSON_EXTRACT(detail.Properties, '$.AccessAssociationSourceType') as access_association_source_type
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ ,json_each(JSON_EXTRACT(detail.Properties, '$.Tags'))
+ WHERE listing.data__TypeName = 'AWS::ApiGateway::DomainNameAccessAssociation'
+ AND detail.data__TypeName = 'AWS::ApiGateway::DomainNameAccessAssociation'
+ AND listing.region = 'us-east-1'
fallback:
predicate: sqlDialect == "postgres"
ddl: |-
SELECT
- region,
- json_extract_path_text(Properties, 'DocumentationVersion') as documentation_version,
- json_extract_path_text(Properties, 'RestApiId') as rest_api_id
- FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::ApiGateway::DocumentationVersion'
- AND region = 'us-east-1'
- domain_names:
- name: domain_names
- id: aws.apigateway.domain_names
- x-cfn-schema-name: DomainName
- x-cfn-type-name: AWS::ApiGateway::DomainName
+ detail.region,
+ json_extract_path_text(json_each.value, 'Key') as tag_key,
+ json_extract_path_text(json_each.value, 'Value') as tag_value,
+ json_extract_path_text(detail.Properties, 'DomainNameAccessAssociationArn') as domain_name_access_association_arn,
+ json_extract_path_text(detail.Properties, 'DomainNameArn') as domain_name_arn,
+ json_extract_path_text(detail.Properties, 'AccessAssociationSource') as access_association_source,
+ json_extract_path_text(detail.Properties, 'AccessAssociationSourceType') as access_association_source_type
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ ,json_array_elements_text(json_extract_path_text(detail.Properties, 'Tags'))
+ WHERE listing.data__TypeName = 'AWS::ApiGateway::DomainNameAccessAssociation'
+ AND detail.data__TypeName = 'AWS::ApiGateway::DomainNameAccessAssociation'
+ AND listing.region = 'us-east-1'
+ domain_name_v2s:
+ name: domain_name_v2s
+ id: aws.apigateway.domain_name_v2s
+ x-cfn-schema-name: DomainNameV2
+ x-cfn-type-name: AWS::ApiGateway::DomainNameV2
x-identifiers:
- - DomainName
+ - DomainNameArn
x-type: cloud_control
methods:
create_resource:
@@ -4205,12 +5033,12 @@ components:
requestBodyTranslate:
algorithm: naive_DesiredState
operation:
- $ref: '#/paths/~1?Action=CreateResource&Version=2021-09-30&__DomainName&__detailTransformed=true/post'
+ $ref: '#/paths/~1?Action=CreateResource&Version=2021-09-30&__DomainNameV2&__detailTransformed=true/post'
request:
mediaType: application/x-amz-json-1.0
base: |-
{
- "TypeName": "AWS::ApiGateway::DomainName"
+ "TypeName": "AWS::ApiGateway::DomainNameV2"
}
response:
mediaType: application/json
@@ -4222,7 +5050,7 @@ components:
mediaType: application/x-amz-json-1.0
base: |-
{
- "TypeName": "AWS::ApiGateway::DomainName"
+ "TypeName": "AWS::ApiGateway::DomainNameV2"
}
response:
mediaType: application/json
@@ -4234,18 +5062,18 @@ components:
mediaType: application/x-amz-json-1.0
base: |-
{
- "TypeName": "AWS::ApiGateway::DomainName"
+ "TypeName": "AWS::ApiGateway::DomainNameV2"
}
response:
mediaType: application/json
openAPIDocKey: '200'
sqlVerbs:
insert:
- - $ref: '#/components/x-stackQL-resources/domain_names/methods/create_resource'
+ - $ref: '#/components/x-stackQL-resources/domain_name_v2s/methods/create_resource'
delete:
- - $ref: '#/components/x-stackQL-resources/domain_names/methods/delete_resource'
+ - $ref: '#/components/x-stackQL-resources/domain_name_v2s/methods/delete_resource'
update:
- - $ref: '#/components/x-stackQL-resources/domain_names/methods/update_resource'
+ - $ref: '#/components/x-stackQL-resources/domain_name_v2s/methods/update_resource'
config:
views:
select:
@@ -4254,44 +5082,36 @@ components:
SELECT
region,
data__Identifier,
+ JSON_EXTRACT(Properties, '$.CertificateArn') as certificate_arn,
JSON_EXTRACT(Properties, '$.DomainName') as domain_name,
- JSON_EXTRACT(Properties, '$.DistributionDomainName') as distribution_domain_name,
- JSON_EXTRACT(Properties, '$.DistributionHostedZoneId') as distribution_hosted_zone_id,
JSON_EXTRACT(Properties, '$.EndpointConfiguration') as endpoint_configuration,
- JSON_EXTRACT(Properties, '$.MutualTlsAuthentication') as mutual_tls_authentication,
- JSON_EXTRACT(Properties, '$.RegionalDomainName') as regional_domain_name,
- JSON_EXTRACT(Properties, '$.RegionalHostedZoneId') as regional_hosted_zone_id,
- JSON_EXTRACT(Properties, '$.CertificateArn') as certificate_arn,
- JSON_EXTRACT(Properties, '$.RegionalCertificateArn') as regional_certificate_arn,
- JSON_EXTRACT(Properties, '$.OwnershipVerificationCertificateArn') as ownership_verification_certificate_arn,
JSON_EXTRACT(Properties, '$.SecurityPolicy') as security_policy,
+ JSON_EXTRACT(Properties, '$.Policy') as policy,
+ JSON_EXTRACT(Properties, '$.DomainNameId') as domain_name_id,
+ JSON_EXTRACT(Properties, '$.DomainNameArn') as domain_name_arn,
JSON_EXTRACT(Properties, '$.Tags') as tags
- FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::ApiGateway::DomainName'
- AND data__Identifier = ''
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::ApiGateway::DomainNameV2'
+ AND data__Identifier = ''
AND region = 'us-east-1'
fallback:
predicate: sqlDialect == "sqlite3"
ddl: |-
SELECT
detail.region,
+ JSON_EXTRACT(detail.Properties, '$.CertificateArn') as certificate_arn,
JSON_EXTRACT(detail.Properties, '$.DomainName') as domain_name,
- JSON_EXTRACT(detail.Properties, '$.DistributionDomainName') as distribution_domain_name,
- JSON_EXTRACT(detail.Properties, '$.DistributionHostedZoneId') as distribution_hosted_zone_id,
JSON_EXTRACT(detail.Properties, '$.EndpointConfiguration') as endpoint_configuration,
- JSON_EXTRACT(detail.Properties, '$.MutualTlsAuthentication') as mutual_tls_authentication,
- JSON_EXTRACT(detail.Properties, '$.RegionalDomainName') as regional_domain_name,
- JSON_EXTRACT(detail.Properties, '$.RegionalHostedZoneId') as regional_hosted_zone_id,
- JSON_EXTRACT(detail.Properties, '$.CertificateArn') as certificate_arn,
- JSON_EXTRACT(detail.Properties, '$.RegionalCertificateArn') as regional_certificate_arn,
- JSON_EXTRACT(detail.Properties, '$.OwnershipVerificationCertificateArn') as ownership_verification_certificate_arn,
JSON_EXTRACT(detail.Properties, '$.SecurityPolicy') as security_policy,
+ JSON_EXTRACT(detail.Properties, '$.Policy') as policy,
+ JSON_EXTRACT(detail.Properties, '$.DomainNameId') as domain_name_id,
+ JSON_EXTRACT(detail.Properties, '$.DomainNameArn') as domain_name_arn,
JSON_EXTRACT(detail.Properties, '$.Tags') as tags
FROM aws.cloud_control.resources listing
LEFT OUTER JOIN aws.cloud_control.resource detail
ON detail.data__Identifier = listing.Identifier
AND detail.region = listing.region
- WHERE listing.data__TypeName = 'AWS::ApiGateway::DomainName'
- AND detail.data__TypeName = 'AWS::ApiGateway::DomainName'
+ WHERE listing.data__TypeName = 'AWS::ApiGateway::DomainNameV2'
+ AND detail.data__TypeName = 'AWS::ApiGateway::DomainNameV2'
AND listing.region = 'us-east-1'
fallback:
predicate: sqlDialect == "postgres" && requiredParams == [ data__Identifier ]
@@ -4299,52 +5119,44 @@ components:
SELECT
region,
data__Identifier,
+ json_extract_path_text(Properties, 'CertificateArn') as certificate_arn,
json_extract_path_text(Properties, 'DomainName') as domain_name,
- json_extract_path_text(Properties, 'DistributionDomainName') as distribution_domain_name,
- json_extract_path_text(Properties, 'DistributionHostedZoneId') as distribution_hosted_zone_id,
json_extract_path_text(Properties, 'EndpointConfiguration') as endpoint_configuration,
- json_extract_path_text(Properties, 'MutualTlsAuthentication') as mutual_tls_authentication,
- json_extract_path_text(Properties, 'RegionalDomainName') as regional_domain_name,
- json_extract_path_text(Properties, 'RegionalHostedZoneId') as regional_hosted_zone_id,
- json_extract_path_text(Properties, 'CertificateArn') as certificate_arn,
- json_extract_path_text(Properties, 'RegionalCertificateArn') as regional_certificate_arn,
- json_extract_path_text(Properties, 'OwnershipVerificationCertificateArn') as ownership_verification_certificate_arn,
json_extract_path_text(Properties, 'SecurityPolicy') as security_policy,
+ json_extract_path_text(Properties, 'Policy') as policy,
+ json_extract_path_text(Properties, 'DomainNameId') as domain_name_id,
+ json_extract_path_text(Properties, 'DomainNameArn') as domain_name_arn,
json_extract_path_text(Properties, 'Tags') as tags
- FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::ApiGateway::DomainName'
- AND data__Identifier = ''
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::ApiGateway::DomainNameV2'
+ AND data__Identifier = ''
AND region = 'us-east-1'
fallback:
predicate: sqlDialect == "postgres"
ddl: |-
SELECT
detail.region,
+ json_extract_path_text(detail.Properties, 'CertificateArn') as certificate_arn,
json_extract_path_text(detail.Properties, 'DomainName') as domain_name,
- json_extract_path_text(detail.Properties, 'DistributionDomainName') as distribution_domain_name,
- json_extract_path_text(detail.Properties, 'DistributionHostedZoneId') as distribution_hosted_zone_id,
json_extract_path_text(detail.Properties, 'EndpointConfiguration') as endpoint_configuration,
- json_extract_path_text(detail.Properties, 'MutualTlsAuthentication') as mutual_tls_authentication,
- json_extract_path_text(detail.Properties, 'RegionalDomainName') as regional_domain_name,
- json_extract_path_text(detail.Properties, 'RegionalHostedZoneId') as regional_hosted_zone_id,
- json_extract_path_text(detail.Properties, 'CertificateArn') as certificate_arn,
- json_extract_path_text(detail.Properties, 'RegionalCertificateArn') as regional_certificate_arn,
- json_extract_path_text(detail.Properties, 'OwnershipVerificationCertificateArn') as ownership_verification_certificate_arn,
json_extract_path_text(detail.Properties, 'SecurityPolicy') as security_policy,
+ json_extract_path_text(detail.Properties, 'Policy') as policy,
+ json_extract_path_text(detail.Properties, 'DomainNameId') as domain_name_id,
+ json_extract_path_text(detail.Properties, 'DomainNameArn') as domain_name_arn,
json_extract_path_text(detail.Properties, 'Tags') as tags
FROM aws.cloud_control.resources listing
LEFT OUTER JOIN aws.cloud_control.resource detail
ON detail.data__Identifier = listing.Identifier
AND detail.region = listing.region
- WHERE listing.data__TypeName = 'AWS::ApiGateway::DomainName'
- AND detail.data__TypeName = 'AWS::ApiGateway::DomainName'
+ WHERE listing.data__TypeName = 'AWS::ApiGateway::DomainNameV2'
+ AND detail.data__TypeName = 'AWS::ApiGateway::DomainNameV2'
AND listing.region = 'us-east-1'
- domain_names_list_only:
- name: domain_names_list_only
- id: aws.apigateway.domain_names_list_only
- x-cfn-schema-name: DomainName
- x-cfn-type-name: AWS::ApiGateway::DomainName
+ domain_name_v2s_list_only:
+ name: domain_name_v2s_list_only
+ id: aws.apigateway.domain_name_v2s_list_only
+ x-cfn-schema-name: DomainNameV2
+ x-cfn-type-name: AWS::ApiGateway::DomainNameV2
x-identifiers:
- - DomainName
+ - DomainNameArn
x-type: cloud_control_view
methods: {}
sqlVerbs:
@@ -4358,22 +5170,22 @@ components:
ddl: |-
SELECT
region,
- JSON_EXTRACT(Properties, '$.DomainName') as domain_name
- FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::ApiGateway::DomainName'
+ JSON_EXTRACT(Properties, '$.DomainNameArn') as domain_name_arn
+ FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::ApiGateway::DomainNameV2'
AND region = 'us-east-1'
fallback:
predicate: sqlDialect == "postgres"
ddl: |-
SELECT
region,
- json_extract_path_text(Properties, 'DomainName') as domain_name
- FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::ApiGateway::DomainName'
+ json_extract_path_text(Properties, 'DomainNameArn') as domain_name_arn
+ FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::ApiGateway::DomainNameV2'
AND region = 'us-east-1'
- domain_name_tags:
- name: domain_name_tags
- id: aws.apigateway.domain_name_tags
- x-cfn-schema-name: DomainName
- x-cfn-type-name: AWS::ApiGateway::DomainName
+ domain_name_v2_tags:
+ name: domain_name_v2_tags
+ id: aws.apigateway.domain_name_v2_tags
+ x-cfn-schema-name: DomainNameV2
+ x-cfn-type-name: AWS::ApiGateway::DomainNameV2
x-type: cloud_control_view
methods: {}
sqlVerbs:
@@ -4389,24 +5201,20 @@ components:
detail.region,
JSON_EXTRACT(json_each.value, '$.Key') as tag_key,
JSON_EXTRACT(json_each.value, '$.Value') as tag_value,
+ JSON_EXTRACT(detail.Properties, '$.CertificateArn') as certificate_arn,
JSON_EXTRACT(detail.Properties, '$.DomainName') as domain_name,
- JSON_EXTRACT(detail.Properties, '$.DistributionDomainName') as distribution_domain_name,
- JSON_EXTRACT(detail.Properties, '$.DistributionHostedZoneId') as distribution_hosted_zone_id,
JSON_EXTRACT(detail.Properties, '$.EndpointConfiguration') as endpoint_configuration,
- JSON_EXTRACT(detail.Properties, '$.MutualTlsAuthentication') as mutual_tls_authentication,
- JSON_EXTRACT(detail.Properties, '$.RegionalDomainName') as regional_domain_name,
- JSON_EXTRACT(detail.Properties, '$.RegionalHostedZoneId') as regional_hosted_zone_id,
- JSON_EXTRACT(detail.Properties, '$.CertificateArn') as certificate_arn,
- JSON_EXTRACT(detail.Properties, '$.RegionalCertificateArn') as regional_certificate_arn,
- JSON_EXTRACT(detail.Properties, '$.OwnershipVerificationCertificateArn') as ownership_verification_certificate_arn,
- JSON_EXTRACT(detail.Properties, '$.SecurityPolicy') as security_policy
+ JSON_EXTRACT(detail.Properties, '$.SecurityPolicy') as security_policy,
+ JSON_EXTRACT(detail.Properties, '$.Policy') as policy,
+ JSON_EXTRACT(detail.Properties, '$.DomainNameId') as domain_name_id,
+ JSON_EXTRACT(detail.Properties, '$.DomainNameArn') as domain_name_arn
FROM aws.cloud_control.resources listing
LEFT OUTER JOIN aws.cloud_control.resource detail
ON detail.data__Identifier = listing.Identifier
AND detail.region = listing.region
,json_each(JSON_EXTRACT(detail.Properties, '$.Tags'))
- WHERE listing.data__TypeName = 'AWS::ApiGateway::DomainName'
- AND detail.data__TypeName = 'AWS::ApiGateway::DomainName'
+ WHERE listing.data__TypeName = 'AWS::ApiGateway::DomainNameV2'
+ AND detail.data__TypeName = 'AWS::ApiGateway::DomainNameV2'
AND listing.region = 'us-east-1'
fallback:
predicate: sqlDialect == "postgres"
@@ -4415,24 +5223,20 @@ components:
detail.region,
json_extract_path_text(json_each.value, 'Key') as tag_key,
json_extract_path_text(json_each.value, 'Value') as tag_value,
+ json_extract_path_text(detail.Properties, 'CertificateArn') as certificate_arn,
json_extract_path_text(detail.Properties, 'DomainName') as domain_name,
- json_extract_path_text(detail.Properties, 'DistributionDomainName') as distribution_domain_name,
- json_extract_path_text(detail.Properties, 'DistributionHostedZoneId') as distribution_hosted_zone_id,
json_extract_path_text(detail.Properties, 'EndpointConfiguration') as endpoint_configuration,
- json_extract_path_text(detail.Properties, 'MutualTlsAuthentication') as mutual_tls_authentication,
- json_extract_path_text(detail.Properties, 'RegionalDomainName') as regional_domain_name,
- json_extract_path_text(detail.Properties, 'RegionalHostedZoneId') as regional_hosted_zone_id,
- json_extract_path_text(detail.Properties, 'CertificateArn') as certificate_arn,
- json_extract_path_text(detail.Properties, 'RegionalCertificateArn') as regional_certificate_arn,
- json_extract_path_text(detail.Properties, 'OwnershipVerificationCertificateArn') as ownership_verification_certificate_arn,
- json_extract_path_text(detail.Properties, 'SecurityPolicy') as security_policy
+ json_extract_path_text(detail.Properties, 'SecurityPolicy') as security_policy,
+ json_extract_path_text(detail.Properties, 'Policy') as policy,
+ json_extract_path_text(detail.Properties, 'DomainNameId') as domain_name_id,
+ json_extract_path_text(detail.Properties, 'DomainNameArn') as domain_name_arn
FROM aws.cloud_control.resources listing
LEFT OUTER JOIN aws.cloud_control.resource detail
ON detail.data__Identifier = listing.Identifier
AND detail.region = listing.region
,json_array_elements_text(json_extract_path_text(detail.Properties, 'Tags'))
- WHERE listing.data__TypeName = 'AWS::ApiGateway::DomainName'
- AND detail.data__TypeName = 'AWS::ApiGateway::DomainName'
+ WHERE listing.data__TypeName = 'AWS::ApiGateway::DomainNameV2'
+ AND detail.data__TypeName = 'AWS::ApiGateway::DomainNameV2'
AND listing.region = 'us-east-1'
gateway_responses:
name: gateway_responses
@@ -6539,6 +7343,48 @@ paths:
schema:
$ref: '#/components/x-cloud-control-schemas/ProgressEvent'
description: Success
+ /?Action=CreateResource&Version=2021-09-30&__BasePathMappingV2&__detailTransformed=true:
+ parameters:
+ - $ref: '#/components/parameters/X-Amz-Content-Sha256'
+ - $ref: '#/components/parameters/X-Amz-Date'
+ - $ref: '#/components/parameters/X-Amz-Algorithm'
+ - $ref: '#/components/parameters/X-Amz-Credential'
+ - $ref: '#/components/parameters/X-Amz-Security-Token'
+ - $ref: '#/components/parameters/X-Amz-Signature'
+ - $ref: '#/components/parameters/X-Amz-SignedHeaders'
+ post:
+ operationId: CreateBasePathMappingV2
+ parameters:
+ - description: Action Header
+ in: header
+ name: X-Amz-Target
+ required: false
+ schema:
+ default: CloudApiService.CreateResource
+ enum:
+ - CloudApiService.CreateResource
+ type: string
+ - in: header
+ name: Content-Type
+ required: false
+ schema:
+ default: application/x-amz-json-1.0
+ enum:
+ - application/x-amz-json-1.0
+ type: string
+ requestBody:
+ content:
+ application/x-amz-json-1.0:
+ schema:
+ $ref: '#/components/schemas/CreateBasePathMappingV2Request'
+ required: true
+ responses:
+ '200':
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/x-cloud-control-schemas/ProgressEvent'
+ description: Success
/?Action=CreateResource&Version=2021-09-30&__ClientCertificate&__detailTransformed=true:
parameters:
- $ref: '#/components/parameters/X-Amz-Content-Sha256'
@@ -6749,6 +7595,90 @@ paths:
schema:
$ref: '#/components/x-cloud-control-schemas/ProgressEvent'
description: Success
+ /?Action=CreateResource&Version=2021-09-30&__DomainNameAccessAssociation&__detailTransformed=true:
+ parameters:
+ - $ref: '#/components/parameters/X-Amz-Content-Sha256'
+ - $ref: '#/components/parameters/X-Amz-Date'
+ - $ref: '#/components/parameters/X-Amz-Algorithm'
+ - $ref: '#/components/parameters/X-Amz-Credential'
+ - $ref: '#/components/parameters/X-Amz-Security-Token'
+ - $ref: '#/components/parameters/X-Amz-Signature'
+ - $ref: '#/components/parameters/X-Amz-SignedHeaders'
+ post:
+ operationId: CreateDomainNameAccessAssociation
+ parameters:
+ - description: Action Header
+ in: header
+ name: X-Amz-Target
+ required: false
+ schema:
+ default: CloudApiService.CreateResource
+ enum:
+ - CloudApiService.CreateResource
+ type: string
+ - in: header
+ name: Content-Type
+ required: false
+ schema:
+ default: application/x-amz-json-1.0
+ enum:
+ - application/x-amz-json-1.0
+ type: string
+ requestBody:
+ content:
+ application/x-amz-json-1.0:
+ schema:
+ $ref: '#/components/schemas/CreateDomainNameAccessAssociationRequest'
+ required: true
+ responses:
+ '200':
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/x-cloud-control-schemas/ProgressEvent'
+ description: Success
+ /?Action=CreateResource&Version=2021-09-30&__DomainNameV2&__detailTransformed=true:
+ parameters:
+ - $ref: '#/components/parameters/X-Amz-Content-Sha256'
+ - $ref: '#/components/parameters/X-Amz-Date'
+ - $ref: '#/components/parameters/X-Amz-Algorithm'
+ - $ref: '#/components/parameters/X-Amz-Credential'
+ - $ref: '#/components/parameters/X-Amz-Security-Token'
+ - $ref: '#/components/parameters/X-Amz-Signature'
+ - $ref: '#/components/parameters/X-Amz-SignedHeaders'
+ post:
+ operationId: CreateDomainNameV2
+ parameters:
+ - description: Action Header
+ in: header
+ name: X-Amz-Target
+ required: false
+ schema:
+ default: CloudApiService.CreateResource
+ enum:
+ - CloudApiService.CreateResource
+ type: string
+ - in: header
+ name: Content-Type
+ required: false
+ schema:
+ default: application/x-amz-json-1.0
+ enum:
+ - application/x-amz-json-1.0
+ type: string
+ requestBody:
+ content:
+ application/x-amz-json-1.0:
+ schema:
+ $ref: '#/components/schemas/CreateDomainNameV2Request'
+ required: true
+ responses:
+ '200':
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/x-cloud-control-schemas/ProgressEvent'
+ description: Success
/?Action=CreateResource&Version=2021-09-30&__GatewayResponse&__detailTransformed=true:
parameters:
- $ref: '#/components/parameters/X-Amz-Content-Sha256'
diff --git a/providers/src/aws/v00.00.00000/services/apigatewayv2.yaml b/providers/src/aws/v00.00.00000/services/apigatewayv2.yaml
index 2e2e5115..c862417e 100644
--- a/providers/src/aws/v00.00.00000/services/apigatewayv2.yaml
+++ b/providers/src/aws/v00.00.00000/services/apigatewayv2.yaml
@@ -794,7 +794,7 @@ components:
description: An AWS-managed certificate that will be used by the edge-optimized endpoint for this domain name. AWS Certificate Manager is the only supported source.
description: |-
The ``DomainNameConfiguration`` property type specifies the configuration for an API's domain name.
- ``DomainNameConfiguration`` is a property of the [AWS::ApiGatewayV2::DomainName](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-domainname.html) resource.
+ ``DomainNameConfiguration`` is a property of the [AWS::ApiGatewayV2::DomainName](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-domainname.html) resource.
DomainName:
type: object
properties:
@@ -808,7 +808,7 @@ components:
description: ''
type: string
DomainName:
- description: The custom domain name for your API in Amazon API Gateway. Uppercase letters are not supported.
+ description: The custom domain name for your API in Amazon API Gateway. Uppercase letters and the underscore (``_``) character are not supported.
type: string
DomainNameConfigurations:
description: The domain name configurations.
@@ -861,6 +861,156 @@ components:
- apigateway:DELETE
list:
- apigateway:GET
+ ResponseParameter:
+ description: response parameter
+ type: object
+ additionalProperties: false
+ properties:
+ Destination:
+ type: string
+ Source:
+ type: string
+ ResponseParameterList:
+ description: list of response parameters
+ type: array
+ items:
+ $ref: '#/components/schemas/ResponseParameter'
+ ResponseParameterMap:
+ description: map of response parameter lists
+ type: object
+ additionalProperties: false
+ properties:
+ ResponseParameters:
+ $ref: '#/components/schemas/ResponseParameterList'
+ TlsConfig:
+ description: The TlsConfig property specifies the TLS configuration for a private integration. Supported only for HTTP APIs.
+ type: object
+ additionalProperties: false
+ properties:
+ ServerNameToVerify:
+ type: string
+ Tag:
+ description: A key-value pair to associate with a resource.
+ type: object
+ additionalProperties: false
+ properties:
+ Key:
+ type: string
+ description: 'The key name of the tag. You can specify a value that is 1 to 128 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -.'
+ minLength: 1
+ maxLength: 128
+ Value:
+ type: string
+ description: 'The value for the tag. You can specify a value that is 0 to 256 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -.'
+ minLength: 0
+ maxLength: 256
+ required:
+ - Key
+ - Value
+ Integration:
+ type: object
+ properties:
+ ApiId:
+ description: The API identifier.
+ type: string
+ ConnectionId:
+ description: The ID of the VPC link for a private integration. Supported only for HTTP APIs.
+ type: string
+ ConnectionType:
+ description: The type of the network connection to the integration endpoint. Specify INTERNET for connections through the public routable internet or VPC_LINK for private connections between API Gateway and resources in a VPC. The default value is INTERNET.
+ type: string
+ ContentHandlingStrategy:
+ description: Supported only for WebSocket APIs. Specifies how to handle response payload content type conversions. Supported values are CONVERT_TO_BINARY and CONVERT_TO_TEXT.
+ type: string
+ CredentialsArn:
+ description: Specifies the credentials required for the integration, if any. For AWS integrations, three options are available. To specify an IAM Role for API Gateway to assume, use the role's Amazon Resource Name (ARN). To require that the caller's identity be passed through from the request, specify the string arn:aws:iam::*:user/*. To use resource-based permissions on supported AWS services, don't specify this parameter.
+ type: string
+ Description:
+ description: The description of the integration.
+ type: string
+ IntegrationMethod:
+ description: Specifies the integration's HTTP method type.
+ type: string
+ IntegrationSubtype:
+ description: Supported only for HTTP API AWS_PROXY integrations. Specifies the AWS service action to invoke.
+ type: string
+ IntegrationId:
+ description: The integration ID.
+ type: string
+ IntegrationType:
+ description: The integration type of an integration.
+ type: string
+ IntegrationUri:
+ description: For a Lambda integration, specify the URI of a Lambda function. For an HTTP integration, specify a fully-qualified URL. For an HTTP API private integration, specify the ARN of an Application Load Balancer listener, Network Load Balancer listener, or AWS Cloud Map service.
+ type: string
+ PassthroughBehavior:
+ description: 'Specifies the pass-through behavior for incoming requests based on the Content-Type header in the request, and the available mapping templates specified as the requestTemplates property on the Integration resource. There are three valid values: WHEN_NO_MATCH, WHEN_NO_TEMPLATES, and NEVER. Supported only for WebSocket APIs.'
+ type: string
+ PayloadFormatVersion:
+ description: Specifies the format of the payload sent to an integration. Required for HTTP APIs. For HTTP APIs, supported values for Lambda proxy integrations are 1.0 and 2.0 For all other integrations, 1.0 is the only supported value.
+ type: string
+ RequestParameters:
+ description: A key-value map specifying parameters.
+ type: object
+ additionalProperties: false
+ x-patternProperties:
+ '[a-zA-Z0-9]+':
+ type: string
+ RequestTemplates:
+ description: A map of Velocity templates that are applied on the request payload based on the value of the Content-Type header sent by the client.
+ type: object
+ additionalProperties: false
+ x-patternProperties:
+ '[a-zA-Z0-9]+':
+ type: string
+ ResponseParameters:
+ description: Parameters that transform the HTTP response from a backend integration before returning the response to clients. Supported only for HTTP APIs.
+ type: object
+ additionalProperties: false
+ x-patternProperties:
+ '[a-zA-Z0-9]+':
+ $ref: '#/components/schemas/ResponseParameterMap'
+ TemplateSelectionExpression:
+ description: The template selection expression for the integration. Supported only for WebSocket APIs.
+ type: string
+ TimeoutInMillis:
+ description: Custom timeout between 50 and 29000 milliseconds for WebSocket APIs and between 50 and 30000 milliseconds for HTTP APIs. The default timeout is 29 seconds for WebSocket APIs and 30 seconds for HTTP APIs.
+ type: integer
+ TlsConfig:
+ description: The TLS configuration for a private integration. If you specify a TLS configuration, private integration traffic uses the HTTPS protocol. Supported only for HTTP APIs.
+ $ref: '#/components/schemas/TlsConfig'
+ required:
+ - ApiId
+ - IntegrationType
+ x-stackql-resource-name: integration
+ description: An example resource schema demonstrating some basic constructs and validation rules.
+ x-type-name: AWS::ApiGatewayV2::Integration
+ x-stackql-primary-identifier:
+ - ApiId
+ - IntegrationId
+ x-create-only-properties:
+ - ApiId
+ x-read-only-properties:
+ - IntegrationId
+ x-required-properties:
+ - ApiId
+ - IntegrationType
+ x-tagging:
+ taggable: false
+ x-required-permissions:
+ create:
+ - apigateway:POST
+ update:
+ - apigateway:PATCH
+ - apigateway:GET
+ - apigateway:PUT
+ read:
+ - apigateway:GET
+ delete:
+ - apigateway:GET
+ - apigateway:DELETE
+ list:
+ - apigateway:GET
IntegrationResponse:
type: object
properties:
@@ -1452,7 +1602,7 @@ components:
description: ''
type: string
DomainName:
- description: The custom domain name for your API in Amazon API Gateway. Uppercase letters are not supported.
+ description: The custom domain name for your API in Amazon API Gateway. Uppercase letters and the underscore (``_``) character are not supported.
type: string
DomainNameConfigurations:
description: The domain name configurations.
@@ -1471,6 +1621,92 @@ components:
x-title: CreateDomainNameRequest
type: object
required: []
+ CreateIntegrationRequest:
+ properties:
+ ClientToken:
+ type: string
+ RoleArn:
+ type: string
+ TypeName:
+ type: string
+ TypeVersionId:
+ type: string
+ DesiredState:
+ type: object
+ properties:
+ ApiId:
+ description: The API identifier.
+ type: string
+ ConnectionId:
+ description: The ID of the VPC link for a private integration. Supported only for HTTP APIs.
+ type: string
+ ConnectionType:
+ description: The type of the network connection to the integration endpoint. Specify INTERNET for connections through the public routable internet or VPC_LINK for private connections between API Gateway and resources in a VPC. The default value is INTERNET.
+ type: string
+ ContentHandlingStrategy:
+ description: Supported only for WebSocket APIs. Specifies how to handle response payload content type conversions. Supported values are CONVERT_TO_BINARY and CONVERT_TO_TEXT.
+ type: string
+ CredentialsArn:
+ description: Specifies the credentials required for the integration, if any. For AWS integrations, three options are available. To specify an IAM Role for API Gateway to assume, use the role's Amazon Resource Name (ARN). To require that the caller's identity be passed through from the request, specify the string arn:aws:iam::*:user/*. To use resource-based permissions on supported AWS services, don't specify this parameter.
+ type: string
+ Description:
+ description: The description of the integration.
+ type: string
+ IntegrationMethod:
+ description: Specifies the integration's HTTP method type.
+ type: string
+ IntegrationSubtype:
+ description: Supported only for HTTP API AWS_PROXY integrations. Specifies the AWS service action to invoke.
+ type: string
+ IntegrationId:
+ description: The integration ID.
+ type: string
+ IntegrationType:
+ description: The integration type of an integration.
+ type: string
+ IntegrationUri:
+ description: For a Lambda integration, specify the URI of a Lambda function. For an HTTP integration, specify a fully-qualified URL. For an HTTP API private integration, specify the ARN of an Application Load Balancer listener, Network Load Balancer listener, or AWS Cloud Map service.
+ type: string
+ PassthroughBehavior:
+ description: 'Specifies the pass-through behavior for incoming requests based on the Content-Type header in the request, and the available mapping templates specified as the requestTemplates property on the Integration resource. There are three valid values: WHEN_NO_MATCH, WHEN_NO_TEMPLATES, and NEVER. Supported only for WebSocket APIs.'
+ type: string
+ PayloadFormatVersion:
+ description: Specifies the format of the payload sent to an integration. Required for HTTP APIs. For HTTP APIs, supported values for Lambda proxy integrations are 1.0 and 2.0 For all other integrations, 1.0 is the only supported value.
+ type: string
+ RequestParameters:
+ description: A key-value map specifying parameters.
+ type: object
+ additionalProperties: false
+ x-patternProperties:
+ '[a-zA-Z0-9]+':
+ type: string
+ RequestTemplates:
+ description: A map of Velocity templates that are applied on the request payload based on the value of the Content-Type header sent by the client.
+ type: object
+ additionalProperties: false
+ x-patternProperties:
+ '[a-zA-Z0-9]+':
+ type: string
+ ResponseParameters:
+ description: Parameters that transform the HTTP response from a backend integration before returning the response to clients. Supported only for HTTP APIs.
+ type: object
+ additionalProperties: false
+ x-patternProperties:
+ '[a-zA-Z0-9]+':
+ $ref: '#/components/schemas/ResponseParameterMap'
+ TemplateSelectionExpression:
+ description: The template selection expression for the integration. Supported only for WebSocket APIs.
+ type: string
+ TimeoutInMillis:
+ description: Custom timeout between 50 and 29000 milliseconds for WebSocket APIs and between 50 and 30000 milliseconds for HTTP APIs. The default timeout is 29 seconds for WebSocket APIs and 30 seconds for HTTP APIs.
+ type: integer
+ TlsConfig:
+ description: The TLS configuration for a private integration. If you specify a TLS configuration, private integration traffic uses the HTTPS protocol. Supported only for HTTP APIs.
+ $ref: '#/components/schemas/TlsConfig'
+ x-stackQL-stringOnly: true
+ x-title: CreateIntegrationRequest
+ type: object
+ required: []
CreateIntegrationResponseRequest:
properties:
ClientToken:
@@ -2680,6 +2916,216 @@ components:
WHERE listing.data__TypeName = 'AWS::ApiGatewayV2::DomainName'
AND detail.data__TypeName = 'AWS::ApiGatewayV2::DomainName'
AND listing.region = 'us-east-1'
+ integrations:
+ name: integrations
+ id: aws.apigatewayv2.integrations
+ x-cfn-schema-name: Integration
+ x-cfn-type-name: AWS::ApiGatewayV2::Integration
+ x-identifiers:
+ - ApiId
+ - IntegrationId
+ x-type: cloud_control
+ methods:
+ create_resource:
+ config:
+ requestBodyTranslate:
+ algorithm: naive_DesiredState
+ operation:
+ $ref: '#/paths/~1?Action=CreateResource&Version=2021-09-30&__Integration&__detailTransformed=true/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::ApiGatewayV2::Integration"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ update_resource:
+ operation:
+ $ref: '#/paths/~1?Action=UpdateResource&Version=2021-09-30/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::ApiGatewayV2::Integration"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ delete_resource:
+ operation:
+ $ref: '#/paths/~1?Action=DeleteResource&Version=2021-09-30/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::ApiGatewayV2::Integration"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ sqlVerbs:
+ insert:
+ - $ref: '#/components/x-stackQL-resources/integrations/methods/create_resource'
+ delete:
+ - $ref: '#/components/x-stackQL-resources/integrations/methods/delete_resource'
+ update:
+ - $ref: '#/components/x-stackQL-resources/integrations/methods/update_resource'
+ config:
+ views:
+ select:
+ predicate: sqlDialect == "sqlite3" && requiredParams == [ data__Identifier ]
+ ddl: |-
+ SELECT
+ region,
+ data__Identifier,
+ JSON_EXTRACT(Properties, '$.ApiId') as api_id,
+ JSON_EXTRACT(Properties, '$.ConnectionId') as connection_id,
+ JSON_EXTRACT(Properties, '$.ConnectionType') as connection_type,
+ JSON_EXTRACT(Properties, '$.ContentHandlingStrategy') as content_handling_strategy,
+ JSON_EXTRACT(Properties, '$.CredentialsArn') as credentials_arn,
+ JSON_EXTRACT(Properties, '$.Description') as description,
+ JSON_EXTRACT(Properties, '$.IntegrationMethod') as integration_method,
+ JSON_EXTRACT(Properties, '$.IntegrationSubtype') as integration_subtype,
+ JSON_EXTRACT(Properties, '$.IntegrationId') as integration_id,
+ JSON_EXTRACT(Properties, '$.IntegrationType') as integration_type,
+ JSON_EXTRACT(Properties, '$.IntegrationUri') as integration_uri,
+ JSON_EXTRACT(Properties, '$.PassthroughBehavior') as passthrough_behavior,
+ JSON_EXTRACT(Properties, '$.PayloadFormatVersion') as payload_format_version,
+ JSON_EXTRACT(Properties, '$.RequestParameters') as request_parameters,
+ JSON_EXTRACT(Properties, '$.RequestTemplates') as request_templates,
+ JSON_EXTRACT(Properties, '$.ResponseParameters') as response_parameters,
+ JSON_EXTRACT(Properties, '$.TemplateSelectionExpression') as template_selection_expression,
+ JSON_EXTRACT(Properties, '$.TimeoutInMillis') as timeout_in_millis,
+ JSON_EXTRACT(Properties, '$.TlsConfig') as tls_config
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::ApiGatewayV2::Integration'
+ AND data__Identifier = '|'
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "sqlite3"
+ ddl: |-
+ SELECT
+ detail.region,
+ JSON_EXTRACT(detail.Properties, '$.ApiId') as api_id,
+ JSON_EXTRACT(detail.Properties, '$.ConnectionId') as connection_id,
+ JSON_EXTRACT(detail.Properties, '$.ConnectionType') as connection_type,
+ JSON_EXTRACT(detail.Properties, '$.ContentHandlingStrategy') as content_handling_strategy,
+ JSON_EXTRACT(detail.Properties, '$.CredentialsArn') as credentials_arn,
+ JSON_EXTRACT(detail.Properties, '$.Description') as description,
+ JSON_EXTRACT(detail.Properties, '$.IntegrationMethod') as integration_method,
+ JSON_EXTRACT(detail.Properties, '$.IntegrationSubtype') as integration_subtype,
+ JSON_EXTRACT(detail.Properties, '$.IntegrationId') as integration_id,
+ JSON_EXTRACT(detail.Properties, '$.IntegrationType') as integration_type,
+ JSON_EXTRACT(detail.Properties, '$.IntegrationUri') as integration_uri,
+ JSON_EXTRACT(detail.Properties, '$.PassthroughBehavior') as passthrough_behavior,
+ JSON_EXTRACT(detail.Properties, '$.PayloadFormatVersion') as payload_format_version,
+ JSON_EXTRACT(detail.Properties, '$.RequestParameters') as request_parameters,
+ JSON_EXTRACT(detail.Properties, '$.RequestTemplates') as request_templates,
+ JSON_EXTRACT(detail.Properties, '$.ResponseParameters') as response_parameters,
+ JSON_EXTRACT(detail.Properties, '$.TemplateSelectionExpression') as template_selection_expression,
+ JSON_EXTRACT(detail.Properties, '$.TimeoutInMillis') as timeout_in_millis,
+ JSON_EXTRACT(detail.Properties, '$.TlsConfig') as tls_config
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ WHERE listing.data__TypeName = 'AWS::ApiGatewayV2::Integration'
+ AND detail.data__TypeName = 'AWS::ApiGatewayV2::Integration'
+ AND listing.region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres" && requiredParams == [ data__Identifier ]
+ ddl: |-
+ SELECT
+ region,
+ data__Identifier,
+ json_extract_path_text(Properties, 'ApiId') as api_id,
+ json_extract_path_text(Properties, 'ConnectionId') as connection_id,
+ json_extract_path_text(Properties, 'ConnectionType') as connection_type,
+ json_extract_path_text(Properties, 'ContentHandlingStrategy') as content_handling_strategy,
+ json_extract_path_text(Properties, 'CredentialsArn') as credentials_arn,
+ json_extract_path_text(Properties, 'Description') as description,
+ json_extract_path_text(Properties, 'IntegrationMethod') as integration_method,
+ json_extract_path_text(Properties, 'IntegrationSubtype') as integration_subtype,
+ json_extract_path_text(Properties, 'IntegrationId') as integration_id,
+ json_extract_path_text(Properties, 'IntegrationType') as integration_type,
+ json_extract_path_text(Properties, 'IntegrationUri') as integration_uri,
+ json_extract_path_text(Properties, 'PassthroughBehavior') as passthrough_behavior,
+ json_extract_path_text(Properties, 'PayloadFormatVersion') as payload_format_version,
+ json_extract_path_text(Properties, 'RequestParameters') as request_parameters,
+ json_extract_path_text(Properties, 'RequestTemplates') as request_templates,
+ json_extract_path_text(Properties, 'ResponseParameters') as response_parameters,
+ json_extract_path_text(Properties, 'TemplateSelectionExpression') as template_selection_expression,
+ json_extract_path_text(Properties, 'TimeoutInMillis') as timeout_in_millis,
+ json_extract_path_text(Properties, 'TlsConfig') as tls_config
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::ApiGatewayV2::Integration'
+ AND data__Identifier = '|'
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres"
+ ddl: |-
+ SELECT
+ detail.region,
+ json_extract_path_text(detail.Properties, 'ApiId') as api_id,
+ json_extract_path_text(detail.Properties, 'ConnectionId') as connection_id,
+ json_extract_path_text(detail.Properties, 'ConnectionType') as connection_type,
+ json_extract_path_text(detail.Properties, 'ContentHandlingStrategy') as content_handling_strategy,
+ json_extract_path_text(detail.Properties, 'CredentialsArn') as credentials_arn,
+ json_extract_path_text(detail.Properties, 'Description') as description,
+ json_extract_path_text(detail.Properties, 'IntegrationMethod') as integration_method,
+ json_extract_path_text(detail.Properties, 'IntegrationSubtype') as integration_subtype,
+ json_extract_path_text(detail.Properties, 'IntegrationId') as integration_id,
+ json_extract_path_text(detail.Properties, 'IntegrationType') as integration_type,
+ json_extract_path_text(detail.Properties, 'IntegrationUri') as integration_uri,
+ json_extract_path_text(detail.Properties, 'PassthroughBehavior') as passthrough_behavior,
+ json_extract_path_text(detail.Properties, 'PayloadFormatVersion') as payload_format_version,
+ json_extract_path_text(detail.Properties, 'RequestParameters') as request_parameters,
+ json_extract_path_text(detail.Properties, 'RequestTemplates') as request_templates,
+ json_extract_path_text(detail.Properties, 'ResponseParameters') as response_parameters,
+ json_extract_path_text(detail.Properties, 'TemplateSelectionExpression') as template_selection_expression,
+ json_extract_path_text(detail.Properties, 'TimeoutInMillis') as timeout_in_millis,
+ json_extract_path_text(detail.Properties, 'TlsConfig') as tls_config
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ WHERE listing.data__TypeName = 'AWS::ApiGatewayV2::Integration'
+ AND detail.data__TypeName = 'AWS::ApiGatewayV2::Integration'
+ AND listing.region = 'us-east-1'
+ integrations_list_only:
+ name: integrations_list_only
+ id: aws.apigatewayv2.integrations_list_only
+ x-cfn-schema-name: Integration
+ x-cfn-type-name: AWS::ApiGatewayV2::Integration
+ x-identifiers:
+ - ApiId
+ - IntegrationId
+ x-type: cloud_control_view
+ methods: {}
+ sqlVerbs:
+ insert: []
+ delete: []
+ update: []
+ config:
+ views:
+ select:
+ predicate: sqlDialect == "sqlite3"
+ ddl: |-
+ SELECT
+ region,
+ JSON_EXTRACT(Properties, '$.ApiId') as api_id,
+ JSON_EXTRACT(Properties, '$.IntegrationId') as integration_id
+ FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::ApiGatewayV2::Integration'
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres"
+ ddl: |-
+ SELECT
+ region,
+ json_extract_path_text(Properties, 'ApiId') as api_id,
+ json_extract_path_text(Properties, 'IntegrationId') as integration_id
+ FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::ApiGatewayV2::Integration'
+ AND region = 'us-east-1'
integration_responses:
name: integration_responses
id: aws.apigatewayv2.integration_responses
@@ -3914,6 +4360,48 @@ paths:
schema:
$ref: '#/components/x-cloud-control-schemas/ProgressEvent'
description: Success
+ /?Action=CreateResource&Version=2021-09-30&__Integration&__detailTransformed=true:
+ parameters:
+ - $ref: '#/components/parameters/X-Amz-Content-Sha256'
+ - $ref: '#/components/parameters/X-Amz-Date'
+ - $ref: '#/components/parameters/X-Amz-Algorithm'
+ - $ref: '#/components/parameters/X-Amz-Credential'
+ - $ref: '#/components/parameters/X-Amz-Security-Token'
+ - $ref: '#/components/parameters/X-Amz-Signature'
+ - $ref: '#/components/parameters/X-Amz-SignedHeaders'
+ post:
+ operationId: CreateIntegration
+ parameters:
+ - description: Action Header
+ in: header
+ name: X-Amz-Target
+ required: false
+ schema:
+ default: CloudApiService.CreateResource
+ enum:
+ - CloudApiService.CreateResource
+ type: string
+ - in: header
+ name: Content-Type
+ required: false
+ schema:
+ default: application/x-amz-json-1.0
+ enum:
+ - application/x-amz-json-1.0
+ type: string
+ requestBody:
+ content:
+ application/x-amz-json-1.0:
+ schema:
+ $ref: '#/components/schemas/CreateIntegrationRequest'
+ required: true
+ responses:
+ '200':
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/x-cloud-control-schemas/ProgressEvent'
+ description: Success
/?Action=CreateResource&Version=2021-09-30&__IntegrationResponse&__detailTransformed=true:
parameters:
- $ref: '#/components/parameters/X-Amz-Content-Sha256'
diff --git a/providers/src/aws/v00.00.00000/services/appconfig.yaml b/providers/src/aws/v00.00.00000/services/appconfig.yaml
index b07958c2..7843f105 100644
--- a/providers/src/aws/v00.00.00000/services/appconfig.yaml
+++ b/providers/src/aws/v00.00.00000/services/appconfig.yaml
@@ -397,7 +397,6 @@ components:
maxLength: 256
Key:
minLength: 1
- pattern: ^(?!aws:.)[a-zA-Z0-9 +=._:/-]*$
description: The key-value string map. The tag key can be up to 128 characters and must not start with aws:.
type: string
maxLength: 128
@@ -437,6 +436,10 @@ components:
tagUpdatable: true
cloudFormationSystemTags: true
tagProperty: /properties/Tags
+ permissions:
+ - appconfig:TagResource
+ - appconfig:UntagResource
+ - appconfig:ListTagsForResource
x-required-permissions:
create:
- appconfig:CreateApplication
@@ -512,6 +515,13 @@ components:
description: The ARN of an IAM role with permission to access the configuration at the specified LocationUri.
type: string
maxLength: 2048
+ DeletionProtectionCheck:
+ description: On resource deletion this controls whether the Deletion Protection check should be applied, bypassed, or (the default) whether the behavior should be controlled by the account-level Deletion Protection setting. See https://docs.aws.amazon.com/appconfig/latest/userguide/deletion-protection.html
+ type: string
+ enum:
+ - ACCOUNT_DEFAULT
+ - APPLY
+ - BYPASS
ApplicationId:
pattern: '[a-z0-9]{4,7}'
description: The application ID.
@@ -542,6 +552,8 @@ components:
- LocationUri
- Type
- ApplicationId
+ x-write-only-properties:
+ - DeletionProtectionCheck
x-read-only-properties:
- ConfigurationProfileId
- KmsKeyArn
@@ -550,6 +562,10 @@ components:
- ApplicationId
- Name
x-tagging:
+ permissions:
+ - appconfig:TagResource
+ - appconfig:UntagResource
+ - appconfig:ListTagsForResource
taggable: true
tagOnCreate: true
tagUpdatable: true
@@ -574,6 +590,231 @@ components:
- appconfig:ListConfigurationProfiles
delete:
- appconfig:DeleteConfigurationProfile
+ Tag:
+ description: A key-value pair to associate with a resource.
+ type: object
+ properties:
+ Key:
+ type: string
+ description: 'The key name of the tag. You can specify a value that is 1 to 128 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -.'
+ minLength: 1
+ maxLength: 128
+ Value:
+ type: string
+ description: 'The value for the tag. You can specify a value that is 0 to 256 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -.'
+ minLength: 0
+ maxLength: 256
+ required:
+ - Key
+ - Value
+ additionalProperties: false
+ DynamicExtensionParameters:
+ additionalProperties: false
+ type: object
+ properties:
+ ParameterValue:
+ type: string
+ ExtensionReference:
+ type: string
+ ParameterName:
+ type: string
+ Deployment:
+ type: object
+ properties:
+ DeploymentStrategyId:
+ description: The deployment strategy ID.
+ type: string
+ ConfigurationProfileId:
+ description: The configuration profile ID.
+ type: string
+ EnvironmentId:
+ description: The environment ID.
+ type: string
+ KmsKeyIdentifier:
+ pattern: ^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}|alias/[a-zA-Z0-9/_-]{1,250}|arn:aws[a-zA-Z-]*:kms:[a-z]{2}(-gov|-iso(b?))?-[a-z]+-\d{1}:\d{12}:(key/[0-9a-f-]{36}|alias/[a-zA-Z0-9/_-]{1,250})$
+ description: The AWS Key Management Service key identifier (key ID, key alias, or key ARN) provided when the resource was created or updated.
+ type: string
+ Description:
+ description: A description of the deployment.
+ type: string
+ ConfigurationVersion:
+ description: The configuration version to deploy. If deploying an AWS AppConfig hosted configuration version, you can specify either the version number or version label. For all other configurations, you must specify the version number.
+ type: string
+ DeploymentNumber:
+ description: The sequence number of the deployment.
+ type: string
+ ApplicationId:
+ description: The application ID.
+ type: string
+ DynamicExtensionParameters:
+ uniqueItems: false
+ type: array
+ items:
+ $ref: '#/components/schemas/DynamicExtensionParameters'
+ Tags:
+ uniqueItems: true
+ description: An array of key-value pairs to apply to this resource.
+ x-insertionOrder: false
+ type: array
+ items:
+ $ref: '#/components/schemas/Tag'
+ required:
+ - ApplicationId
+ - ConfigurationProfileId
+ - DeploymentStrategyId
+ - EnvironmentId
+ - ConfigurationVersion
+ x-stackql-resource-name: deployment
+ description: Resource Type definition for AWS::AppConfig::Deployment
+ x-type-name: AWS::AppConfig::Deployment
+ x-stackql-primary-identifier:
+ - ApplicationId
+ - EnvironmentId
+ - DeploymentNumber
+ x-create-only-properties:
+ - ApplicationId
+ - ConfigurationProfileId
+ - DeploymentStrategyId
+ - EnvironmentId
+ - Description
+ - ConfigurationVersion
+ - KmsKeyIdentifier
+ - DynamicExtensionParameters
+ - Tags
+ x-write-only-properties:
+ - DynamicExtensionParameters
+ x-read-only-properties:
+ - DeploymentNumber
+ x-required-properties:
+ - ApplicationId
+ - ConfigurationProfileId
+ - DeploymentStrategyId
+ - EnvironmentId
+ - ConfigurationVersion
+ x-tagging:
+ permissions:
+ - appconfig:TagResource
+ - appconfig:UntagResource
+ - appconfig:ListTagsForResource
+ taggable: true
+ tagOnCreate: true
+ tagUpdatable: false
+ tagProperty: /properties/Tags
+ cloudFormationSystemTags: true
+ x-required-permissions:
+ read:
+ - appconfig:GetDeployment
+ - appconfig:ListTagsForResource
+ create:
+ - appconfig:StartDeployment
+ - appconfig:GetDeployment
+ - appconfig:TagResource
+ - appconfig:ListTagsForResource
+ - kms:GenerateDataKey
+ list:
+ - appconfig:ListDeployments
+ delete:
+ - appconfig:StopDeployment
+ DeploymentStrategy:
+ type: object
+ properties:
+ DeploymentDurationInMinutes:
+ type: number
+ description: Total amount of time for a deployment to last.
+ Description:
+ type: string
+ description: A description of the deployment strategy.
+ FinalBakeTimeInMinutes:
+ type: number
+ description: >-
+ Specifies the amount of time AWS AppConfig monitors for Amazon CloudWatch alarms after the configuration has been deployed to 100% of its targets, before considering the deployment to be complete. If an alarm is triggered during this time, AWS AppConfig rolls back the deployment. You must configure permissions for AWS AppConfig to roll back based on CloudWatch alarms. For more information, see Configuring permissions for rollback based on Amazon CloudWatch alarms in the AWS AppConfig
+ User Guide.
+ GrowthFactor:
+ type: number
+ description: The percentage of targets to receive a deployed configuration during each interval.
+ GrowthType:
+ type: string
+ description: |-
+ The algorithm used to define how percentage grows over time. AWS AppConfig supports the following growth types:
+
+ Linear: For this type, AWS AppConfig processes the deployment by dividing the total number of targets by the value specified for Step percentage. For example, a linear deployment that uses a Step percentage of 10 deploys the configuration to 10 percent of the hosts. After those deployments are complete, the system deploys the configuration to the next 10 percent. This continues until 100% of the targets have successfully received the configuration.
+
+ Exponential: For this type, AWS AppConfig processes the deployment exponentially using the following formula: G*(2^N). In this formula, G is the growth factor specified by the user and N is the number of steps until the configuration is deployed to all targets. For example, if you specify a growth factor of 2, then the system rolls out the configuration as follows:
+
+ 2*(2^0)
+
+ 2*(2^1)
+
+ 2*(2^2)
+
+ Expressed numerically, the deployment rolls out as follows: 2% of the targets, 4% of the targets, 8% of the targets, and continues until the configuration has been deployed to all targets.
+ enum:
+ - EXPONENTIAL
+ - LINEAR
+ Name:
+ type: string
+ description: A name for the deployment strategy.
+ ReplicateTo:
+ type: string
+ description: Save the deployment strategy to a Systems Manager (SSM) document.
+ enum:
+ - NONE
+ - SSM_DOCUMENT
+ Tags:
+ type: array
+ description: Assigns metadata to an AWS AppConfig resource. Tags help organize and categorize your AWS AppConfig resources. Each tag consists of a key and an optional value, both of which you define. You can specify a maximum of 50 tags for a resource.
+ uniqueItems: true
+ x-insertionOrder: false
+ items:
+ $ref: '#/components/schemas/Tag'
+ Id:
+ type: string
+ description: The deployment strategy ID.
+ required:
+ - DeploymentDurationInMinutes
+ - GrowthFactor
+ - Name
+ - ReplicateTo
+ x-stackql-resource-name: deployment_strategy
+ description: Resource Type definition for AWS::AppConfig::DeploymentStrategy
+ x-type-name: AWS::AppConfig::DeploymentStrategy
+ x-stackql-primary-identifier:
+ - Id
+ x-create-only-properties:
+ - Name
+ - ReplicateTo
+ x-read-only-properties:
+ - Id
+ x-required-properties:
+ - DeploymentDurationInMinutes
+ - GrowthFactor
+ - Name
+ - ReplicateTo
+ x-tagging:
+ taggable: true
+ tagOnCreate: true
+ tagUpdatable: true
+ cloudFormationSystemTags: true
+ tagProperty: /properties/Tags
+ permissions:
+ - appconfig:TagResource
+ - appconfig:UntagResource
+ - appconfig:ListTagsForResource
+ x-required-permissions:
+ create:
+ - appconfig:CreateDeploymentStrategy
+ - appconfig:TagResource
+ read:
+ - appconfig:GetDeploymentStrategy
+ - appconfig:ListTagsForResource
+ update:
+ - appconfig:UpdateDeploymentStrategy
+ - appconfig:TagResource
+ - appconfig:UntagResource
+ delete:
+ - appconfig:DeleteDeploymentStrategy
+ list:
+ - appconfig:ListDeploymentStrategies
Monitor:
description: Amazon CloudWatch alarm to monitor during the deployment process.
additionalProperties: false
@@ -598,24 +839,6 @@ components:
maxLength: 2048
required:
- AlarmArn
- Tag:
- description: A key-value pair to associate with a resource.
- type: object
- properties:
- Key:
- type: string
- description: 'The key name of the tag. You can specify a value that is 1 to 128 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -.'
- minLength: 1
- maxLength: 128
- Value:
- type: string
- description: 'The value for the tag. You can specify a value that is 0 to 256 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -.'
- minLength: 0
- maxLength: 256
- required:
- - Key
- - Value
- additionalProperties: false
Environment:
type: object
properties:
@@ -636,6 +859,13 @@ components:
type: array
items:
$ref: '#/components/schemas/Monitor'
+ DeletionProtectionCheck:
+ description: On resource deletion this controls whether the Deletion Protection check should be applied, bypassed, or (the default) whether the behavior should be controlled by the account-level Deletion Protection setting. See https://docs.aws.amazon.com/appconfig/latest/userguide/deletion-protection.html
+ type: string
+ enum:
+ - ACCOUNT_DEFAULT
+ - APPLY
+ - BYPASS
ApplicationId:
pattern: '[a-z0-9]{4,7}'
description: The application ID.
@@ -663,12 +893,18 @@ components:
- EnvironmentId
x-create-only-properties:
- ApplicationId
+ x-write-only-properties:
+ - DeletionProtectionCheck
x-read-only-properties:
- EnvironmentId
x-required-properties:
- Name
- ApplicationId
x-tagging:
+ permissions:
+ - appconfig:TagResource
+ - appconfig:UntagResource
+ - appconfig:ListTagsForResource
taggable: true
tagOnCreate: true
tagUpdatable: true
@@ -812,6 +1048,10 @@ components:
tagUpdatable: true
cloudFormationSystemTags: true
tagProperty: /properties/Tags
+ permissions:
+ - appconfig:TagResource
+ - appconfig:UntagResource
+ - appconfig:ListTagsForResource
x-required-permissions:
create:
- appconfig:CreateExtension
@@ -887,6 +1127,10 @@ components:
tagUpdatable: true
cloudFormationSystemTags: true
tagProperty: /properties/Tags
+ permissions:
+ - appconfig:TagResource
+ - appconfig:UntagResource
+ - appconfig:ListTagsForResource
x-required-permissions:
create:
- appconfig:CreateExtensionAssociation
@@ -1068,6 +1312,13 @@ components:
description: The ARN of an IAM role with permission to access the configuration at the specified LocationUri.
type: string
maxLength: 2048
+ DeletionProtectionCheck:
+ description: On resource deletion this controls whether the Deletion Protection check should be applied, bypassed, or (the default) whether the behavior should be controlled by the account-level Deletion Protection setting. See https://docs.aws.amazon.com/appconfig/latest/userguide/deletion-protection.html
+ type: string
+ enum:
+ - ACCOUNT_DEFAULT
+ - APPLY
+ - BYPASS
ApplicationId:
pattern: '[a-z0-9]{4,7}'
description: The application ID.
@@ -1088,6 +1339,129 @@ components:
x-title: CreateConfigurationProfileRequest
type: object
required: []
+ CreateDeploymentRequest:
+ properties:
+ ClientToken:
+ type: string
+ RoleArn:
+ type: string
+ TypeName:
+ type: string
+ TypeVersionId:
+ type: string
+ DesiredState:
+ type: object
+ properties:
+ DeploymentStrategyId:
+ description: The deployment strategy ID.
+ type: string
+ ConfigurationProfileId:
+ description: The configuration profile ID.
+ type: string
+ EnvironmentId:
+ description: The environment ID.
+ type: string
+ KmsKeyIdentifier:
+ pattern: ^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}|alias/[a-zA-Z0-9/_-]{1,250}|arn:aws[a-zA-Z-]*:kms:[a-z]{2}(-gov|-iso(b?))?-[a-z]+-\d{1}:\d{12}:(key/[0-9a-f-]{36}|alias/[a-zA-Z0-9/_-]{1,250})$
+ description: The AWS Key Management Service key identifier (key ID, key alias, or key ARN) provided when the resource was created or updated.
+ type: string
+ Description:
+ description: A description of the deployment.
+ type: string
+ ConfigurationVersion:
+ description: The configuration version to deploy. If deploying an AWS AppConfig hosted configuration version, you can specify either the version number or version label. For all other configurations, you must specify the version number.
+ type: string
+ DeploymentNumber:
+ description: The sequence number of the deployment.
+ type: string
+ ApplicationId:
+ description: The application ID.
+ type: string
+ DynamicExtensionParameters:
+ uniqueItems: false
+ type: array
+ items:
+ $ref: '#/components/schemas/DynamicExtensionParameters'
+ Tags:
+ uniqueItems: true
+ description: An array of key-value pairs to apply to this resource.
+ x-insertionOrder: false
+ type: array
+ items:
+ $ref: '#/components/schemas/Tag'
+ x-stackQL-stringOnly: true
+ x-title: CreateDeploymentRequest
+ type: object
+ required: []
+ CreateDeploymentStrategyRequest:
+ properties:
+ ClientToken:
+ type: string
+ RoleArn:
+ type: string
+ TypeName:
+ type: string
+ TypeVersionId:
+ type: string
+ DesiredState:
+ type: object
+ properties:
+ DeploymentDurationInMinutes:
+ type: number
+ description: Total amount of time for a deployment to last.
+ Description:
+ type: string
+ description: A description of the deployment strategy.
+ FinalBakeTimeInMinutes:
+ type: number
+ description: >-
+ Specifies the amount of time AWS AppConfig monitors for Amazon CloudWatch alarms after the configuration has been deployed to 100% of its targets, before considering the deployment to be complete. If an alarm is triggered during this time, AWS AppConfig rolls back the deployment. You must configure permissions for AWS AppConfig to roll back based on CloudWatch alarms. For more information, see Configuring permissions for rollback based on Amazon CloudWatch alarms in the AWS
+ AppConfig User Guide.
+ GrowthFactor:
+ type: number
+ description: The percentage of targets to receive a deployed configuration during each interval.
+ GrowthType:
+ type: string
+ description: |-
+ The algorithm used to define how percentage grows over time. AWS AppConfig supports the following growth types:
+
+ Linear: For this type, AWS AppConfig processes the deployment by dividing the total number of targets by the value specified for Step percentage. For example, a linear deployment that uses a Step percentage of 10 deploys the configuration to 10 percent of the hosts. After those deployments are complete, the system deploys the configuration to the next 10 percent. This continues until 100% of the targets have successfully received the configuration.
+
+ Exponential: For this type, AWS AppConfig processes the deployment exponentially using the following formula: G*(2^N). In this formula, G is the growth factor specified by the user and N is the number of steps until the configuration is deployed to all targets. For example, if you specify a growth factor of 2, then the system rolls out the configuration as follows:
+
+ 2*(2^0)
+
+ 2*(2^1)
+
+ 2*(2^2)
+
+ Expressed numerically, the deployment rolls out as follows: 2% of the targets, 4% of the targets, 8% of the targets, and continues until the configuration has been deployed to all targets.
+ enum:
+ - EXPONENTIAL
+ - LINEAR
+ Name:
+ type: string
+ description: A name for the deployment strategy.
+ ReplicateTo:
+ type: string
+ description: Save the deployment strategy to a Systems Manager (SSM) document.
+ enum:
+ - NONE
+ - SSM_DOCUMENT
+ Tags:
+ type: array
+ description: Assigns metadata to an AWS AppConfig resource. Tags help organize and categorize your AWS AppConfig resources. Each tag consists of a key and an optional value, both of which you define. You can specify a maximum of 50 tags for a resource.
+ uniqueItems: true
+ x-insertionOrder: false
+ items:
+ $ref: '#/components/schemas/Tag'
+ Id:
+ type: string
+ description: The deployment strategy ID.
+ x-stackQL-stringOnly: true
+ x-title: CreateDeploymentStrategyRequest
+ type: object
+ required: []
CreateEnvironmentRequest:
properties:
ClientToken:
@@ -1118,6 +1492,13 @@ components:
type: array
items:
$ref: '#/components/schemas/Monitor'
+ DeletionProtectionCheck:
+ description: On resource deletion this controls whether the Deletion Protection check should be applied, bypassed, or (the default) whether the behavior should be controlled by the account-level Deletion Protection setting. See https://docs.aws.amazon.com/appconfig/latest/userguide/deletion-protection.html
+ type: string
+ enum:
+ - ACCOUNT_DEFAULT
+ - APPLY
+ - BYPASS
ApplicationId:
pattern: '[a-z0-9]{4,7}'
description: The application ID.
@@ -1340,11 +1721,442 @@ components:
openAPIDocKey: '200'
sqlVerbs:
insert:
- - $ref: '#/components/x-stackQL-resources/applications/methods/create_resource'
+ - $ref: '#/components/x-stackQL-resources/applications/methods/create_resource'
+ delete:
+ - $ref: '#/components/x-stackQL-resources/applications/methods/delete_resource'
+ update:
+ - $ref: '#/components/x-stackQL-resources/applications/methods/update_resource'
+ config:
+ views:
+ select:
+ predicate: sqlDialect == "sqlite3" && requiredParams == [ data__Identifier ]
+ ddl: |-
+ SELECT
+ region,
+ data__Identifier,
+ JSON_EXTRACT(Properties, '$.Description') as description,
+ JSON_EXTRACT(Properties, '$.ApplicationId') as application_id,
+ JSON_EXTRACT(Properties, '$.Tags') as tags,
+ JSON_EXTRACT(Properties, '$.Name') as name
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::AppConfig::Application'
+ AND data__Identifier = ''
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "sqlite3"
+ ddl: |-
+ SELECT
+ detail.region,
+ JSON_EXTRACT(detail.Properties, '$.Description') as description,
+ JSON_EXTRACT(detail.Properties, '$.ApplicationId') as application_id,
+ JSON_EXTRACT(detail.Properties, '$.Tags') as tags,
+ JSON_EXTRACT(detail.Properties, '$.Name') as name
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ WHERE listing.data__TypeName = 'AWS::AppConfig::Application'
+ AND detail.data__TypeName = 'AWS::AppConfig::Application'
+ AND listing.region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres" && requiredParams == [ data__Identifier ]
+ ddl: |-
+ SELECT
+ region,
+ data__Identifier,
+ json_extract_path_text(Properties, 'Description') as description,
+ json_extract_path_text(Properties, 'ApplicationId') as application_id,
+ json_extract_path_text(Properties, 'Tags') as tags,
+ json_extract_path_text(Properties, 'Name') as name
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::AppConfig::Application'
+ AND data__Identifier = ''
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres"
+ ddl: |-
+ SELECT
+ detail.region,
+ json_extract_path_text(detail.Properties, 'Description') as description,
+ json_extract_path_text(detail.Properties, 'ApplicationId') as application_id,
+ json_extract_path_text(detail.Properties, 'Tags') as tags,
+ json_extract_path_text(detail.Properties, 'Name') as name
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ WHERE listing.data__TypeName = 'AWS::AppConfig::Application'
+ AND detail.data__TypeName = 'AWS::AppConfig::Application'
+ AND listing.region = 'us-east-1'
+ applications_list_only:
+ name: applications_list_only
+ id: aws.appconfig.applications_list_only
+ x-cfn-schema-name: Application
+ x-cfn-type-name: AWS::AppConfig::Application
+ x-identifiers:
+ - ApplicationId
+ x-type: cloud_control_view
+ methods: {}
+ sqlVerbs:
+ insert: []
+ delete: []
+ update: []
+ config:
+ views:
+ select:
+ predicate: sqlDialect == "sqlite3"
+ ddl: |-
+ SELECT
+ region,
+ JSON_EXTRACT(Properties, '$.ApplicationId') as application_id
+ FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::AppConfig::Application'
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres"
+ ddl: |-
+ SELECT
+ region,
+ json_extract_path_text(Properties, 'ApplicationId') as application_id
+ FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::AppConfig::Application'
+ AND region = 'us-east-1'
+ application_tags:
+ name: application_tags
+ id: aws.appconfig.application_tags
+ x-cfn-schema-name: Application
+ x-cfn-type-name: AWS::AppConfig::Application
+ x-type: cloud_control_view
+ methods: {}
+ sqlVerbs:
+ insert: []
+ delete: []
+ update: []
+ config:
+ views:
+ select:
+ predicate: sqlDialect == "sqlite3"
+ ddl: |-
+ SELECT
+ detail.region,
+ JSON_EXTRACT(json_each.value, '$.Key') as tag_key,
+ JSON_EXTRACT(json_each.value, '$.Value') as tag_value,
+ JSON_EXTRACT(detail.Properties, '$.Description') as description,
+ JSON_EXTRACT(detail.Properties, '$.ApplicationId') as application_id,
+ JSON_EXTRACT(detail.Properties, '$.Name') as name
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ ,json_each(JSON_EXTRACT(detail.Properties, '$.Tags'))
+ WHERE listing.data__TypeName = 'AWS::AppConfig::Application'
+ AND detail.data__TypeName = 'AWS::AppConfig::Application'
+ AND listing.region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres"
+ ddl: |-
+ SELECT
+ detail.region,
+ json_extract_path_text(json_each.value, 'Key') as tag_key,
+ json_extract_path_text(json_each.value, 'Value') as tag_value,
+ json_extract_path_text(detail.Properties, 'Description') as description,
+ json_extract_path_text(detail.Properties, 'ApplicationId') as application_id,
+ json_extract_path_text(detail.Properties, 'Name') as name
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ ,json_array_elements_text(json_extract_path_text(detail.Properties, 'Tags'))
+ WHERE listing.data__TypeName = 'AWS::AppConfig::Application'
+ AND detail.data__TypeName = 'AWS::AppConfig::Application'
+ AND listing.region = 'us-east-1'
+ configuration_profiles:
+ name: configuration_profiles
+ id: aws.appconfig.configuration_profiles
+ x-cfn-schema-name: ConfigurationProfile
+ x-cfn-type-name: AWS::AppConfig::ConfigurationProfile
+ x-identifiers:
+ - ApplicationId
+ - ConfigurationProfileId
+ x-type: cloud_control
+ methods:
+ create_resource:
+ config:
+ requestBodyTranslate:
+ algorithm: naive_DesiredState
+ operation:
+ $ref: '#/paths/~1?Action=CreateResource&Version=2021-09-30&__ConfigurationProfile&__detailTransformed=true/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::AppConfig::ConfigurationProfile"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ update_resource:
+ operation:
+ $ref: '#/paths/~1?Action=UpdateResource&Version=2021-09-30/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::AppConfig::ConfigurationProfile"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ delete_resource:
+ operation:
+ $ref: '#/paths/~1?Action=DeleteResource&Version=2021-09-30/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::AppConfig::ConfigurationProfile"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ sqlVerbs:
+ insert:
+ - $ref: '#/components/x-stackQL-resources/configuration_profiles/methods/create_resource'
+ delete:
+ - $ref: '#/components/x-stackQL-resources/configuration_profiles/methods/delete_resource'
+ update:
+ - $ref: '#/components/x-stackQL-resources/configuration_profiles/methods/update_resource'
+ config:
+ views:
+ select:
+ predicate: sqlDialect == "sqlite3" && requiredParams == [ data__Identifier ]
+ ddl: |-
+ SELECT
+ region,
+ data__Identifier,
+ JSON_EXTRACT(Properties, '$.ConfigurationProfileId') as configuration_profile_id,
+ JSON_EXTRACT(Properties, '$.LocationUri') as location_uri,
+ JSON_EXTRACT(Properties, '$.Type') as type,
+ JSON_EXTRACT(Properties, '$.KmsKeyIdentifier') as kms_key_identifier,
+ JSON_EXTRACT(Properties, '$.Description') as description,
+ JSON_EXTRACT(Properties, '$.KmsKeyArn') as kms_key_arn,
+ JSON_EXTRACT(Properties, '$.Validators') as validators,
+ JSON_EXTRACT(Properties, '$.RetrievalRoleArn') as retrieval_role_arn,
+ JSON_EXTRACT(Properties, '$.DeletionProtectionCheck') as deletion_protection_check,
+ JSON_EXTRACT(Properties, '$.ApplicationId') as application_id,
+ JSON_EXTRACT(Properties, '$.Tags') as tags,
+ JSON_EXTRACT(Properties, '$.Name') as name
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::AppConfig::ConfigurationProfile'
+ AND data__Identifier = '|'
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "sqlite3"
+ ddl: |-
+ SELECT
+ detail.region,
+ JSON_EXTRACT(detail.Properties, '$.ConfigurationProfileId') as configuration_profile_id,
+ JSON_EXTRACT(detail.Properties, '$.LocationUri') as location_uri,
+ JSON_EXTRACT(detail.Properties, '$.Type') as type,
+ JSON_EXTRACT(detail.Properties, '$.KmsKeyIdentifier') as kms_key_identifier,
+ JSON_EXTRACT(detail.Properties, '$.Description') as description,
+ JSON_EXTRACT(detail.Properties, '$.KmsKeyArn') as kms_key_arn,
+ JSON_EXTRACT(detail.Properties, '$.Validators') as validators,
+ JSON_EXTRACT(detail.Properties, '$.RetrievalRoleArn') as retrieval_role_arn,
+ JSON_EXTRACT(detail.Properties, '$.DeletionProtectionCheck') as deletion_protection_check,
+ JSON_EXTRACT(detail.Properties, '$.ApplicationId') as application_id,
+ JSON_EXTRACT(detail.Properties, '$.Tags') as tags,
+ JSON_EXTRACT(detail.Properties, '$.Name') as name
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ WHERE listing.data__TypeName = 'AWS::AppConfig::ConfigurationProfile'
+ AND detail.data__TypeName = 'AWS::AppConfig::ConfigurationProfile'
+ AND listing.region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres" && requiredParams == [ data__Identifier ]
+ ddl: |-
+ SELECT
+ region,
+ data__Identifier,
+ json_extract_path_text(Properties, 'ConfigurationProfileId') as configuration_profile_id,
+ json_extract_path_text(Properties, 'LocationUri') as location_uri,
+ json_extract_path_text(Properties, 'Type') as type,
+ json_extract_path_text(Properties, 'KmsKeyIdentifier') as kms_key_identifier,
+ json_extract_path_text(Properties, 'Description') as description,
+ json_extract_path_text(Properties, 'KmsKeyArn') as kms_key_arn,
+ json_extract_path_text(Properties, 'Validators') as validators,
+ json_extract_path_text(Properties, 'RetrievalRoleArn') as retrieval_role_arn,
+ json_extract_path_text(Properties, 'DeletionProtectionCheck') as deletion_protection_check,
+ json_extract_path_text(Properties, 'ApplicationId') as application_id,
+ json_extract_path_text(Properties, 'Tags') as tags,
+ json_extract_path_text(Properties, 'Name') as name
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::AppConfig::ConfigurationProfile'
+ AND data__Identifier = '|'
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres"
+ ddl: |-
+ SELECT
+ detail.region,
+ json_extract_path_text(detail.Properties, 'ConfigurationProfileId') as configuration_profile_id,
+ json_extract_path_text(detail.Properties, 'LocationUri') as location_uri,
+ json_extract_path_text(detail.Properties, 'Type') as type,
+ json_extract_path_text(detail.Properties, 'KmsKeyIdentifier') as kms_key_identifier,
+ json_extract_path_text(detail.Properties, 'Description') as description,
+ json_extract_path_text(detail.Properties, 'KmsKeyArn') as kms_key_arn,
+ json_extract_path_text(detail.Properties, 'Validators') as validators,
+ json_extract_path_text(detail.Properties, 'RetrievalRoleArn') as retrieval_role_arn,
+ json_extract_path_text(detail.Properties, 'DeletionProtectionCheck') as deletion_protection_check,
+ json_extract_path_text(detail.Properties, 'ApplicationId') as application_id,
+ json_extract_path_text(detail.Properties, 'Tags') as tags,
+ json_extract_path_text(detail.Properties, 'Name') as name
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ WHERE listing.data__TypeName = 'AWS::AppConfig::ConfigurationProfile'
+ AND detail.data__TypeName = 'AWS::AppConfig::ConfigurationProfile'
+ AND listing.region = 'us-east-1'
+ configuration_profiles_list_only:
+ name: configuration_profiles_list_only
+ id: aws.appconfig.configuration_profiles_list_only
+ x-cfn-schema-name: ConfigurationProfile
+ x-cfn-type-name: AWS::AppConfig::ConfigurationProfile
+ x-identifiers:
+ - ApplicationId
+ - ConfigurationProfileId
+ x-type: cloud_control_view
+ methods: {}
+ sqlVerbs:
+ insert: []
+ delete: []
+ update: []
+ config:
+ views:
+ select:
+ predicate: sqlDialect == "sqlite3"
+ ddl: |-
+ SELECT
+ region,
+ JSON_EXTRACT(Properties, '$.ApplicationId') as application_id,
+ JSON_EXTRACT(Properties, '$.ConfigurationProfileId') as configuration_profile_id
+ FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::AppConfig::ConfigurationProfile'
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres"
+ ddl: |-
+ SELECT
+ region,
+ json_extract_path_text(Properties, 'ApplicationId') as application_id,
+ json_extract_path_text(Properties, 'ConfigurationProfileId') as configuration_profile_id
+ FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::AppConfig::ConfigurationProfile'
+ AND region = 'us-east-1'
+ configuration_profile_tags:
+ name: configuration_profile_tags
+ id: aws.appconfig.configuration_profile_tags
+ x-cfn-schema-name: ConfigurationProfile
+ x-cfn-type-name: AWS::AppConfig::ConfigurationProfile
+ x-type: cloud_control_view
+ methods: {}
+ sqlVerbs:
+ insert: []
+ delete: []
+ update: []
+ config:
+ views:
+ select:
+ predicate: sqlDialect == "sqlite3"
+ ddl: |-
+ SELECT
+ detail.region,
+ JSON_EXTRACT(json_each.value, '$.Key') as tag_key,
+ JSON_EXTRACT(json_each.value, '$.Value') as tag_value,
+ JSON_EXTRACT(detail.Properties, '$.ConfigurationProfileId') as configuration_profile_id,
+ JSON_EXTRACT(detail.Properties, '$.LocationUri') as location_uri,
+ JSON_EXTRACT(detail.Properties, '$.Type') as type,
+ JSON_EXTRACT(detail.Properties, '$.KmsKeyIdentifier') as kms_key_identifier,
+ JSON_EXTRACT(detail.Properties, '$.Description') as description,
+ JSON_EXTRACT(detail.Properties, '$.KmsKeyArn') as kms_key_arn,
+ JSON_EXTRACT(detail.Properties, '$.Validators') as validators,
+ JSON_EXTRACT(detail.Properties, '$.RetrievalRoleArn') as retrieval_role_arn,
+ JSON_EXTRACT(detail.Properties, '$.DeletionProtectionCheck') as deletion_protection_check,
+ JSON_EXTRACT(detail.Properties, '$.ApplicationId') as application_id,
+ JSON_EXTRACT(detail.Properties, '$.Name') as name
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ ,json_each(JSON_EXTRACT(detail.Properties, '$.Tags'))
+ WHERE listing.data__TypeName = 'AWS::AppConfig::ConfigurationProfile'
+ AND detail.data__TypeName = 'AWS::AppConfig::ConfigurationProfile'
+ AND listing.region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres"
+ ddl: |-
+ SELECT
+ detail.region,
+ json_extract_path_text(json_each.value, 'Key') as tag_key,
+ json_extract_path_text(json_each.value, 'Value') as tag_value,
+ json_extract_path_text(detail.Properties, 'ConfigurationProfileId') as configuration_profile_id,
+ json_extract_path_text(detail.Properties, 'LocationUri') as location_uri,
+ json_extract_path_text(detail.Properties, 'Type') as type,
+ json_extract_path_text(detail.Properties, 'KmsKeyIdentifier') as kms_key_identifier,
+ json_extract_path_text(detail.Properties, 'Description') as description,
+ json_extract_path_text(detail.Properties, 'KmsKeyArn') as kms_key_arn,
+ json_extract_path_text(detail.Properties, 'Validators') as validators,
+ json_extract_path_text(detail.Properties, 'RetrievalRoleArn') as retrieval_role_arn,
+ json_extract_path_text(detail.Properties, 'DeletionProtectionCheck') as deletion_protection_check,
+ json_extract_path_text(detail.Properties, 'ApplicationId') as application_id,
+ json_extract_path_text(detail.Properties, 'Name') as name
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ ,json_array_elements_text(json_extract_path_text(detail.Properties, 'Tags'))
+ WHERE listing.data__TypeName = 'AWS::AppConfig::ConfigurationProfile'
+ AND detail.data__TypeName = 'AWS::AppConfig::ConfigurationProfile'
+ AND listing.region = 'us-east-1'
+ deployments:
+ name: deployments
+ id: aws.appconfig.deployments
+ x-cfn-schema-name: Deployment
+ x-cfn-type-name: AWS::AppConfig::Deployment
+ x-identifiers:
+ - ApplicationId
+ - EnvironmentId
+ - DeploymentNumber
+ x-type: cloud_control
+ methods:
+ create_resource:
+ config:
+ requestBodyTranslate:
+ algorithm: naive_DesiredState
+ operation:
+ $ref: '#/paths/~1?Action=CreateResource&Version=2021-09-30&__Deployment&__detailTransformed=true/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::AppConfig::Deployment"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ delete_resource:
+ operation:
+ $ref: '#/paths/~1?Action=DeleteResource&Version=2021-09-30/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::AppConfig::Deployment"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ sqlVerbs:
+ insert:
+ - $ref: '#/components/x-stackQL-resources/deployments/methods/create_resource'
delete:
- - $ref: '#/components/x-stackQL-resources/applications/methods/delete_resource'
- update:
- - $ref: '#/components/x-stackQL-resources/applications/methods/update_resource'
+ - $ref: '#/components/x-stackQL-resources/deployments/methods/delete_resource'
+ update: []
config:
views:
select:
@@ -1353,28 +2165,40 @@ components:
SELECT
region,
data__Identifier,
+ JSON_EXTRACT(Properties, '$.DeploymentStrategyId') as deployment_strategy_id,
+ JSON_EXTRACT(Properties, '$.ConfigurationProfileId') as configuration_profile_id,
+ JSON_EXTRACT(Properties, '$.EnvironmentId') as environment_id,
+ JSON_EXTRACT(Properties, '$.KmsKeyIdentifier') as kms_key_identifier,
JSON_EXTRACT(Properties, '$.Description') as description,
+ JSON_EXTRACT(Properties, '$.ConfigurationVersion') as configuration_version,
+ JSON_EXTRACT(Properties, '$.DeploymentNumber') as deployment_number,
JSON_EXTRACT(Properties, '$.ApplicationId') as application_id,
- JSON_EXTRACT(Properties, '$.Tags') as tags,
- JSON_EXTRACT(Properties, '$.Name') as name
- FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::AppConfig::Application'
- AND data__Identifier = ''
+ JSON_EXTRACT(Properties, '$.DynamicExtensionParameters') as dynamic_extension_parameters,
+ JSON_EXTRACT(Properties, '$.Tags') as tags
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::AppConfig::Deployment'
+ AND data__Identifier = '||'
AND region = 'us-east-1'
fallback:
predicate: sqlDialect == "sqlite3"
ddl: |-
SELECT
detail.region,
+ JSON_EXTRACT(detail.Properties, '$.DeploymentStrategyId') as deployment_strategy_id,
+ JSON_EXTRACT(detail.Properties, '$.ConfigurationProfileId') as configuration_profile_id,
+ JSON_EXTRACT(detail.Properties, '$.EnvironmentId') as environment_id,
+ JSON_EXTRACT(detail.Properties, '$.KmsKeyIdentifier') as kms_key_identifier,
JSON_EXTRACT(detail.Properties, '$.Description') as description,
+ JSON_EXTRACT(detail.Properties, '$.ConfigurationVersion') as configuration_version,
+ JSON_EXTRACT(detail.Properties, '$.DeploymentNumber') as deployment_number,
JSON_EXTRACT(detail.Properties, '$.ApplicationId') as application_id,
- JSON_EXTRACT(detail.Properties, '$.Tags') as tags,
- JSON_EXTRACT(detail.Properties, '$.Name') as name
+ JSON_EXTRACT(detail.Properties, '$.DynamicExtensionParameters') as dynamic_extension_parameters,
+ JSON_EXTRACT(detail.Properties, '$.Tags') as tags
FROM aws.cloud_control.resources listing
LEFT OUTER JOIN aws.cloud_control.resource detail
ON detail.data__Identifier = listing.Identifier
AND detail.region = listing.region
- WHERE listing.data__TypeName = 'AWS::AppConfig::Application'
- AND detail.data__TypeName = 'AWS::AppConfig::Application'
+ WHERE listing.data__TypeName = 'AWS::AppConfig::Deployment'
+ AND detail.data__TypeName = 'AWS::AppConfig::Deployment'
AND listing.region = 'us-east-1'
fallback:
predicate: sqlDialect == "postgres" && requiredParams == [ data__Identifier ]
@@ -1382,36 +2206,50 @@ components:
SELECT
region,
data__Identifier,
+ json_extract_path_text(Properties, 'DeploymentStrategyId') as deployment_strategy_id,
+ json_extract_path_text(Properties, 'ConfigurationProfileId') as configuration_profile_id,
+ json_extract_path_text(Properties, 'EnvironmentId') as environment_id,
+ json_extract_path_text(Properties, 'KmsKeyIdentifier') as kms_key_identifier,
json_extract_path_text(Properties, 'Description') as description,
+ json_extract_path_text(Properties, 'ConfigurationVersion') as configuration_version,
+ json_extract_path_text(Properties, 'DeploymentNumber') as deployment_number,
json_extract_path_text(Properties, 'ApplicationId') as application_id,
- json_extract_path_text(Properties, 'Tags') as tags,
- json_extract_path_text(Properties, 'Name') as name
- FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::AppConfig::Application'
- AND data__Identifier = ''
+ json_extract_path_text(Properties, 'DynamicExtensionParameters') as dynamic_extension_parameters,
+ json_extract_path_text(Properties, 'Tags') as tags
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::AppConfig::Deployment'
+ AND data__Identifier = '||'
AND region = 'us-east-1'
fallback:
predicate: sqlDialect == "postgres"
ddl: |-
SELECT
detail.region,
+ json_extract_path_text(detail.Properties, 'DeploymentStrategyId') as deployment_strategy_id,
+ json_extract_path_text(detail.Properties, 'ConfigurationProfileId') as configuration_profile_id,
+ json_extract_path_text(detail.Properties, 'EnvironmentId') as environment_id,
+ json_extract_path_text(detail.Properties, 'KmsKeyIdentifier') as kms_key_identifier,
json_extract_path_text(detail.Properties, 'Description') as description,
+ json_extract_path_text(detail.Properties, 'ConfigurationVersion') as configuration_version,
+ json_extract_path_text(detail.Properties, 'DeploymentNumber') as deployment_number,
json_extract_path_text(detail.Properties, 'ApplicationId') as application_id,
- json_extract_path_text(detail.Properties, 'Tags') as tags,
- json_extract_path_text(detail.Properties, 'Name') as name
+ json_extract_path_text(detail.Properties, 'DynamicExtensionParameters') as dynamic_extension_parameters,
+ json_extract_path_text(detail.Properties, 'Tags') as tags
FROM aws.cloud_control.resources listing
LEFT OUTER JOIN aws.cloud_control.resource detail
ON detail.data__Identifier = listing.Identifier
AND detail.region = listing.region
- WHERE listing.data__TypeName = 'AWS::AppConfig::Application'
- AND detail.data__TypeName = 'AWS::AppConfig::Application'
+ WHERE listing.data__TypeName = 'AWS::AppConfig::Deployment'
+ AND detail.data__TypeName = 'AWS::AppConfig::Deployment'
AND listing.region = 'us-east-1'
- applications_list_only:
- name: applications_list_only
- id: aws.appconfig.applications_list_only
- x-cfn-schema-name: Application
- x-cfn-type-name: AWS::AppConfig::Application
+ deployments_list_only:
+ name: deployments_list_only
+ id: aws.appconfig.deployments_list_only
+ x-cfn-schema-name: Deployment
+ x-cfn-type-name: AWS::AppConfig::Deployment
x-identifiers:
- ApplicationId
+ - EnvironmentId
+ - DeploymentNumber
x-type: cloud_control_view
methods: {}
sqlVerbs:
@@ -1425,22 +2263,26 @@ components:
ddl: |-
SELECT
region,
- JSON_EXTRACT(Properties, '$.ApplicationId') as application_id
- FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::AppConfig::Application'
+ JSON_EXTRACT(Properties, '$.ApplicationId') as application_id,
+ JSON_EXTRACT(Properties, '$.EnvironmentId') as environment_id,
+ JSON_EXTRACT(Properties, '$.DeploymentNumber') as deployment_number
+ FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::AppConfig::Deployment'
AND region = 'us-east-1'
fallback:
predicate: sqlDialect == "postgres"
ddl: |-
SELECT
region,
- json_extract_path_text(Properties, 'ApplicationId') as application_id
- FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::AppConfig::Application'
+ json_extract_path_text(Properties, 'ApplicationId') as application_id,
+ json_extract_path_text(Properties, 'EnvironmentId') as environment_id,
+ json_extract_path_text(Properties, 'DeploymentNumber') as deployment_number
+ FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::AppConfig::Deployment'
AND region = 'us-east-1'
- application_tags:
- name: application_tags
- id: aws.appconfig.application_tags
- x-cfn-schema-name: Application
- x-cfn-type-name: AWS::AppConfig::Application
+ deployment_tags:
+ name: deployment_tags
+ id: aws.appconfig.deployment_tags
+ x-cfn-schema-name: Deployment
+ x-cfn-type-name: AWS::AppConfig::Deployment
x-type: cloud_control_view
methods: {}
sqlVerbs:
@@ -1456,16 +2298,22 @@ components:
detail.region,
JSON_EXTRACT(json_each.value, '$.Key') as tag_key,
JSON_EXTRACT(json_each.value, '$.Value') as tag_value,
+ JSON_EXTRACT(detail.Properties, '$.DeploymentStrategyId') as deployment_strategy_id,
+ JSON_EXTRACT(detail.Properties, '$.ConfigurationProfileId') as configuration_profile_id,
+ JSON_EXTRACT(detail.Properties, '$.EnvironmentId') as environment_id,
+ JSON_EXTRACT(detail.Properties, '$.KmsKeyIdentifier') as kms_key_identifier,
JSON_EXTRACT(detail.Properties, '$.Description') as description,
+ JSON_EXTRACT(detail.Properties, '$.ConfigurationVersion') as configuration_version,
+ JSON_EXTRACT(detail.Properties, '$.DeploymentNumber') as deployment_number,
JSON_EXTRACT(detail.Properties, '$.ApplicationId') as application_id,
- JSON_EXTRACT(detail.Properties, '$.Name') as name
+ JSON_EXTRACT(detail.Properties, '$.DynamicExtensionParameters') as dynamic_extension_parameters
FROM aws.cloud_control.resources listing
LEFT OUTER JOIN aws.cloud_control.resource detail
ON detail.data__Identifier = listing.Identifier
AND detail.region = listing.region
,json_each(JSON_EXTRACT(detail.Properties, '$.Tags'))
- WHERE listing.data__TypeName = 'AWS::AppConfig::Application'
- AND detail.data__TypeName = 'AWS::AppConfig::Application'
+ WHERE listing.data__TypeName = 'AWS::AppConfig::Deployment'
+ AND detail.data__TypeName = 'AWS::AppConfig::Deployment'
AND listing.region = 'us-east-1'
fallback:
predicate: sqlDialect == "postgres"
@@ -1474,25 +2322,30 @@ components:
detail.region,
json_extract_path_text(json_each.value, 'Key') as tag_key,
json_extract_path_text(json_each.value, 'Value') as tag_value,
+ json_extract_path_text(detail.Properties, 'DeploymentStrategyId') as deployment_strategy_id,
+ json_extract_path_text(detail.Properties, 'ConfigurationProfileId') as configuration_profile_id,
+ json_extract_path_text(detail.Properties, 'EnvironmentId') as environment_id,
+ json_extract_path_text(detail.Properties, 'KmsKeyIdentifier') as kms_key_identifier,
json_extract_path_text(detail.Properties, 'Description') as description,
+ json_extract_path_text(detail.Properties, 'ConfigurationVersion') as configuration_version,
+ json_extract_path_text(detail.Properties, 'DeploymentNumber') as deployment_number,
json_extract_path_text(detail.Properties, 'ApplicationId') as application_id,
- json_extract_path_text(detail.Properties, 'Name') as name
+ json_extract_path_text(detail.Properties, 'DynamicExtensionParameters') as dynamic_extension_parameters
FROM aws.cloud_control.resources listing
LEFT OUTER JOIN aws.cloud_control.resource detail
ON detail.data__Identifier = listing.Identifier
AND detail.region = listing.region
,json_array_elements_text(json_extract_path_text(detail.Properties, 'Tags'))
- WHERE listing.data__TypeName = 'AWS::AppConfig::Application'
- AND detail.data__TypeName = 'AWS::AppConfig::Application'
+ WHERE listing.data__TypeName = 'AWS::AppConfig::Deployment'
+ AND detail.data__TypeName = 'AWS::AppConfig::Deployment'
AND listing.region = 'us-east-1'
- configuration_profiles:
- name: configuration_profiles
- id: aws.appconfig.configuration_profiles
- x-cfn-schema-name: ConfigurationProfile
- x-cfn-type-name: AWS::AppConfig::ConfigurationProfile
+ deployment_strategies:
+ name: deployment_strategies
+ id: aws.appconfig.deployment_strategies
+ x-cfn-schema-name: DeploymentStrategy
+ x-cfn-type-name: AWS::AppConfig::DeploymentStrategy
x-identifiers:
- - ApplicationId
- - ConfigurationProfileId
+ - Id
x-type: cloud_control
methods:
create_resource:
@@ -1500,12 +2353,12 @@ components:
requestBodyTranslate:
algorithm: naive_DesiredState
operation:
- $ref: '#/paths/~1?Action=CreateResource&Version=2021-09-30&__ConfigurationProfile&__detailTransformed=true/post'
+ $ref: '#/paths/~1?Action=CreateResource&Version=2021-09-30&__DeploymentStrategy&__detailTransformed=true/post'
request:
mediaType: application/x-amz-json-1.0
base: |-
{
- "TypeName": "AWS::AppConfig::ConfigurationProfile"
+ "TypeName": "AWS::AppConfig::DeploymentStrategy"
}
response:
mediaType: application/json
@@ -1517,7 +2370,7 @@ components:
mediaType: application/x-amz-json-1.0
base: |-
{
- "TypeName": "AWS::AppConfig::ConfigurationProfile"
+ "TypeName": "AWS::AppConfig::DeploymentStrategy"
}
response:
mediaType: application/json
@@ -1529,18 +2382,18 @@ components:
mediaType: application/x-amz-json-1.0
base: |-
{
- "TypeName": "AWS::AppConfig::ConfigurationProfile"
+ "TypeName": "AWS::AppConfig::DeploymentStrategy"
}
response:
mediaType: application/json
openAPIDocKey: '200'
sqlVerbs:
insert:
- - $ref: '#/components/x-stackQL-resources/configuration_profiles/methods/create_resource'
+ - $ref: '#/components/x-stackQL-resources/deployment_strategies/methods/create_resource'
delete:
- - $ref: '#/components/x-stackQL-resources/configuration_profiles/methods/delete_resource'
+ - $ref: '#/components/x-stackQL-resources/deployment_strategies/methods/delete_resource'
update:
- - $ref: '#/components/x-stackQL-resources/configuration_profiles/methods/update_resource'
+ - $ref: '#/components/x-stackQL-resources/deployment_strategies/methods/update_resource'
config:
views:
select:
@@ -1549,42 +2402,38 @@ components:
SELECT
region,
data__Identifier,
- JSON_EXTRACT(Properties, '$.ConfigurationProfileId') as configuration_profile_id,
- JSON_EXTRACT(Properties, '$.LocationUri') as location_uri,
- JSON_EXTRACT(Properties, '$.Type') as type,
- JSON_EXTRACT(Properties, '$.KmsKeyIdentifier') as kms_key_identifier,
+ JSON_EXTRACT(Properties, '$.DeploymentDurationInMinutes') as deployment_duration_in_minutes,
JSON_EXTRACT(Properties, '$.Description') as description,
- JSON_EXTRACT(Properties, '$.KmsKeyArn') as kms_key_arn,
- JSON_EXTRACT(Properties, '$.Validators') as validators,
- JSON_EXTRACT(Properties, '$.RetrievalRoleArn') as retrieval_role_arn,
- JSON_EXTRACT(Properties, '$.ApplicationId') as application_id,
+ JSON_EXTRACT(Properties, '$.FinalBakeTimeInMinutes') as final_bake_time_in_minutes,
+ JSON_EXTRACT(Properties, '$.GrowthFactor') as growth_factor,
+ JSON_EXTRACT(Properties, '$.GrowthType') as growth_type,
+ JSON_EXTRACT(Properties, '$.Name') as name,
+ JSON_EXTRACT(Properties, '$.ReplicateTo') as replicate_to,
JSON_EXTRACT(Properties, '$.Tags') as tags,
- JSON_EXTRACT(Properties, '$.Name') as name
- FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::AppConfig::ConfigurationProfile'
- AND data__Identifier = '|'
+ JSON_EXTRACT(Properties, '$.Id') as id
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::AppConfig::DeploymentStrategy'
+ AND data__Identifier = ''
AND region = 'us-east-1'
fallback:
predicate: sqlDialect == "sqlite3"
ddl: |-
SELECT
detail.region,
- JSON_EXTRACT(detail.Properties, '$.ConfigurationProfileId') as configuration_profile_id,
- JSON_EXTRACT(detail.Properties, '$.LocationUri') as location_uri,
- JSON_EXTRACT(detail.Properties, '$.Type') as type,
- JSON_EXTRACT(detail.Properties, '$.KmsKeyIdentifier') as kms_key_identifier,
+ JSON_EXTRACT(detail.Properties, '$.DeploymentDurationInMinutes') as deployment_duration_in_minutes,
JSON_EXTRACT(detail.Properties, '$.Description') as description,
- JSON_EXTRACT(detail.Properties, '$.KmsKeyArn') as kms_key_arn,
- JSON_EXTRACT(detail.Properties, '$.Validators') as validators,
- JSON_EXTRACT(detail.Properties, '$.RetrievalRoleArn') as retrieval_role_arn,
- JSON_EXTRACT(detail.Properties, '$.ApplicationId') as application_id,
+ JSON_EXTRACT(detail.Properties, '$.FinalBakeTimeInMinutes') as final_bake_time_in_minutes,
+ JSON_EXTRACT(detail.Properties, '$.GrowthFactor') as growth_factor,
+ JSON_EXTRACT(detail.Properties, '$.GrowthType') as growth_type,
+ JSON_EXTRACT(detail.Properties, '$.Name') as name,
+ JSON_EXTRACT(detail.Properties, '$.ReplicateTo') as replicate_to,
JSON_EXTRACT(detail.Properties, '$.Tags') as tags,
- JSON_EXTRACT(detail.Properties, '$.Name') as name
+ JSON_EXTRACT(detail.Properties, '$.Id') as id
FROM aws.cloud_control.resources listing
LEFT OUTER JOIN aws.cloud_control.resource detail
ON detail.data__Identifier = listing.Identifier
AND detail.region = listing.region
- WHERE listing.data__TypeName = 'AWS::AppConfig::ConfigurationProfile'
- AND detail.data__TypeName = 'AWS::AppConfig::ConfigurationProfile'
+ WHERE listing.data__TypeName = 'AWS::AppConfig::DeploymentStrategy'
+ AND detail.data__TypeName = 'AWS::AppConfig::DeploymentStrategy'
AND listing.region = 'us-east-1'
fallback:
predicate: sqlDialect == "postgres" && requiredParams == [ data__Identifier ]
@@ -1592,51 +2441,46 @@ components:
SELECT
region,
data__Identifier,
- json_extract_path_text(Properties, 'ConfigurationProfileId') as configuration_profile_id,
- json_extract_path_text(Properties, 'LocationUri') as location_uri,
- json_extract_path_text(Properties, 'Type') as type,
- json_extract_path_text(Properties, 'KmsKeyIdentifier') as kms_key_identifier,
+ json_extract_path_text(Properties, 'DeploymentDurationInMinutes') as deployment_duration_in_minutes,
json_extract_path_text(Properties, 'Description') as description,
- json_extract_path_text(Properties, 'KmsKeyArn') as kms_key_arn,
- json_extract_path_text(Properties, 'Validators') as validators,
- json_extract_path_text(Properties, 'RetrievalRoleArn') as retrieval_role_arn,
- json_extract_path_text(Properties, 'ApplicationId') as application_id,
+ json_extract_path_text(Properties, 'FinalBakeTimeInMinutes') as final_bake_time_in_minutes,
+ json_extract_path_text(Properties, 'GrowthFactor') as growth_factor,
+ json_extract_path_text(Properties, 'GrowthType') as growth_type,
+ json_extract_path_text(Properties, 'Name') as name,
+ json_extract_path_text(Properties, 'ReplicateTo') as replicate_to,
json_extract_path_text(Properties, 'Tags') as tags,
- json_extract_path_text(Properties, 'Name') as name
- FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::AppConfig::ConfigurationProfile'
- AND data__Identifier = '|'
+ json_extract_path_text(Properties, 'Id') as id
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::AppConfig::DeploymentStrategy'
+ AND data__Identifier = ''
AND region = 'us-east-1'
fallback:
predicate: sqlDialect == "postgres"
ddl: |-
SELECT
detail.region,
- json_extract_path_text(detail.Properties, 'ConfigurationProfileId') as configuration_profile_id,
- json_extract_path_text(detail.Properties, 'LocationUri') as location_uri,
- json_extract_path_text(detail.Properties, 'Type') as type,
- json_extract_path_text(detail.Properties, 'KmsKeyIdentifier') as kms_key_identifier,
+ json_extract_path_text(detail.Properties, 'DeploymentDurationInMinutes') as deployment_duration_in_minutes,
json_extract_path_text(detail.Properties, 'Description') as description,
- json_extract_path_text(detail.Properties, 'KmsKeyArn') as kms_key_arn,
- json_extract_path_text(detail.Properties, 'Validators') as validators,
- json_extract_path_text(detail.Properties, 'RetrievalRoleArn') as retrieval_role_arn,
- json_extract_path_text(detail.Properties, 'ApplicationId') as application_id,
+ json_extract_path_text(detail.Properties, 'FinalBakeTimeInMinutes') as final_bake_time_in_minutes,
+ json_extract_path_text(detail.Properties, 'GrowthFactor') as growth_factor,
+ json_extract_path_text(detail.Properties, 'GrowthType') as growth_type,
+ json_extract_path_text(detail.Properties, 'Name') as name,
+ json_extract_path_text(detail.Properties, 'ReplicateTo') as replicate_to,
json_extract_path_text(detail.Properties, 'Tags') as tags,
- json_extract_path_text(detail.Properties, 'Name') as name
+ json_extract_path_text(detail.Properties, 'Id') as id
FROM aws.cloud_control.resources listing
LEFT OUTER JOIN aws.cloud_control.resource detail
ON detail.data__Identifier = listing.Identifier
AND detail.region = listing.region
- WHERE listing.data__TypeName = 'AWS::AppConfig::ConfigurationProfile'
- AND detail.data__TypeName = 'AWS::AppConfig::ConfigurationProfile'
+ WHERE listing.data__TypeName = 'AWS::AppConfig::DeploymentStrategy'
+ AND detail.data__TypeName = 'AWS::AppConfig::DeploymentStrategy'
AND listing.region = 'us-east-1'
- configuration_profiles_list_only:
- name: configuration_profiles_list_only
- id: aws.appconfig.configuration_profiles_list_only
- x-cfn-schema-name: ConfigurationProfile
- x-cfn-type-name: AWS::AppConfig::ConfigurationProfile
+ deployment_strategies_list_only:
+ name: deployment_strategies_list_only
+ id: aws.appconfig.deployment_strategies_list_only
+ x-cfn-schema-name: DeploymentStrategy
+ x-cfn-type-name: AWS::AppConfig::DeploymentStrategy
x-identifiers:
- - ApplicationId
- - ConfigurationProfileId
+ - Id
x-type: cloud_control_view
methods: {}
sqlVerbs:
@@ -1650,24 +2494,22 @@ components:
ddl: |-
SELECT
region,
- JSON_EXTRACT(Properties, '$.ApplicationId') as application_id,
- JSON_EXTRACT(Properties, '$.ConfigurationProfileId') as configuration_profile_id
- FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::AppConfig::ConfigurationProfile'
+ JSON_EXTRACT(Properties, '$.Id') as id
+ FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::AppConfig::DeploymentStrategy'
AND region = 'us-east-1'
fallback:
predicate: sqlDialect == "postgres"
ddl: |-
SELECT
region,
- json_extract_path_text(Properties, 'ApplicationId') as application_id,
- json_extract_path_text(Properties, 'ConfigurationProfileId') as configuration_profile_id
- FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::AppConfig::ConfigurationProfile'
+ json_extract_path_text(Properties, 'Id') as id
+ FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::AppConfig::DeploymentStrategy'
AND region = 'us-east-1'
- configuration_profile_tags:
- name: configuration_profile_tags
- id: aws.appconfig.configuration_profile_tags
- x-cfn-schema-name: ConfigurationProfile
- x-cfn-type-name: AWS::AppConfig::ConfigurationProfile
+ deployment_strategy_tags:
+ name: deployment_strategy_tags
+ id: aws.appconfig.deployment_strategy_tags
+ x-cfn-schema-name: DeploymentStrategy
+ x-cfn-type-name: AWS::AppConfig::DeploymentStrategy
x-type: cloud_control_view
methods: {}
sqlVerbs:
@@ -1683,23 +2525,21 @@ components:
detail.region,
JSON_EXTRACT(json_each.value, '$.Key') as tag_key,
JSON_EXTRACT(json_each.value, '$.Value') as tag_value,
- JSON_EXTRACT(detail.Properties, '$.ConfigurationProfileId') as configuration_profile_id,
- JSON_EXTRACT(detail.Properties, '$.LocationUri') as location_uri,
- JSON_EXTRACT(detail.Properties, '$.Type') as type,
- JSON_EXTRACT(detail.Properties, '$.KmsKeyIdentifier') as kms_key_identifier,
+ JSON_EXTRACT(detail.Properties, '$.DeploymentDurationInMinutes') as deployment_duration_in_minutes,
JSON_EXTRACT(detail.Properties, '$.Description') as description,
- JSON_EXTRACT(detail.Properties, '$.KmsKeyArn') as kms_key_arn,
- JSON_EXTRACT(detail.Properties, '$.Validators') as validators,
- JSON_EXTRACT(detail.Properties, '$.RetrievalRoleArn') as retrieval_role_arn,
- JSON_EXTRACT(detail.Properties, '$.ApplicationId') as application_id,
- JSON_EXTRACT(detail.Properties, '$.Name') as name
+ JSON_EXTRACT(detail.Properties, '$.FinalBakeTimeInMinutes') as final_bake_time_in_minutes,
+ JSON_EXTRACT(detail.Properties, '$.GrowthFactor') as growth_factor,
+ JSON_EXTRACT(detail.Properties, '$.GrowthType') as growth_type,
+ JSON_EXTRACT(detail.Properties, '$.Name') as name,
+ JSON_EXTRACT(detail.Properties, '$.ReplicateTo') as replicate_to,
+ JSON_EXTRACT(detail.Properties, '$.Id') as id
FROM aws.cloud_control.resources listing
LEFT OUTER JOIN aws.cloud_control.resource detail
ON detail.data__Identifier = listing.Identifier
AND detail.region = listing.region
,json_each(JSON_EXTRACT(detail.Properties, '$.Tags'))
- WHERE listing.data__TypeName = 'AWS::AppConfig::ConfigurationProfile'
- AND detail.data__TypeName = 'AWS::AppConfig::ConfigurationProfile'
+ WHERE listing.data__TypeName = 'AWS::AppConfig::DeploymentStrategy'
+ AND detail.data__TypeName = 'AWS::AppConfig::DeploymentStrategy'
AND listing.region = 'us-east-1'
fallback:
predicate: sqlDialect == "postgres"
@@ -1708,23 +2548,21 @@ components:
detail.region,
json_extract_path_text(json_each.value, 'Key') as tag_key,
json_extract_path_text(json_each.value, 'Value') as tag_value,
- json_extract_path_text(detail.Properties, 'ConfigurationProfileId') as configuration_profile_id,
- json_extract_path_text(detail.Properties, 'LocationUri') as location_uri,
- json_extract_path_text(detail.Properties, 'Type') as type,
- json_extract_path_text(detail.Properties, 'KmsKeyIdentifier') as kms_key_identifier,
+ json_extract_path_text(detail.Properties, 'DeploymentDurationInMinutes') as deployment_duration_in_minutes,
json_extract_path_text(detail.Properties, 'Description') as description,
- json_extract_path_text(detail.Properties, 'KmsKeyArn') as kms_key_arn,
- json_extract_path_text(detail.Properties, 'Validators') as validators,
- json_extract_path_text(detail.Properties, 'RetrievalRoleArn') as retrieval_role_arn,
- json_extract_path_text(detail.Properties, 'ApplicationId') as application_id,
- json_extract_path_text(detail.Properties, 'Name') as name
+ json_extract_path_text(detail.Properties, 'FinalBakeTimeInMinutes') as final_bake_time_in_minutes,
+ json_extract_path_text(detail.Properties, 'GrowthFactor') as growth_factor,
+ json_extract_path_text(detail.Properties, 'GrowthType') as growth_type,
+ json_extract_path_text(detail.Properties, 'Name') as name,
+ json_extract_path_text(detail.Properties, 'ReplicateTo') as replicate_to,
+ json_extract_path_text(detail.Properties, 'Id') as id
FROM aws.cloud_control.resources listing
LEFT OUTER JOIN aws.cloud_control.resource detail
ON detail.data__Identifier = listing.Identifier
AND detail.region = listing.region
,json_array_elements_text(json_extract_path_text(detail.Properties, 'Tags'))
- WHERE listing.data__TypeName = 'AWS::AppConfig::ConfigurationProfile'
- AND detail.data__TypeName = 'AWS::AppConfig::ConfigurationProfile'
+ WHERE listing.data__TypeName = 'AWS::AppConfig::DeploymentStrategy'
+ AND detail.data__TypeName = 'AWS::AppConfig::DeploymentStrategy'
AND listing.region = 'us-east-1'
environments:
name: environments
@@ -1793,6 +2631,7 @@ components:
JSON_EXTRACT(Properties, '$.EnvironmentId') as environment_id,
JSON_EXTRACT(Properties, '$.Description') as description,
JSON_EXTRACT(Properties, '$.Monitors') as monitors,
+ JSON_EXTRACT(Properties, '$.DeletionProtectionCheck') as deletion_protection_check,
JSON_EXTRACT(Properties, '$.ApplicationId') as application_id,
JSON_EXTRACT(Properties, '$.Tags') as tags,
JSON_EXTRACT(Properties, '$.Name') as name
@@ -1807,6 +2646,7 @@ components:
JSON_EXTRACT(detail.Properties, '$.EnvironmentId') as environment_id,
JSON_EXTRACT(detail.Properties, '$.Description') as description,
JSON_EXTRACT(detail.Properties, '$.Monitors') as monitors,
+ JSON_EXTRACT(detail.Properties, '$.DeletionProtectionCheck') as deletion_protection_check,
JSON_EXTRACT(detail.Properties, '$.ApplicationId') as application_id,
JSON_EXTRACT(detail.Properties, '$.Tags') as tags,
JSON_EXTRACT(detail.Properties, '$.Name') as name
@@ -1826,6 +2666,7 @@ components:
json_extract_path_text(Properties, 'EnvironmentId') as environment_id,
json_extract_path_text(Properties, 'Description') as description,
json_extract_path_text(Properties, 'Monitors') as monitors,
+ json_extract_path_text(Properties, 'DeletionProtectionCheck') as deletion_protection_check,
json_extract_path_text(Properties, 'ApplicationId') as application_id,
json_extract_path_text(Properties, 'Tags') as tags,
json_extract_path_text(Properties, 'Name') as name
@@ -1840,6 +2681,7 @@ components:
json_extract_path_text(detail.Properties, 'EnvironmentId') as environment_id,
json_extract_path_text(detail.Properties, 'Description') as description,
json_extract_path_text(detail.Properties, 'Monitors') as monitors,
+ json_extract_path_text(detail.Properties, 'DeletionProtectionCheck') as deletion_protection_check,
json_extract_path_text(detail.Properties, 'ApplicationId') as application_id,
json_extract_path_text(detail.Properties, 'Tags') as tags,
json_extract_path_text(detail.Properties, 'Name') as name
@@ -1907,6 +2749,7 @@ components:
JSON_EXTRACT(detail.Properties, '$.EnvironmentId') as environment_id,
JSON_EXTRACT(detail.Properties, '$.Description') as description,
JSON_EXTRACT(detail.Properties, '$.Monitors') as monitors,
+ JSON_EXTRACT(detail.Properties, '$.DeletionProtectionCheck') as deletion_protection_check,
JSON_EXTRACT(detail.Properties, '$.ApplicationId') as application_id,
JSON_EXTRACT(detail.Properties, '$.Name') as name
FROM aws.cloud_control.resources listing
@@ -1927,6 +2770,7 @@ components:
json_extract_path_text(detail.Properties, 'EnvironmentId') as environment_id,
json_extract_path_text(detail.Properties, 'Description') as description,
json_extract_path_text(detail.Properties, 'Monitors') as monitors,
+ json_extract_path_text(detail.Properties, 'DeletionProtectionCheck') as deletion_protection_check,
json_extract_path_text(detail.Properties, 'ApplicationId') as application_id,
json_extract_path_text(detail.Properties, 'Name') as name
FROM aws.cloud_control.resources listing
@@ -2771,6 +3615,90 @@ paths:
schema:
$ref: '#/components/x-cloud-control-schemas/ProgressEvent'
description: Success
+ /?Action=CreateResource&Version=2021-09-30&__Deployment&__detailTransformed=true:
+ parameters:
+ - $ref: '#/components/parameters/X-Amz-Content-Sha256'
+ - $ref: '#/components/parameters/X-Amz-Date'
+ - $ref: '#/components/parameters/X-Amz-Algorithm'
+ - $ref: '#/components/parameters/X-Amz-Credential'
+ - $ref: '#/components/parameters/X-Amz-Security-Token'
+ - $ref: '#/components/parameters/X-Amz-Signature'
+ - $ref: '#/components/parameters/X-Amz-SignedHeaders'
+ post:
+ operationId: CreateDeployment
+ parameters:
+ - description: Action Header
+ in: header
+ name: X-Amz-Target
+ required: false
+ schema:
+ default: CloudApiService.CreateResource
+ enum:
+ - CloudApiService.CreateResource
+ type: string
+ - in: header
+ name: Content-Type
+ required: false
+ schema:
+ default: application/x-amz-json-1.0
+ enum:
+ - application/x-amz-json-1.0
+ type: string
+ requestBody:
+ content:
+ application/x-amz-json-1.0:
+ schema:
+ $ref: '#/components/schemas/CreateDeploymentRequest'
+ required: true
+ responses:
+ '200':
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/x-cloud-control-schemas/ProgressEvent'
+ description: Success
+ /?Action=CreateResource&Version=2021-09-30&__DeploymentStrategy&__detailTransformed=true:
+ parameters:
+ - $ref: '#/components/parameters/X-Amz-Content-Sha256'
+ - $ref: '#/components/parameters/X-Amz-Date'
+ - $ref: '#/components/parameters/X-Amz-Algorithm'
+ - $ref: '#/components/parameters/X-Amz-Credential'
+ - $ref: '#/components/parameters/X-Amz-Security-Token'
+ - $ref: '#/components/parameters/X-Amz-Signature'
+ - $ref: '#/components/parameters/X-Amz-SignedHeaders'
+ post:
+ operationId: CreateDeploymentStrategy
+ parameters:
+ - description: Action Header
+ in: header
+ name: X-Amz-Target
+ required: false
+ schema:
+ default: CloudApiService.CreateResource
+ enum:
+ - CloudApiService.CreateResource
+ type: string
+ - in: header
+ name: Content-Type
+ required: false
+ schema:
+ default: application/x-amz-json-1.0
+ enum:
+ - application/x-amz-json-1.0
+ type: string
+ requestBody:
+ content:
+ application/x-amz-json-1.0:
+ schema:
+ $ref: '#/components/schemas/CreateDeploymentStrategyRequest'
+ required: true
+ responses:
+ '200':
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/x-cloud-control-schemas/ProgressEvent'
+ description: Success
/?Action=CreateResource&Version=2021-09-30&__Environment&__detailTransformed=true:
parameters:
- $ref: '#/components/parameters/X-Amz-Content-Sha256'
diff --git a/providers/src/aws/v00.00.00000/services/appflow.yaml b/providers/src/aws/v00.00.00000/services/appflow.yaml
index 3b9f361c..314a419e 100644
--- a/providers/src/aws/v00.00.00000/services/appflow.yaml
+++ b/providers/src/aws/v00.00.00000/services/appflow.yaml
@@ -416,7 +416,7 @@ components:
ConnectorArn:
description: ' The arn of the connector. The arn is unique for each ConnectorRegistration in your AWS account.'
type: string
- pattern: arn:*:appflow:.*:[0-9]+:.*
+ pattern: arn:.*:appflow:.*:[0-9]+:.*
maxLength: 512
ConnectorProvisioningType:
description: 'The provisioning type of the connector. Currently the only supported value is LAMBDA. '
@@ -2716,7 +2716,7 @@ components:
ConnectorArn:
description: ' The arn of the connector. The arn is unique for each ConnectorRegistration in your AWS account.'
type: string
- pattern: arn:*:appflow:.*:[0-9]+:.*
+ pattern: arn:.*:appflow:.*:[0-9]+:.*
maxLength: 512
ConnectorProvisioningType:
description: 'The provisioning type of the connector. Currently the only supported value is LAMBDA. '
diff --git a/providers/src/aws/v00.00.00000/services/appintegrations.yaml b/providers/src/aws/v00.00.00000/services/appintegrations.yaml
index eaf634f6..dbc9b87e 100644
--- a/providers/src/aws/v00.00.00000/services/appintegrations.yaml
+++ b/providers/src/aws/v00.00.00000/services/appintegrations.yaml
@@ -489,6 +489,7 @@ components:
maxItems: 200
required:
- Name
+ - Namespace
- Description
- ApplicationSourceConfig
x-stackql-resource-name: application
@@ -501,6 +502,7 @@ components:
- Id
x-required-properties:
- Name
+ - Namespace
- Description
- ApplicationSourceConfig
x-tagging:
@@ -509,6 +511,9 @@ components:
tagUpdatable: true
cloudFormationSystemTags: true
tagProperty: /properties/Tags
+ permissions:
+ - app-integrations:TagResource
+ - app-integrations:UntagResource
x-required-permissions:
create:
- app-integrations:CreateApplication
@@ -676,6 +681,9 @@ components:
tagUpdatable: true
cloudFormationSystemTags: true
tagProperty: /properties/Tags
+ permissions:
+ - app-integrations:TagResource
+ - app-integrations:UntagResource
x-required-permissions:
create:
- app-integrations:CreateDataIntegration
@@ -822,6 +830,9 @@ components:
tagUpdatable: true
cloudFormationSystemTags: true
tagProperty: /properties/Tags
+ permissions:
+ - app-integrations:TagResource
+ - app-integrations:UntagResource
x-required-permissions:
create:
- app-integrations:CreateEventIntegration
diff --git a/providers/src/aws/v00.00.00000/services/applicationautoscaling.yaml b/providers/src/aws/v00.00.00000/services/applicationautoscaling.yaml
index 1e4a9fae..df87dc78 100644
--- a/providers/src/aws/v00.00.00000/services/applicationautoscaling.yaml
+++ b/providers/src/aws/v00.00.00000/services/applicationautoscaling.yaml
@@ -608,237 +608,562 @@ components:
- application-autoscaling:DescribeScalableTargets
delete:
- application-autoscaling:DeregisterScalableTarget
- StepScalingPolicyConfiguration:
- description: A step scaling policy.
+ PredictiveScalingMetricDataQuery:
+ description: The metric data to return. Also defines whether this call is returning data for one metric only, or whether it is performing a math expression on the values of returned metric statistics to create a new time series. A time series is a series of data points, each of which is associated with a timestamp.
+ additionalProperties: false
type: object
+ properties:
+ ReturnData:
+ description: |-
+ Indicates whether to return the timestamps and raw data values of this metric.
+ If you use any math expressions, specify ``true`` for this value for only the final math expression that the metric specification is based on. You must specify ``false`` for ``ReturnData`` for all the other metrics and expressions used in the metric specification.
+ If you are only retrieving metrics and not performing any math expressions, do not specify anything for ``ReturnData``. This sets it to its default (``true``).
+ type: boolean
+ Expression:
+ description: |-
+ 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.
+ type: string
+ Label:
+ description: A human-readable label for this metric or expression. This is especially useful if this is a math expression, so that you know what the value represents.
+ type: string
+ MetricStat:
+ description: |-
+ Information about the metric data to return.
+ Conditional: Within each ``MetricDataQuery`` object, you must specify either ``Expression`` or ``MetricStat``, but not both.
+ $ref: '#/components/schemas/PredictiveScalingMetricStat'
+ Id:
+ description: A short name that identifies the object's results in the response. This name must be unique among all ``MetricDataQuery`` objects specified for a single scaling policy. If you are performing math expressions on this set of data, this name represents that data and can serve as a variable in the mathematical expression. The valid characters are letters, numbers, and underscores. The first character must be a lowercase letter.
+ type: string
+ TargetTrackingMetricStat:
+ description: |-
+ This structure defines the CloudWatch metric to return, along with the statistic and unit.
+ ``TargetTrackingMetricStat`` is a property of the [AWS::ApplicationAutoScaling::ScalingPolicy TargetTrackingMetricDataQuery](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-targettrackingmetricdataquery.html) property type.
+ For more information about the CloudWatch terminology below, see [Amazon CloudWatch concepts](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/cloudwatch_concepts.html) in the *Amazon CloudWatch User Guide*.
additionalProperties: false
+ type: object
properties:
- AdjustmentType:
- description: Specifies how the ScalingAdjustment value in a StepAdjustment is interpreted.
+ Stat:
+ description: |-
+ The statistic to return. It can include any CloudWatch statistic or extended statistic. For a list of valid values, see the table in [Statistics](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/cloudwatch_concepts.html#Statistic) in the *Amazon CloudWatch User Guide*.
+ The most commonly used metric for scaling is ``Average``.
type: string
- Cooldown:
- description: The amount of time, in seconds, to wait for a previous scaling activity to take effect.
- type: integer
- MetricAggregationType:
- description: The aggregation type for the CloudWatch metrics. Valid values are Minimum, Maximum, and Average. If the aggregation type is null, the value is treated as Average
+ Metric:
+ description: The CloudWatch metric to return, including the metric name, namespace, and dimensions. To get the exact metric name, namespace, and dimensions, inspect the [Metric](https://docs.aws.amazon.com/AmazonCloudWatch/latest/APIReference/API_Metric.html) object that is returned by a call to [ListMetrics](https://docs.aws.amazon.com/AmazonCloudWatch/latest/APIReference/API_ListMetrics.html).
+ $ref: '#/components/schemas/TargetTrackingMetric'
+ Unit:
+ description: The unit to use for the returned data points. For a complete list of the units that CloudWatch supports, see the [MetricDatum](https://docs.aws.amazon.com/AmazonCloudWatch/latest/APIReference/API_MetricDatum.html) data type in the *Amazon CloudWatch API Reference*.
type: string
- MinAdjustmentMagnitude:
- description: The minimum value to scale by when the adjustment type is PercentChangeInCapacity.
- type: integer
- StepAdjustments:
- description: A set of adjustments that enable you to scale based on the size of the alarm breach.
+ PredictiveScalingMetricDimension:
+ description: Describes the dimension of a metric.
+ additionalProperties: false
+ type: object
+ properties:
+ Value:
+ description: The value of the dimension.
+ type: string
+ Name:
+ description: The name of the dimension.
+ type: string
+ TargetTrackingMetricDimension:
+ description: '``TargetTrackingMetricDimension`` specifies a name/value pair that is part of the identity of a CloudWatch metric for the ``Dimensions`` property of the [AWS::ApplicationAutoScaling::ScalingPolicy TargetTrackingMetric](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-targettrackingmetric.html) property type. Duplicate dimensions are not allowed.'
+ additionalProperties: false
+ type: object
+ properties:
+ Value:
+ description: The value of the dimension.
+ type: string
+ Name:
+ description: The name of the dimension.
+ type: string
+ PredictiveScalingCustomizedCapacityMetric:
+ description: Represents a CloudWatch metric of your choosing for a predictive scaling policy.
+ additionalProperties: false
+ type: object
+ properties:
+ MetricDataQueries:
+ uniqueItems: true
+ description: One or more metric data queries to provide data points for a metric specification.
+ x-insertionOrder: false
type: array
+ items:
+ $ref: '#/components/schemas/PredictiveScalingMetricDataQuery'
+ required:
+ - MetricDataQueries
+ TargetTrackingMetricDataQuery:
+ description: |-
+ The metric data to return. Also defines whether this call is returning data for one metric only, or whether it is performing a math expression on the values of returned metric statistics to create a new time series. A time series is a series of data points, each of which is associated with a timestamp.
+ You can call for a single metric or perform math expressions on multiple metrics. Any expressions used in a metric specification must eventually return a single time series.
+ For more information and examples, see [Create a target tracking scaling policy for Application Auto Scaling using metric math](https://docs.aws.amazon.com/autoscaling/application/userguide/application-auto-scaling-target-tracking-metric-math.html) in the *Application Auto Scaling User Guide*.
+ ``TargetTrackingMetricDataQuery`` is a property of the [AWS::ApplicationAutoScaling::ScalingPolicy CustomizedMetricSpecification](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-customizedmetricspecification.html) property type.
+ additionalProperties: false
+ type: object
+ properties:
+ ReturnData:
+ description: |-
+ Indicates whether to return the timestamps and raw data values of this metric.
+ If you use any math expressions, specify ``true`` for this value for only the final math expression that the metric specification is based on. You must specify ``false`` for ``ReturnData`` for all the other metrics and expressions used in the metric specification.
+ If you are only retrieving metrics and not performing any math expressions, do not specify anything for ``ReturnData``. This sets it to its default (``true``).
+ type: boolean
+ Expression:
+ description: |-
+ 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 ``TargetTrackingMetricDataQuery`` object, you must specify either ``Expression`` or ``MetricStat``, but not both.
+ type: string
+ Label:
+ description: A human-readable label for this metric or expression. This is especially useful if this is a math expression, so that you know what the value represents.
+ type: string
+ MetricStat:
+ description: |-
+ Information about the metric data to return.
+ Conditional: Within each ``MetricDataQuery`` object, you must specify either ``Expression`` or ``MetricStat``, but not both.
+ $ref: '#/components/schemas/TargetTrackingMetricStat'
+ Id:
+ description: A short name that identifies the object's results in the response. This name must be unique among all ``MetricDataQuery`` objects specified for a single scaling policy. If you are performing math expressions on this set of data, this name represents that data and can serve as a variable in the mathematical expression. The valid characters are letters, numbers, and underscores. The first character must be a lowercase letter.
+ type: string
+ PredictiveScalingCustomizedScalingMetric:
+ description: One or more metric data queries to provide data points for a metric specification.
+ additionalProperties: false
+ type: object
+ properties:
+ MetricDataQueries:
uniqueItems: true
+ description: One or more metric data queries to provide data points for a metric specification.
x-insertionOrder: false
+ type: array
items:
- $ref: '#/components/schemas/StepAdjustment'
- TargetTrackingScalingPolicyConfiguration:
- description: A target tracking scaling policy.
+ $ref: '#/components/schemas/PredictiveScalingMetricDataQuery'
+ required:
+ - MetricDataQueries
+ CustomizedMetricSpecification:
+ description: |-
+ Contains customized metric specification information for a target tracking scaling policy for Application Auto Scaling.
+ For information about the available metrics for a service, see [services that publish CloudWatch metrics](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/aws-services-cloudwatch-metrics.html) in the *Amazon CloudWatch User Guide*.
+ To create your customized metric specification:
+ + Add values for each required parameter from CloudWatch. You can use an existing metric, or a new metric that you create. To use your own metric, you must first publish the metric to CloudWatch. For more information, see [Publish custom metrics](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/publishingMetrics.html) in the *Amazon CloudWatch User Guide*.
+ + Choose a metric that changes proportionally with capacity. The value of the metric should increase or decrease in inverse proportion to the number of capacity units. That is, the value of the metric should decrease when capacity increases, and increase when capacity decreases.
+
+ For an example of how creating new metrics can be useful, see [Scaling based on Amazon SQS](https://docs.aws.amazon.com/autoscaling/ec2/userguide/as-using-sqs-queue.html) in the *Amazon EC2 Auto Scaling User Guide*. This topic mentions Auto Scaling groups, but the same scenario for Amazon SQS can apply to the target tracking scaling policies that you create for a Spot Fleet by using Application Auto Scaling.
+ For more information about the CloudWatch terminology below, see [Amazon CloudWatch concepts](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/cloudwatch_concepts.html).
+ ``CustomizedMetricSpecification`` is a property of the [AWS::ApplicationAutoScaling::ScalingPolicy TargetTrackingScalingPolicyConfiguration](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-targettrackingscalingpolicyconfiguration.html) property type.
+ additionalProperties: false
type: object
+ properties:
+ MetricName:
+ description: The name of the metric. To get the exact metric name, namespace, and dimensions, inspect the [Metric](https://docs.aws.amazon.com/AmazonCloudWatch/latest/APIReference/API_Metric.html) object that's returned by a call to [ListMetrics](https://docs.aws.amazon.com/AmazonCloudWatch/latest/APIReference/API_ListMetrics.html).
+ type: string
+ Metrics:
+ uniqueItems: false
+ description: The metrics to include in the target tracking scaling policy, as a metric data query. This can include both raw metric and metric math expressions.
+ x-insertionOrder: false
+ type: array
+ items:
+ $ref: '#/components/schemas/TargetTrackingMetricDataQuery'
+ Statistic:
+ description: The statistic of the metric.
+ type: string
+ Dimensions:
+ uniqueItems: false
+ description: |-
+ The dimensions of the metric.
+ Conditional: If you published your metric with dimensions, you must specify the same dimensions in your scaling policy.
+ x-insertionOrder: false
+ type: array
+ items:
+ $ref: '#/components/schemas/MetricDimension'
+ Unit:
+ description: The unit of the metric. For a complete list of the units that CloudWatch supports, see the [MetricDatum](https://docs.aws.amazon.com/AmazonCloudWatch/latest/APIReference/API_MetricDatum.html) data type in the *Amazon CloudWatch API Reference*.
+ type: string
+ Namespace:
+ description: The namespace of the metric.
+ type: string
+ PredictiveScalingPredefinedLoadMetric:
+ description: |-
+ Describes a load metric for a predictive scaling policy.
+ When returned in the output of ``DescribePolicies``, it indicates that a predictive scaling policy uses individually specified load and scaling metrics instead of a metric pair.
+ additionalProperties: false
+ type: object
+ properties:
+ PredefinedMetricType:
+ description: The metric type.
+ type: string
+ ResourceLabel:
+ description: A label that uniquely identifies a target group.
+ type: string
+ required:
+ - PredefinedMetricType
+ TargetTrackingScalingPolicyConfiguration:
+ description: >-
+ ``TargetTrackingScalingPolicyConfiguration`` is a property of the [AWS::ApplicationAutoScaling::ScalingPolicy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationautoscaling-scalingpolicy.html) resource that specifies a target tracking scaling policy configuration for Application Auto Scaling. Use a target tracking scaling policy to adjust the capacity of the specified scalable target in response to actual workloads, so that resource utilization
+ remains at or near the target utilization value.
+ For more information, see [Target tracking scaling policies](https://docs.aws.amazon.com/autoscaling/application/userguide/application-auto-scaling-target-tracking.html) in the *Application Auto Scaling User Guide*.
additionalProperties: false
+ type: object
properties:
+ ScaleOutCooldown:
+ description: 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/target-tracking-scaling-policy-overview.html#target-tracking-cooldown) in the *Application Auto Scaling User Guide*.
+ type: integer
+ TargetValue:
+ description: The target value for the metric. Although this property accepts numbers of type Double, it won't accept values that are either too small or too large. Values must be in the range of -2^360 to 2^360. The value must be a valid number based on the choice of metric. For example, if the metric is CPU utilization, then the target value is a percent value that represents how much of the CPU can be used before scaling out.
+ type: number
CustomizedMetricSpecification:
description: A customized metric. You can specify either a predefined metric or a customized metric.
$ref: '#/components/schemas/CustomizedMetricSpecification'
DisableScaleIn:
- description: Indicates whether scale in by the target tracking scaling policy is disabled. If the value is true, scale in is disabled and the target tracking scaling policy won't remove capacity from the scalable target. Otherwise, scale in is enabled and the target tracking scaling policy can remove capacity from the scalable target. The default value is false.
+ description: Indicates whether scale in by the target tracking scaling policy is disabled. If the value is ``true``, scale in is disabled and the target tracking scaling policy won't remove capacity from the scalable target. Otherwise, scale in is enabled and the target tracking scaling policy can remove capacity from the scalable target. The default value is ``false``.
type: boolean
+ ScaleInCooldown:
+ description: 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/target-tracking-scaling-policy-overview.html#target-tracking-cooldown) in the *Application Auto Scaling User Guide*.
+ type: integer
PredefinedMetricSpecification:
description: A predefined metric. You can specify either a predefined metric or a customized metric.
$ref: '#/components/schemas/PredefinedMetricSpecification'
- ScaleInCooldown:
- description: The amount of time, in seconds, after a scale-in activity completes before another scale-in activity can start.
- type: integer
- ScaleOutCooldown:
- description: The amount of time, in seconds, to wait for a previous scale-out activity to take effect.
- type: integer
- TargetValue:
- description: The target value for the metric. Although this property accepts numbers of type Double, it won't accept values that are either too small or too large. Values must be in the range of -2^360 to 2^360. The value must be a valid number based on the choice of metric. For example, if the metric is CPU utilization, then the target value is a percent value that represents how much of the CPU can be used before scaling out.
- type: number
required:
- TargetValue
- PredefinedMetricSpecification:
- description: Represents a predefined metric for a target tracking scaling policy to use with Application Auto Scaling.
- type: object
+ PredictiveScalingPredefinedMetricPair:
+ description: Represents a metric pair for a predictive scaling policy.
additionalProperties: false
+ type: object
properties:
PredefinedMetricType:
- description: The metric type. The ALBRequestCountPerTarget metric type applies only to Spot Fleets and ECS services.
+ description: 'Indicates which metrics to use. There are two different types of metrics for each metric type: one is a load metric and one is a scaling metric.'
type: string
ResourceLabel:
- description: Identifies the resource associated with the metric type. You can't specify a resource label unless the metric type is ALBRequestCountPerTarget and there is a target group attached to the Spot Fleet or ECS service.
+ description: A label that uniquely identifies a specific target group from which to determine the total and average request count.
type: string
required:
- PredefinedMetricType
- CustomizedMetricSpecification:
- description: Represents a CloudWatch metric of your choosing for a target tracking scaling policy to use with Application Auto Scaling.
+ StepAdjustment:
+ description: |-
+ ``StepAdjustment`` specifies a step adjustment for the ``StepAdjustments`` property of the [AWS::ApplicationAutoScaling::ScalingPolicy StepScalingPolicyConfiguration](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-stepscalingpolicyconfiguration.html) property type.
+ For the following examples, suppose that you have an alarm with a breach threshold of 50:
+ + To trigger a step adjustment when the metric is greater than or equal to 50 and less than 60, specify a lower bound of 0 and an upper bound of 10.
+ + To trigger a step adjustment when the metric is greater than 40 and less than or equal to 50, specify a lower bound of -10 and an upper bound of 0.
+
+ For more information, see [Step adjustments](https://docs.aws.amazon.com/autoscaling/application/userguide/application-auto-scaling-step-scaling-policies.html#as-scaling-steps) in the *Application Auto Scaling User Guide*.
+ You can find a sample template snippet in the [Examples](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationautoscaling-scalingpolicy.html#aws-resource-applicationautoscaling-scalingpolicy--examples) section of the ``AWS::ApplicationAutoScaling::ScalingPolicy`` documentation.
+ additionalProperties: false
type: object
+ properties:
+ MetricIntervalUpperBound:
+ description: |-
+ The upper bound for the difference between the alarm threshold and the CloudWatch metric. If the metric value is above the breach threshold, the upper bound is exclusive (the metric must be less than the threshold plus the upper bound). Otherwise, it is inclusive (the metric must be less than or equal to the threshold plus the upper bound). A null value indicates positive infinity.
+ You must specify at least one upper or lower bound.
+ type: number
+ MetricIntervalLowerBound:
+ description: |-
+ The lower bound for the difference between the alarm threshold and the CloudWatch metric. If the metric value is above the breach threshold, the lower bound is inclusive (the metric must be greater than or equal to the threshold plus the lower bound). Otherwise, it is exclusive (the metric must be greater than the threshold plus the lower bound). A null value indicates negative infinity.
+ You must specify at least one upper or lower bound.
+ type: number
+ ScalingAdjustment:
+ description: The amount by which to scale. The adjustment is based on the value that you specified in the ``AdjustmentType`` property (either an absolute number or a percentage). A positive value adds to the current capacity and a negative number subtracts from the current capacity.
+ type: integer
+ required:
+ - ScalingAdjustment
+ PredefinedMetricSpecification:
+ description: |-
+ Contains predefined metric specification information for a target tracking scaling policy for Application Auto Scaling.
+ ``PredefinedMetricSpecification`` is a property of the [AWS::ApplicationAutoScaling::ScalingPolicy TargetTrackingScalingPolicyConfiguration](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-targettrackingscalingpolicyconfiguration.html) property type.
additionalProperties: false
+ type: object
properties:
- Dimensions:
- description: The dimensions of the metric.
- type: array
- uniqueItems: false
- x-insertionOrder: false
- items:
- $ref: '#/components/schemas/MetricDimension'
- MetricName:
- description: The name of the metric. To get the exact metric name, namespace, and dimensions, inspect the Metric object that is returned by a call to ListMetrics.
+ PredefinedMetricType:
+ description: The metric type. The ``ALBRequestCountPerTarget`` metric type applies only to Spot fleet requests and ECS services.
type: string
- Namespace:
- description: The namespace of the metric.
+ ResourceLabel:
+ description: |-
+ Identifies the resource associated with the metric type. You can't specify a resource label unless the metric type is ``ALBRequestCountPerTarget`` and there is a target group attached to the Spot Fleet or ECS service.
+ 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// is the final portion of the load balancer ARN
+ + targetgroup// is the final portion of the target group ARN.
+
+ To find the ARN for an Application Load Balancer, use the [DescribeLoadBalancers](https://docs.aws.amazon.com/elasticloadbalancing/latest/APIReference/API_DescribeLoadBalancers.html) API operation. To find the ARN for the target group, use the [DescribeTargetGroups](https://docs.aws.amazon.com/elasticloadbalancing/latest/APIReference/API_DescribeTargetGroups.html) API operation.
type: string
- Statistic:
- description: The statistic of the metric.
+ required:
+ - PredefinedMetricType
+ MetricDimension:
+ description: '``MetricDimension`` specifies a name/value pair that is part of the identity of a CloudWatch metric for the ``Dimensions`` property of the [AWS::ApplicationAutoScaling::ScalingPolicy CustomizedMetricSpecification](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-customizedmetricspecification.html) property type. Duplicate dimensions are not allowed.'
+ additionalProperties: false
+ type: object
+ properties:
+ Value:
+ description: The value of the dimension.
type: string
- Unit:
- description: The unit of the metric. For a complete list of the units that CloudWatch supports, see the MetricDatum data type in the Amazon CloudWatch API Reference.
+ Name:
+ description: The name of the dimension.
type: string
- Metrics:
- description: The metrics to include in the target tracking scaling policy, as a metric data query. This can include both raw metric and metric math expressions.
- type: array
- uniqueItems: false
+ required:
+ - Value
+ - Name
+ PredictiveScalingPolicyConfiguration:
+ description: Represents a predictive scaling policy configuration.
+ additionalProperties: false
+ type: object
+ properties:
+ MaxCapacityBreachBehavior:
+ description: Defines the behavior that should be applied if the forecast capacity approaches or exceeds the maximum capacity. Defaults to ``HonorMaxCapacity`` if not specified.
+ type: string
+ MaxCapacityBuffer:
+ description: |-
+ The size of the capacity buffer to use when the forecast capacity is close to or exceeds the maximum capacity. The value is specified as a percentage relative to the forecast capacity. For example, if the buffer is 10, this means a 10 percent buffer, such that if the forecast capacity is 50, and the maximum capacity is 40, then the effective maximum capacity is 55.
+ Required if the ``MaxCapacityBreachBehavior`` property is set to ``IncreaseMaxCapacity``, and cannot be used otherwise.
+ type: integer
+ Mode:
+ description: The predictive scaling mode. Defaults to ``ForecastOnly`` if not specified.
+ type: string
+ MetricSpecifications:
+ uniqueItems: true
+ description: |-
+ This structure includes the metrics and target utilization to use for predictive scaling.
+ This is an array, but we currently only support a single metric specification. That is, you can specify a target value and a single metric pair, or a target value and one scaling metric and one load metric.
x-insertionOrder: false
+ type: array
items:
- $ref: '#/components/schemas/TargetTrackingMetricDataQuery'
- TargetTrackingMetricDataQuery:
- description: The metric data to return. Also defines whether this call is returning data for one metric only, or whether it is performing a math expression on the values of returned metric statistics to create a new time series. A time series is a series of data points, each of which is associated with a timestamp.
- type: object
+ $ref: '#/components/schemas/PredictiveScalingMetricSpecification'
+ SchedulingBufferTime:
+ description: |-
+ The amount of time, in seconds, that the start time can be advanced.
+ The value must be less than the forecast interval duration of 3600 seconds (60 minutes). Defaults to 300 seconds if not specified.
+ type: integer
+ required:
+ - MetricSpecifications
+ PredictiveScalingPredefinedScalingMetric:
+ description: |-
+ Describes a scaling metric for a predictive scaling policy.
+ When returned in the output of ``DescribePolicies``, it indicates that a predictive scaling policy uses individually specified load and scaling metrics instead of a metric pair.
additionalProperties: false
+ type: object
properties:
- Expression:
- description: The math expression to perform on the returned data, if this object is performing a math expression.
- type: string
- Id:
- description: A short name that identifies the object's results in the response.
+ PredefinedMetricType:
+ description: The metric type.
type: string
- Label:
- description: A human-readable label for this metric or expression. This is especially useful if this is a math expression, so that you know what the value represents.
+ ResourceLabel:
+ description: A label that uniquely identifies a specific target group from which to determine the average request count.
type: string
- ReturnData:
- description: Indicates whether to return the timestamps and raw data values of this metric.
- type: boolean
- MetricStat:
- description: Information about the metric data to return.
- $ref: '#/components/schemas/TargetTrackingMetricStat'
- TargetTrackingMetricStat:
- description: This structure defines the CloudWatch metric to return, along with the statistic, period, and unit.
+ required:
+ - PredefinedMetricType
+ PredictiveScalingMetricSpecification:
+ description: |-
+ This structure specifies the metrics and target utilization settings for a predictive scaling policy.
+ You must specify either a metric pair, or a load metric and a scaling metric individually. Specifying a metric pair instead of individual metrics provides a simpler way to configure metrics for a scaling policy. You choose the metric pair, and the policy automatically knows the correct sum and average statistics to use for the load metric and the scaling metric.
+ additionalProperties: false
type: object
+ properties:
+ CustomizedLoadMetricSpecification:
+ description: The customized load metric specification.
+ $ref: '#/components/schemas/PredictiveScalingCustomizedLoadMetric'
+ PredefinedLoadMetricSpecification:
+ description: The predefined load metric specification.
+ $ref: '#/components/schemas/PredictiveScalingPredefinedLoadMetric'
+ TargetValue:
+ description: Specifies the target utilization.
+ type: number
+ PredefinedScalingMetricSpecification:
+ description: The predefined scaling metric specification.
+ $ref: '#/components/schemas/PredictiveScalingPredefinedScalingMetric'
+ CustomizedCapacityMetricSpecification:
+ description: The customized capacity metric specification.
+ $ref: '#/components/schemas/PredictiveScalingCustomizedCapacityMetric'
+ CustomizedScalingMetricSpecification:
+ description: The customized scaling metric specification.
+ $ref: '#/components/schemas/PredictiveScalingCustomizedScalingMetric'
+ PredefinedMetricPairSpecification:
+ description: The predefined metric pair specification that determines the appropriate scaling metric and load metric to use.
+ $ref: '#/components/schemas/PredictiveScalingPredefinedMetricPair'
+ required:
+ - TargetValue
+ PredictiveScalingMetric:
+ description: Describes the scaling metric.
additionalProperties: false
+ type: object
properties:
- Metric:
- description: 'The CloudWatch metric to return, including the metric name, namespace, and dimensions. '
- $ref: '#/components/schemas/TargetTrackingMetric'
- Stat:
- description: The statistic to return. It can include any CloudWatch statistic or extended statistic.
+ MetricName:
+ description: The name of the metric.
type: string
- Unit:
- description: The unit to use for the returned data points.
+ Dimensions:
+ uniqueItems: false
+ description: Describes the dimensions of the metric.
+ x-insertionOrder: false
+ type: array
+ items:
+ $ref: '#/components/schemas/PredictiveScalingMetricDimension'
+ Namespace:
+ description: The namespace of the metric.
type: string
- TargetTrackingMetric:
- description: Represents a specific metric.
+ PredictiveScalingCustomizedLoadMetric:
+ description: The customized load metric specification.
+ additionalProperties: false
type: object
+ properties:
+ MetricDataQueries:
+ uniqueItems: true
+ description: ''
+ x-insertionOrder: false
+ type: array
+ items:
+ $ref: '#/components/schemas/PredictiveScalingMetricDataQuery'
+ required:
+ - MetricDataQueries
+ TargetTrackingMetric:
+ description: |-
+ Represents a specific metric for a target tracking scaling policy for Application Auto Scaling.
+ Metric is a property of the [AWS::ApplicationAutoScaling::ScalingPolicy TargetTrackingMetricStat](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-targettrackingmetricstat.html) property type.
additionalProperties: false
+ type: object
properties:
+ MetricName:
+ description: The name of the metric.
+ type: string
Dimensions:
- description: The dimensions for the metric.
- type: array
uniqueItems: false
+ description: |-
+ The dimensions for the metric. For the list of available dimensions, see the AWS documentation available from the table in [services that publish CloudWatch metrics](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/aws-services-cloudwatch-metrics.html) in the *Amazon CloudWatch User Guide*.
+ Conditional: If you published your metric with dimensions, you must specify the same dimensions in your scaling policy.
x-insertionOrder: false
+ type: array
items:
$ref: '#/components/schemas/TargetTrackingMetricDimension'
- MetricName:
- description: The name of the metric.
- type: string
Namespace:
- description: The namespace of the metric.
+ description: The namespace of the metric. For more information, see the table in [services that publish CloudWatch metrics](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/aws-services-cloudwatch-metrics.html) in the *Amazon CloudWatch User Guide*.
type: string
- TargetTrackingMetricDimension:
- description: Describes the dimension of a metric.
- type: object
+ PredictiveScalingMetricStat:
+ description: This structure defines the CloudWatch metric to return, along with the statistic and unit.
additionalProperties: false
+ type: object
properties:
- Name:
- description: The name of the dimension.
+ Stat:
+ description: |-
+ The statistic to return. It can include any CloudWatch statistic or extended statistic. For a list of valid values, see the table in [Statistics](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/cloudwatch_concepts.html#Statistic) in the *Amazon CloudWatch User Guide*.
+ The most commonly used metrics for predictive scaling are ``Average`` and ``Sum``.
type: string
- Value:
- description: The value of the dimension.
+ Metric:
+ description: The CloudWatch metric to return, including the metric name, namespace, and dimensions. To get the exact metric name, namespace, and dimensions, inspect the [Metric](https://docs.aws.amazon.com/AmazonCloudWatch/latest/APIReference/API_Metric.html) object that is returned by a call to [ListMetrics](https://docs.aws.amazon.com/AmazonCloudWatch/latest/APIReference/API_ListMetrics.html).
+ $ref: '#/components/schemas/PredictiveScalingMetric'
+ Unit:
+ description: The unit to use for the returned data points. For a complete list of the units that CloudWatch supports, see the [MetricDatum](https://docs.aws.amazon.com/AmazonCloudWatch/latest/APIReference/API_MetricDatum.html) data type in the *Amazon CloudWatch API Reference*.
type: string
- StepAdjustment:
- description: Represents a step adjustment for a StepScalingPolicyConfiguration. Describes an adjustment based on the difference between the value of the aggregated CloudWatch metric and the breach threshold that you've defined for the alarm.
- type: object
+ StepScalingPolicyConfiguration:
+ description: |-
+ ``StepScalingPolicyConfiguration`` is a property of the [AWS::ApplicationAutoScaling::ScalingPolicy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationautoscaling-scalingpolicy.html) resource that specifies a step scaling policy configuration for Application Auto Scaling.
+ For more information, see [Step scaling policies](https://docs.aws.amazon.com/autoscaling/application/userguide/application-auto-scaling-step-scaling-policies.html) in the *Application Auto Scaling User Guide*.
additionalProperties: false
- properties:
- MetricIntervalLowerBound:
- description: The lower bound for the difference between the alarm threshold and the CloudWatch metric. If the metric value is above the breach threshold, the lower bound is inclusive (the metric must be greater than or equal to the threshold plus the lower bound). Otherwise, it is exclusive (the metric must be greater than the threshold plus the lower bound). A null value indicates negative infinity.
- type: number
- MetricIntervalUpperBound:
- description: The upper bound for the difference between the alarm threshold and the CloudWatch metric. If the metric value is above the breach threshold, the upper bound is exclusive (the metric must be less than the threshold plus the upper bound). Otherwise, it is inclusive (the metric must be less than or equal to the threshold plus the upper bound). A null value indicates positive infinity.
- type: number
- ScalingAdjustment:
- description: The amount by which to scale, based on the specified adjustment type. A positive value adds to the current capacity while a negative number removes from the current capacity. For exact capacity, you must specify a positive value.
- type: integer
- required:
- - ScalingAdjustment
- MetricDimension:
- description: Describes the dimension names and values associated with a metric.
type: object
- additionalProperties: false
properties:
- Name:
- description: The name of the dimension.
+ MetricAggregationType:
+ description: The aggregation type for the CloudWatch metrics. Valid values are ``Minimum``, ``Maximum``, and ``Average``. If the aggregation type is null, the value is treated as ``Average``.
type: string
- Value:
- description: The value of the dimension.
+ Cooldown:
+ description: 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/step-scaling-policy-overview.html#step-scaling-cooldown) in the *Application Auto Scaling User Guide*.
+ type: integer
+ StepAdjustments:
+ uniqueItems: true
+ description: |-
+ A set of adjustments that enable you to scale based on the size of the alarm breach.
+ At least one step adjustment is required if you are adding a new step scaling policy configuration.
+ x-insertionOrder: false
+ type: array
+ items:
+ $ref: '#/components/schemas/StepAdjustment'
+ MinAdjustmentMagnitude:
+ description: The minimum value to scale by when the adjustment type is ``PercentChangeInCapacity``. For example, suppose that you create a step scaling policy to scale out an Amazon ECS service by 25 percent and you specify a ``MinAdjustmentMagnitude`` of 2. If the service has 4 tasks and the scaling policy is performed, 25 percent of 4 is 1. However, because you specified a ``MinAdjustmentMagnitude`` of 2, Application Auto Scaling scales out the service by 2 tasks.
+ type: integer
+ AdjustmentType:
+ description: Specifies whether the ``ScalingAdjustment`` value in the ``StepAdjustment`` property is an absolute number or a percentage of the current capacity.
type: string
- required:
- - Value
- - Name
ScalingPolicy:
type: object
properties:
- PolicyName:
- description: |-
- The name of the scaling policy.
-
- Updates to the name of a target tracking scaling policy are not supported, unless you also update the metric used for scaling. To change only a target tracking scaling policy's name, first delete the policy by removing the existing AWS::ApplicationAutoScaling::ScalingPolicy resource from the template and updating the stack. Then, recreate the resource with the same settings and a different name.
- type: string
PolicyType:
description: |-
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.
+ 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.
type: string
ResourceId:
- description: The identifier of the resource associated with the scaling policy. This string consists of the resource type and unique identifier.
- type: string
- ScalableDimension:
- description: The scalable dimension. This string consists of the service namespace, resource type, and scaling property.
+ description: |-
+ 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/my-cluster/my-service``.
+ + 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](https://docs.aws.amazon.com/https://github.com/aws/aws-auto-scaling-custom-resource).
+ + 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``.
+ + Pool of WorkSpaces - The resource type is ``workspacespool`` and the unique identifier is the pool ID. Example: ``workspacespool/wspool-123456``.
type: string
ScalingTargetId:
- description: The CloudFormation-generated ID of an Application Auto Scaling scalable target. For more information about the ID, see the Return Value section of the AWS::ApplicationAutoScaling::ScalableTarget resource.
+ description: |-
+ The CloudFormation-generated ID of an Application Auto Scaling scalable target. For more information about the ID, see the Return Value section of the ``AWS::ApplicationAutoScaling::ScalableTarget`` resource.
+ You must specify either the ``ScalingTargetId`` property, or the ``ResourceId``, ``ScalableDimension``, and ``ServiceNamespace`` properties, but not both.
+ type: string
+ PolicyName:
+ description: |-
+ The name of the scaling policy.
+ Updates to the name of a target tracking scaling policy are not supported, unless you also update the metric used for scaling. To change only a target tracking scaling policy's name, first delete the policy by removing the existing ``AWS::ApplicationAutoScaling::ScalingPolicy`` resource from the template and updating the stack. Then, recreate the resource with the same settings and a different name.
type: string
ServiceNamespace:
- description: The namespace of the AWS service that provides the resource, or a custom-resource.
+ description: The namespace of the AWS service that provides the resource, or a ``custom-resource``.
+ type: string
+ ScalableDimension:
+ description: |-
+ The scalable dimension. This string consists of the service namespace, resource type, and scaling property.
+ + ``ecs:service:DesiredCount`` - The 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 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.
+ + ``workspaces:workspacespool:DesiredUserSessions`` - The number of user sessions for the WorkSpaces in the pool.
type: string
- StepScalingPolicyConfiguration:
- description: A step scaling policy.
- $ref: '#/components/schemas/StepScalingPolicyConfiguration'
TargetTrackingScalingPolicyConfiguration:
description: A target tracking scaling policy.
$ref: '#/components/schemas/TargetTrackingScalingPolicyConfiguration'
Arn:
- description: ARN is a read only property for the resource.
+ description: ''
type: string
+ StepScalingPolicyConfiguration:
+ description: A step scaling policy.
+ $ref: '#/components/schemas/StepScalingPolicyConfiguration'
+ PredictiveScalingPolicyConfiguration:
+ description: The predictive scaling policy configuration.
+ $ref: '#/components/schemas/PredictiveScalingPolicyConfiguration'
required:
- PolicyName
- PolicyType
x-stackql-resource-name: scaling_policy
- description: Resource Type definition for AWS::ApplicationAutoScaling::ScalingPolicy
+ description: |-
+ The ``AWS::ApplicationAutoScaling::ScalingPolicy`` resource defines a scaling policy that Application Auto Scaling uses to adjust the capacity of a scalable target.
+ For more information, see [Target tracking scaling policies](https://docs.aws.amazon.com/autoscaling/application/userguide/application-auto-scaling-target-tracking.html) and [Step scaling policies](https://docs.aws.amazon.com/autoscaling/application/userguide/application-auto-scaling-step-scaling-policies.html) in the *Application Auto Scaling User Guide*.
x-type-name: AWS::ApplicationAutoScaling::ScalingPolicy
x-stackql-primary-identifier:
- Arn
@@ -863,19 +1188,21 @@ components:
tagUpdatable: false
cloudFormationSystemTags: false
x-required-permissions:
+ read:
+ - application-autoscaling:DescribeScalingPolicies
create:
- application-autoscaling:DescribeScalingPolicies
- application-autoscaling:PutScalingPolicy
- read:
- - application-autoscaling:DescribeScalingPolicies
+ - cloudwatch:GetMetricData
update:
- application-autoscaling:DescribeScalingPolicies
- application-autoscaling:PutScalingPolicy
+ - cloudwatch:GetMetricData
+ list:
+ - application-autoscaling:DescribeScalingPolicies
delete:
- application-autoscaling:DescribeScalingPolicies
- application-autoscaling:DeleteScalingPolicy
- list:
- - application-autoscaling:DescribeScalingPolicies
CreateScalableTargetRequest:
properties:
ClientToken:
@@ -994,43 +1321,88 @@ components:
DesiredState:
type: object
properties:
- PolicyName:
- description: |-
- The name of the scaling policy.
-
- Updates to the name of a target tracking scaling policy are not supported, unless you also update the metric used for scaling. To change only a target tracking scaling policy's name, first delete the policy by removing the existing AWS::ApplicationAutoScaling::ScalingPolicy resource from the template and updating the stack. Then, recreate the resource with the same settings and a different name.
- type: string
PolicyType:
description: |-
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.
+ 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.
type: string
ResourceId:
- description: The identifier of the resource associated with the scaling policy. This string consists of the resource type and unique identifier.
- type: string
- ScalableDimension:
- description: The scalable dimension. This string consists of the service namespace, resource type, and scaling property.
+ description: |-
+ 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/my-cluster/my-service``.
+ + 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](https://docs.aws.amazon.com/https://github.com/aws/aws-auto-scaling-custom-resource).
+ + 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``.
+ + Pool of WorkSpaces - The resource type is ``workspacespool`` and the unique identifier is the pool ID. Example: ``workspacespool/wspool-123456``.
type: string
ScalingTargetId:
- description: The CloudFormation-generated ID of an Application Auto Scaling scalable target. For more information about the ID, see the Return Value section of the AWS::ApplicationAutoScaling::ScalableTarget resource.
+ description: |-
+ The CloudFormation-generated ID of an Application Auto Scaling scalable target. For more information about the ID, see the Return Value section of the ``AWS::ApplicationAutoScaling::ScalableTarget`` resource.
+ You must specify either the ``ScalingTargetId`` property, or the ``ResourceId``, ``ScalableDimension``, and ``ServiceNamespace`` properties, but not both.
+ type: string
+ PolicyName:
+ description: |-
+ The name of the scaling policy.
+ Updates to the name of a target tracking scaling policy are not supported, unless you also update the metric used for scaling. To change only a target tracking scaling policy's name, first delete the policy by removing the existing ``AWS::ApplicationAutoScaling::ScalingPolicy`` resource from the template and updating the stack. Then, recreate the resource with the same settings and a different name.
type: string
ServiceNamespace:
- description: The namespace of the AWS service that provides the resource, or a custom-resource.
+ description: The namespace of the AWS service that provides the resource, or a ``custom-resource``.
+ type: string
+ ScalableDimension:
+ description: |-
+ The scalable dimension. This string consists of the service namespace, resource type, and scaling property.
+ + ``ecs:service:DesiredCount`` - The 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 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.
+ + ``workspaces:workspacespool:DesiredUserSessions`` - The number of user sessions for the WorkSpaces in the pool.
type: string
- StepScalingPolicyConfiguration:
- description: A step scaling policy.
- $ref: '#/components/schemas/StepScalingPolicyConfiguration'
TargetTrackingScalingPolicyConfiguration:
description: A target tracking scaling policy.
$ref: '#/components/schemas/TargetTrackingScalingPolicyConfiguration'
Arn:
- description: ARN is a read only property for the resource.
+ description: ''
type: string
+ StepScalingPolicyConfiguration:
+ description: A step scaling policy.
+ $ref: '#/components/schemas/StepScalingPolicyConfiguration'
+ PredictiveScalingPolicyConfiguration:
+ description: The predictive scaling policy configuration.
+ $ref: '#/components/schemas/PredictiveScalingPolicyConfiguration'
x-stackQL-stringOnly: true
x-title: CreateScalingPolicyRequest
type: object
@@ -1281,15 +1653,16 @@ components:
SELECT
region,
data__Identifier,
- JSON_EXTRACT(Properties, '$.PolicyName') as policy_name,
JSON_EXTRACT(Properties, '$.PolicyType') as policy_type,
JSON_EXTRACT(Properties, '$.ResourceId') as resource_id,
- JSON_EXTRACT(Properties, '$.ScalableDimension') as scalable_dimension,
JSON_EXTRACT(Properties, '$.ScalingTargetId') as scaling_target_id,
+ JSON_EXTRACT(Properties, '$.PolicyName') as policy_name,
JSON_EXTRACT(Properties, '$.ServiceNamespace') as service_namespace,
- JSON_EXTRACT(Properties, '$.StepScalingPolicyConfiguration') as step_scaling_policy_configuration,
+ JSON_EXTRACT(Properties, '$.ScalableDimension') as scalable_dimension,
JSON_EXTRACT(Properties, '$.TargetTrackingScalingPolicyConfiguration') as target_tracking_scaling_policy_configuration,
- JSON_EXTRACT(Properties, '$.Arn') as arn
+ JSON_EXTRACT(Properties, '$.Arn') as arn,
+ JSON_EXTRACT(Properties, '$.StepScalingPolicyConfiguration') as step_scaling_policy_configuration,
+ JSON_EXTRACT(Properties, '$.PredictiveScalingPolicyConfiguration') as predictive_scaling_policy_configuration
FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::ApplicationAutoScaling::ScalingPolicy'
AND data__Identifier = '|'
AND region = 'us-east-1'
@@ -1298,15 +1671,16 @@ components:
ddl: |-
SELECT
detail.region,
- JSON_EXTRACT(detail.Properties, '$.PolicyName') as policy_name,
JSON_EXTRACT(detail.Properties, '$.PolicyType') as policy_type,
JSON_EXTRACT(detail.Properties, '$.ResourceId') as resource_id,
- JSON_EXTRACT(detail.Properties, '$.ScalableDimension') as scalable_dimension,
JSON_EXTRACT(detail.Properties, '$.ScalingTargetId') as scaling_target_id,
+ JSON_EXTRACT(detail.Properties, '$.PolicyName') as policy_name,
JSON_EXTRACT(detail.Properties, '$.ServiceNamespace') as service_namespace,
- JSON_EXTRACT(detail.Properties, '$.StepScalingPolicyConfiguration') as step_scaling_policy_configuration,
+ JSON_EXTRACT(detail.Properties, '$.ScalableDimension') as scalable_dimension,
JSON_EXTRACT(detail.Properties, '$.TargetTrackingScalingPolicyConfiguration') as target_tracking_scaling_policy_configuration,
- JSON_EXTRACT(detail.Properties, '$.Arn') as arn
+ JSON_EXTRACT(detail.Properties, '$.Arn') as arn,
+ JSON_EXTRACT(detail.Properties, '$.StepScalingPolicyConfiguration') as step_scaling_policy_configuration,
+ JSON_EXTRACT(detail.Properties, '$.PredictiveScalingPolicyConfiguration') as predictive_scaling_policy_configuration
FROM aws.cloud_control.resources listing
LEFT OUTER JOIN aws.cloud_control.resource detail
ON detail.data__Identifier = listing.Identifier
@@ -1320,15 +1694,16 @@ components:
SELECT
region,
data__Identifier,
- json_extract_path_text(Properties, 'PolicyName') as policy_name,
json_extract_path_text(Properties, 'PolicyType') as policy_type,
json_extract_path_text(Properties, 'ResourceId') as resource_id,
- json_extract_path_text(Properties, 'ScalableDimension') as scalable_dimension,
json_extract_path_text(Properties, 'ScalingTargetId') as scaling_target_id,
+ json_extract_path_text(Properties, 'PolicyName') as policy_name,
json_extract_path_text(Properties, 'ServiceNamespace') as service_namespace,
- json_extract_path_text(Properties, 'StepScalingPolicyConfiguration') as step_scaling_policy_configuration,
+ json_extract_path_text(Properties, 'ScalableDimension') as scalable_dimension,
json_extract_path_text(Properties, 'TargetTrackingScalingPolicyConfiguration') as target_tracking_scaling_policy_configuration,
- json_extract_path_text(Properties, 'Arn') as arn
+ json_extract_path_text(Properties, 'Arn') as arn,
+ json_extract_path_text(Properties, 'StepScalingPolicyConfiguration') as step_scaling_policy_configuration,
+ json_extract_path_text(Properties, 'PredictiveScalingPolicyConfiguration') as predictive_scaling_policy_configuration
FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::ApplicationAutoScaling::ScalingPolicy'
AND data__Identifier = '|'
AND region = 'us-east-1'
@@ -1337,15 +1712,16 @@ components:
ddl: |-
SELECT
detail.region,
- json_extract_path_text(detail.Properties, 'PolicyName') as policy_name,
json_extract_path_text(detail.Properties, 'PolicyType') as policy_type,
json_extract_path_text(detail.Properties, 'ResourceId') as resource_id,
- json_extract_path_text(detail.Properties, 'ScalableDimension') as scalable_dimension,
json_extract_path_text(detail.Properties, 'ScalingTargetId') as scaling_target_id,
+ json_extract_path_text(detail.Properties, 'PolicyName') as policy_name,
json_extract_path_text(detail.Properties, 'ServiceNamespace') as service_namespace,
- json_extract_path_text(detail.Properties, 'StepScalingPolicyConfiguration') as step_scaling_policy_configuration,
+ json_extract_path_text(detail.Properties, 'ScalableDimension') as scalable_dimension,
json_extract_path_text(detail.Properties, 'TargetTrackingScalingPolicyConfiguration') as target_tracking_scaling_policy_configuration,
- json_extract_path_text(detail.Properties, 'Arn') as arn
+ json_extract_path_text(detail.Properties, 'Arn') as arn,
+ json_extract_path_text(detail.Properties, 'StepScalingPolicyConfiguration') as step_scaling_policy_configuration,
+ json_extract_path_text(detail.Properties, 'PredictiveScalingPolicyConfiguration') as predictive_scaling_policy_configuration
FROM aws.cloud_control.resources listing
LEFT OUTER JOIN aws.cloud_control.resource detail
ON detail.data__Identifier = listing.Identifier
diff --git a/providers/src/aws/v00.00.00000/services/applicationinsights.yaml b/providers/src/aws/v00.00.00000/services/applicationinsights.yaml
index 95d75585..b2ffd5f2 100644
--- a/providers/src/aws/v00.00.00000/services/applicationinsights.yaml
+++ b/providers/src/aws/v00.00.00000/services/applicationinsights.yaml
@@ -863,6 +863,12 @@ components:
minLength: 20
maxLength: 300
pattern: ^arn:aws(-[\w]+)*:[\w\d-]+:([\w\d-]*)?:[\w\d_-]*([:/].+)*$
+ SNSNotificationArn:
+ description: Application Insights sends notifications to this SNS topic whenever there is a problem update in the associated application.
+ type: string
+ minLength: 20
+ maxLength: 300
+ pattern: ^arn:aws(-[\w]+)*:[\w\d-]+:([\w\d-]*)?:[\w\d_-]*([:/].+)*$
Tags:
description: The tags of Application Insights application.
type: array
@@ -918,23 +924,98 @@ components:
- CustomComponents
- GroupingType
- OpsItemSNSTopicArn
+ - SNSNotificationArn
- AttachMissingPermission
x-read-only-properties:
- ApplicationARN
x-required-properties:
- ResourceGroupName
- x-taggable: true
+ x-tagging:
+ taggable: true
+ tagOnCreate: true
+ tagUpdatable: true
+ cloudFormationSystemTags: false
+ tagProperty: /properties/Tags
+ permissions:
+ - applicationinsights:ListTagsForResource
+ - applicationinsights:TagResource
+ - applicationinsights:UntagResource
x-required-permissions:
create:
- - '*'
+ - applicationinsights:CreateApplication
+ - applicationinsights:DescribeApplication
+ - applicationinsights:CreateComponent
+ - applicationinsights:DescribeComponent
+ - applicationinsights:CreateLogPattern
+ - applicationinsights:DescribeLogPattern
+ - applicationinsights:DescribeComponentConfigurationRecommendation
+ - applicationinsights:UpdateComponentConfiguration
+ - applicationinsights:ListComponents
+ - applicationinsights:TagResource
+ - ec2:DescribeInstances
+ - ec2:DescribeVolumes
+ - rds:DescribeDBInstances
+ - rds:DescribeDBClusters
+ - sqs:ListQueues
+ - elasticloadbalancing:DescribeLoadBalancers
+ - elasticloadbalancing:DescribeTargetGroups
+ - elasticloadbalancing:DescribeTargetHealth
+ - autoscaling:DescribeAutoScalingGroups
+ - lambda:ListFunctions
+ - dynamodb:ListTables
+ - s3:ListAllMyBuckets
+ - sns:ListTopics
+ - states:ListStateMachines
+ - apigateway:GET
+ - ecs:ListClusters
+ - ecs:DescribeTaskDefinition
+ - ecs:ListServices
+ - ecs:ListTasks
+ - eks:ListClusters
+ - eks:ListNodegroups
+ - fsx:DescribeFileSystems
+ - logs:DescribeLogGroups
+ - elasticfilesystem:DescribeFileSystems
read:
- - '*'
+ - applicationinsights:DescribeApplication
+ - applicationinsights:ListTagsForResource
+ - applicationinsights:DescribeComponent
+ - applicationinsights:ListComponents
+ - applicationinsights:DescribeLogPattern
+ - applicationinsights:ListLogPatterns
+ - applicationinsights:ListLogPatternSets
update:
- - '*'
+ - applicationinsights:CreateApplication
+ - applicationinsights:DescribeApplication
+ - applicationinsights:UpdateApplication
+ - applicationinsights:TagResource
+ - applicationinsights:UntagResource
+ - applicationinsights:ListTagsForResource
+ - applicationinsights:CreateComponent
+ - applicationinsights:DescribeComponent
+ - applicationinsights:DeleteComponent
+ - applicationinsights:ListComponents
+ - applicationinsights:CreateLogPattern
+ - applicationinsights:DeleteLogPattern
+ - applicationinsights:DescribeLogPattern
+ - applicationinsights:ListLogPatterns
+ - applicationinsights:ListLogPatternSets
+ - applicationinsights:UpdateLogPattern
+ - applicationinsights:DescribeComponentConfiguration
+ - applicationinsights:DescribeComponentConfigurationRecommendation
+ - applicationinsights:UpdateComponentConfiguration
delete:
- - '*'
+ - applicationinsights:DeleteApplication
+ - applicationinsights:DescribeApplication
list:
- - '*'
+ - applicationinsights:ListApplications
+ - applicationinsights:DescribeApplication
+ - applicationinsights:ListTagsForResource
+ - applicationinsights:DescribeComponent
+ - applicationinsights:ListComponents
+ - applicationinsights:DescribeLogPattern
+ - applicationinsights:ListLogPatterns
+ - applicationinsights:ListLogPatternSets
CreateApplicationRequest:
properties:
ClientToken:
@@ -969,6 +1050,12 @@ components:
minLength: 20
maxLength: 300
pattern: ^arn:aws(-[\w]+)*:[\w\d-]+:([\w\d-]*)?:[\w\d_-]*([:/].+)*$
+ SNSNotificationArn:
+ description: Application Insights sends notifications to this SNS topic whenever there is a problem update in the associated application.
+ type: string
+ minLength: 20
+ maxLength: 300
+ pattern: ^arn:aws(-[\w]+)*:[\w\d-]+:([\w\d-]*)?:[\w\d_-]*([:/].+)*$
Tags:
description: The tags of Application Insights application.
type: array
@@ -1088,6 +1175,7 @@ components:
JSON_EXTRACT(Properties, '$.CWEMonitorEnabled') as cwe_monitor_enabled,
JSON_EXTRACT(Properties, '$.OpsCenterEnabled') as ops_center_enabled,
JSON_EXTRACT(Properties, '$.OpsItemSNSTopicArn') as ops_item_sns_topic_arn,
+ JSON_EXTRACT(Properties, '$.SNSNotificationArn') as sns_notification_arn,
JSON_EXTRACT(Properties, '$.Tags') as tags,
JSON_EXTRACT(Properties, '$.CustomComponents') as custom_components,
JSON_EXTRACT(Properties, '$.LogPatternSets') as log_pattern_sets,
@@ -1108,6 +1196,7 @@ components:
JSON_EXTRACT(detail.Properties, '$.CWEMonitorEnabled') as cwe_monitor_enabled,
JSON_EXTRACT(detail.Properties, '$.OpsCenterEnabled') as ops_center_enabled,
JSON_EXTRACT(detail.Properties, '$.OpsItemSNSTopicArn') as ops_item_sns_topic_arn,
+ JSON_EXTRACT(detail.Properties, '$.SNSNotificationArn') as sns_notification_arn,
JSON_EXTRACT(detail.Properties, '$.Tags') as tags,
JSON_EXTRACT(detail.Properties, '$.CustomComponents') as custom_components,
JSON_EXTRACT(detail.Properties, '$.LogPatternSets') as log_pattern_sets,
@@ -1133,6 +1222,7 @@ components:
json_extract_path_text(Properties, 'CWEMonitorEnabled') as cwe_monitor_enabled,
json_extract_path_text(Properties, 'OpsCenterEnabled') as ops_center_enabled,
json_extract_path_text(Properties, 'OpsItemSNSTopicArn') as ops_item_sns_topic_arn,
+ json_extract_path_text(Properties, 'SNSNotificationArn') as sns_notification_arn,
json_extract_path_text(Properties, 'Tags') as tags,
json_extract_path_text(Properties, 'CustomComponents') as custom_components,
json_extract_path_text(Properties, 'LogPatternSets') as log_pattern_sets,
@@ -1153,6 +1243,7 @@ components:
json_extract_path_text(detail.Properties, 'CWEMonitorEnabled') as cwe_monitor_enabled,
json_extract_path_text(detail.Properties, 'OpsCenterEnabled') as ops_center_enabled,
json_extract_path_text(detail.Properties, 'OpsItemSNSTopicArn') as ops_item_sns_topic_arn,
+ json_extract_path_text(detail.Properties, 'SNSNotificationArn') as sns_notification_arn,
json_extract_path_text(detail.Properties, 'Tags') as tags,
json_extract_path_text(detail.Properties, 'CustomComponents') as custom_components,
json_extract_path_text(detail.Properties, 'LogPatternSets') as log_pattern_sets,
@@ -1223,6 +1314,7 @@ components:
JSON_EXTRACT(detail.Properties, '$.CWEMonitorEnabled') as cwe_monitor_enabled,
JSON_EXTRACT(detail.Properties, '$.OpsCenterEnabled') as ops_center_enabled,
JSON_EXTRACT(detail.Properties, '$.OpsItemSNSTopicArn') as ops_item_sns_topic_arn,
+ JSON_EXTRACT(detail.Properties, '$.SNSNotificationArn') as sns_notification_arn,
JSON_EXTRACT(detail.Properties, '$.CustomComponents') as custom_components,
JSON_EXTRACT(detail.Properties, '$.LogPatternSets') as log_pattern_sets,
JSON_EXTRACT(detail.Properties, '$.AutoConfigurationEnabled') as auto_configuration_enabled,
@@ -1249,6 +1341,7 @@ components:
json_extract_path_text(detail.Properties, 'CWEMonitorEnabled') as cwe_monitor_enabled,
json_extract_path_text(detail.Properties, 'OpsCenterEnabled') as ops_center_enabled,
json_extract_path_text(detail.Properties, 'OpsItemSNSTopicArn') as ops_item_sns_topic_arn,
+ json_extract_path_text(detail.Properties, 'SNSNotificationArn') as sns_notification_arn,
json_extract_path_text(detail.Properties, 'CustomComponents') as custom_components,
json_extract_path_text(detail.Properties, 'LogPatternSets') as log_pattern_sets,
json_extract_path_text(detail.Properties, 'AutoConfigurationEnabled') as auto_configuration_enabled,
diff --git a/providers/src/aws/v00.00.00000/services/applicationsignals.yaml b/providers/src/aws/v00.00.00000/services/applicationsignals.yaml
new file mode 100644
index 00000000..917ec2a1
--- /dev/null
+++ b/providers/src/aws/v00.00.00000/services/applicationsignals.yaml
@@ -0,0 +1,1290 @@
+openapi: 3.0.0
+info:
+ title: ApplicationSignals
+ version: 2.0.0
+ x-serviceName: cloudcontrolapi
+servers:
+ - url: https://cloudcontrolapi.{region}.amazonaws.com
+ variables:
+ region:
+ description: The AWS region
+ enum:
+ - us-east-1
+ - us-east-2
+ - us-west-1
+ - us-west-2
+ - us-gov-west-1
+ - us-gov-east-1
+ - ca-central-1
+ - eu-north-1
+ - eu-west-1
+ - eu-west-2
+ - eu-west-3
+ - eu-central-1
+ - eu-south-1
+ - af-south-1
+ - ap-northeast-1
+ - ap-northeast-2
+ - ap-northeast-3
+ - ap-southeast-1
+ - ap-southeast-2
+ - ap-east-1
+ - ap-south-1
+ - sa-east-1
+ - me-south-1
+ default: us-east-1
+ description: The CloudControlApi multi-region endpoint
+ - url: https://cloudcontrolapi.{region}.amazonaws.com.cn
+ variables:
+ region:
+ description: The AWS region
+ enum:
+ - cn-north-1
+ - cn-northwest-1
+ default: cn-north-1
+ description: The CloudControlApi endpoint for China (Beijing) and China (Ningxia)
+components:
+ parameters:
+ X-Amz-Content-Sha256:
+ name: X-Amz-Content-Sha256
+ in: header
+ schema:
+ type: string
+ required: false
+ X-Amz-Date:
+ name: X-Amz-Date
+ in: header
+ schema:
+ type: string
+ required: false
+ X-Amz-Algorithm:
+ name: X-Amz-Algorithm
+ in: header
+ schema:
+ type: string
+ required: false
+ X-Amz-Credential:
+ name: X-Amz-Credential
+ in: header
+ schema:
+ type: string
+ required: false
+ X-Amz-Security-Token:
+ name: X-Amz-Security-Token
+ in: header
+ schema:
+ type: string
+ required: false
+ X-Amz-Signature:
+ name: X-Amz-Signature
+ in: header
+ schema:
+ type: string
+ required: false
+ X-Amz-SignedHeaders:
+ name: X-Amz-SignedHeaders
+ in: header
+ schema:
+ type: string
+ required: false
+ x-cloud-control-schemas:
+ AlreadyExistsException: {}
+ CancelResourceRequestInput:
+ properties:
+ RequestToken:
+ $ref: '#/components/x-cloud-control-schemas/RequestToken'
+ required:
+ - RequestToken
+ title: CancelResourceRequestInput
+ type: object
+ CancelResourceRequestOutput:
+ properties:
+ ProgressEvent:
+ $ref: '#/components/x-cloud-control-schemas/ProgressEvent'
+ type: object
+ ClientToken:
+ maxLength: 128
+ minLength: 1
+ pattern: '[-A-Za-z0-9+/=]+'
+ type: string
+ ClientTokenConflictException: {}
+ ConcurrentModificationException: {}
+ ConcurrentOperationException: {}
+ CreateResourceInput:
+ properties:
+ ClientToken:
+ type: string
+ DesiredState:
+ allOf:
+ - $ref: '#/components/x-cloud-control-schemas/Properties'
+ - description: >-
+ Structured data format representing the desired state of the resource, consisting of that resource's properties and their desired values.
Cloud Control API currently supports JSON as a structured data format.
<p>Specify the desired state as one of the following:</p> <ul> <li> <p>A JSON blob</p> </li> <li> <p>A local path containing the desired state in JSON data format</p>
+ </li> </ul> <p>For more information, see <a href="https://docs.aws.amazon.com/cloudcontrolapi/latest/userguide/resource-operations-create.html#resource-operations-create-desiredstate">Composing the desired state of the resource</a> in the <i>Amazon Web Services Cloud Control API User Guide</i>.</p> <p>For more information about the properties of a specific resource, refer to the related topic for the resource in the
+ <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-template-resource-type-ref.html">Resource and property types reference</a> in the <i>CloudFormation Users Guide</i>.</p>
+ RoleArn:
+ type: string
+ TypeName:
+ type: string
+ TypeVersionId:
+ type: string
+ required:
+ - DesiredState
+ title: CreateResourceInput
+ type: object
+ CreateResourceOutput:
+ properties:
+ ProgressEvent:
+ $ref: '#/components/x-cloud-control-schemas/ProgressEvent'
+ type: object
+ DeleteResourceInput:
+ properties:
+ ClientToken:
+ type: string
+ Identifier:
+ $ref: '#/components/x-cloud-control-schemas/Identifier'
+ RoleArn:
+ type: string
+ TypeName:
+ type: string
+ TypeVersionId:
+ type: string
+ required:
+ - Identifier
+ title: DeleteResourceInput
+ type: object
+ DeleteResourceOutput:
+ properties:
+ ProgressEvent:
+ $ref: '#/components/x-cloud-control-schemas/ProgressEvent'
+ type: object
+ GeneralServiceException: {}
+ GetResourceInput:
+ properties:
+ TypeName:
+ $ref: '#/components/x-cloud-control-schemas/TypeName'
+ Identifier:
+ $ref: '#/components/x-cloud-control-schemas/Identifier'
+ TypeVersionId:
+ $ref: '#/components/x-cloud-control-schemas/TypeVersionId'
+ RoleArn:
+ $ref: '#/components/x-cloud-control-schemas/RoleArn'
+ required:
+ - TypeName
+ - Identifier
+ title: GetResourceInput
+ type: object
+ GetResourceOutput:
+ properties:
+ ResourceDescription:
+ $ref: '#/components/x-cloud-control-schemas/ResourceDescription'
+ TypeName:
+ type: string
+ type: object
+ GetResourceRequestStatusInput:
+ properties:
+ RequestToken:
+ $ref: '#/components/x-cloud-control-schemas/RequestToken'
+ required:
+ - RequestToken
+ title: GetResourceRequestStatusInput
+ type: object
+ GetResourceRequestStatusOutput:
+ properties:
+ ProgressEvent:
+ $ref: '#/components/x-cloud-control-schemas/ProgressEvent'
+ type: object
+ HandlerErrorCode:
+ enum:
+ - NotUpdatable
+ - InvalidRequest
+ - AccessDenied
+ - InvalidCredentials
+ - AlreadyExists
+ - NotFound
+ - ResourceConflict
+ - Throttling
+ - ServiceLimitExceeded
+ - NotStabilized
+ - GeneralServiceException
+ - ServiceInternalError
+ - ServiceTimeout
+ - NetworkFailure
+ - InternalFailure
+ type: string
+ HandlerFailureException: {}
+ HandlerInternalFailureException: {}
+ HandlerNextToken:
+ maxLength: 2048
+ minLength: 1
+ pattern: .+
+ type: string
+ Identifier:
+ maxLength: 1024
+ minLength: 1
+ pattern: .+
+ type: string
+ InvalidCredentialsException: {}
+ InvalidRequestException: {}
+ MaxResults:
+ maximum: 100
+ minimum: 1
+ type: integer
+ NetworkFailureException: {}
+ NextToken:
+ maxLength: 2048
+ minLength: 1
+ pattern: '[-A-Za-z0-9+/=]+'
+ type: string
+ NotStabilizedException: {}
+ NotUpdatableException: {}
+ Operation:
+ enum:
+ - CREATE
+ - DELETE
+ - UPDATE
+ type: string
+ OperationStatus:
+ enum:
+ - PENDING
+ - IN_PROGRESS
+ - SUCCESS
+ - FAILED
+ - CANCEL_IN_PROGRESS
+ - CANCEL_COMPLETE
+ type: string
+ OperationStatuses:
+ items:
+ $ref: '#/components/x-cloud-control-schemas/OperationStatus'
+ type: array
+ Operations:
+ items:
+ $ref: '#/components/x-cloud-control-schemas/Operation'
+ type: array
+ PatchDocument:
+ format: password
+ maxLength: 65536
+ minLength: 1
+ pattern: '[\s\S]*'
+ type: string
+ PrivateTypeException: {}
+ ProgressEvent:
+ example:
+ ErrorCode: string
+ EventTime: number
+ Identifier: string
+ Operation: string
+ OperationStatus: string
+ RequestToken: string
+ ResourceModel: string
+ RetryAfter: number
+ StatusMessage: string
+ TypeName: string
+ properties:
+ ErrorCode:
+ type: string
+ EventTime:
+ type: number
+ Identifier:
+ type: string
+ Operation:
+ type: string
+ OperationStatus:
+ type: string
+ RequestToken:
+ type: string
+ ResourceModel:
+ type: string
+ RetryAfter:
+ type: number
+ StatusMessage:
+ type: string
+ TypeName:
+ type: string
+ type: object
+ Properties:
+ format: password
+ maxLength: 65536
+ minLength: 1
+ pattern: '[\s\S]*'
+ type: string
+ RequestToken:
+ maxLength: 128
+ minLength: 1
+ pattern: '[-A-Za-z0-9+/=]+'
+ type: string
+ RequestTokenNotFoundException: {}
+ ResourceConflictException: {}
+ ResourceDescription:
+ description: Represents information about a provisioned resource.
+ properties:
+ Identifier:
+ type: string
+ Properties:
+ type: string
+ type: object
+ ResourceDescriptions:
+ items:
+ $ref: '#/components/x-cloud-control-schemas/ResourceDescription'
+ type: array
+ ResourceNotFoundException: {}
+ ResourceRequestStatusFilter:
+ description: The filter criteria to use in determining the requests returned.
+ properties:
+ undefined:
+ allOf:
+ - $ref: '#/components/x-cloud-control-schemas/OperationStatuses'
+ - description: >-
+ The operation statuses to include in the filter.
-
PENDING: The operation has been requested, but not yet initiated.
-
IN_PROGRESS: The operation is in progress.
-
SUCCESS: The operation completed.
-
FAILED: The operation failed.
-
CANCEL_IN_PROGRESS: The operation is in the process of being canceled.
-
+ CANCEL_COMPLETE: The operation has been canceled.
+ type: object
+ ResourceRequestStatusSummaries:
+ items:
+ $ref: '#/components/x-cloud-control-schemas/ProgressEvent'
+ type: array
+ RoleArn:
+ maxLength: 2048
+ minLength: 20
+ pattern: arn:.+:iam::[0-9]{12}:role/.+
+ type: string
+ ServiceInternalErrorException: {}
+ ServiceLimitExceededException: {}
+ StatusMessage:
+ maxLength: 1024
+ minLength: 0
+ pattern: '[\s\S]*'
+ type: string
+ ThrottlingException: {}
+ Timestamp:
+ format: date-time
+ type: string
+ TypeName:
+ maxLength: 196
+ minLength: 10
+ pattern: '[A-Za-z0-9]{2,64}::[A-Za-z0-9]{2,64}::[A-Za-z0-9]{2,64}'
+ type: string
+ TypeNotFoundException: {}
+ TypeVersionId:
+ maxLength: 128
+ minLength: 1
+ pattern: '[A-Za-z0-9-]+'
+ type: string
+ UnsupportedActionException: {}
+ UpdateResourceInput:
+ properties:
+ undefined:
+ allOf:
+ - $ref: '#/components/x-cloud-control-schemas/PatchDocument'
+ required:
+ - Identifier
+ - PatchDocument
+ title: UpdateResourceInput
+ type: object
+ UpdateResourceOutput:
+ properties:
+ ProgressEvent:
+ $ref: '#/components/x-cloud-control-schemas/ProgressEvent'
+ type: object
+ schemas:
+ Sli:
+ description: This structure contains information about the performance metric that an SLO monitors.
+ type: object
+ additionalProperties: false
+ properties:
+ SliMetric:
+ $ref: '#/components/schemas/SliMetric'
+ MetricThreshold:
+ description: The value that the SLI metric is compared to.
+ type: number
+ ComparisonOperator:
+ description: The arithmetic operation used when comparing the specified metric to the threshold.
+ type: string
+ enum:
+ - GreaterThanOrEqualTo
+ - LessThanOrEqualTo
+ - LessThan
+ - GreaterThan
+ required:
+ - SliMetric
+ - MetricThreshold
+ - ComparisonOperator
+ RequestBasedSli:
+ description: This structure contains information about the performance metric that a request-based SLO monitors.
+ type: object
+ additionalProperties: false
+ properties:
+ RequestBasedSliMetric:
+ $ref: '#/components/schemas/RequestBasedSliMetric'
+ MetricThreshold:
+ description: The value that the SLI metric is compared to.
+ type: number
+ ComparisonOperator:
+ description: The arithmetic operation used when comparing the specified metric to the threshold.
+ type: string
+ enum:
+ - GreaterThanOrEqualTo
+ - LessThanOrEqualTo
+ - LessThan
+ - GreaterThan
+ required:
+ - RequestBasedSliMetric
+ Goal:
+ description: A structure that contains the attributes that determine the goal of the SLO. This includes the time period for evaluation and the attainment threshold.
+ type: object
+ additionalProperties: false
+ properties:
+ Interval:
+ $ref: '#/components/schemas/Interval'
+ AttainmentGoal:
+ description: |-
+ The threshold that determines if the goal is being met. An attainment goal is the ratio of good periods that meet the threshold requirements to the total periods within the interval. For example, an attainment goal of 99.9% means that within your interval, you are targeting 99.9% of the periods to be in healthy state.
+ If you omit this parameter, 99 is used to represent 99% as the attainment goal.
+ type: number
+ WarningThreshold:
+ description: The percentage of remaining budget over total budget that you want to get warnings for. If you omit this parameter, the default of 50.0 is used.
+ type: number
+ SliMetric:
+ description: A structure that contains information about the metric that the SLO monitors.
+ type: object
+ additionalProperties: false
+ properties:
+ KeyAttributes:
+ $ref: '#/components/schemas/KeyAttributes'
+ OperationName:
+ description: If the SLO monitors a specific operation of the service, this field displays that operation name.
+ type: string
+ minLength: 1
+ maxLength: 255
+ MetricType:
+ description: If the SLO monitors either the LATENCY or AVAILABILITY metric that Application Signals collects, this field displays which of those metrics is used.
+ type: string
+ enum:
+ - LATENCY
+ - AVAILABILITY
+ Statistic:
+ description: The statistic to use for comparison to the threshold. It can be any CloudWatch statistic or extended statistic
+ type: string
+ minLength: 1
+ maxLength: 20
+ PeriodSeconds:
+ description: The number of seconds to use as the period for SLO evaluation. Your application's performance is compared to the SLI during each period. For each period, the application is determined to have either achieved or not achieved the necessary performance.
+ type: integer
+ minimum: 60
+ maximum: 900
+ MetricDataQueries:
+ $ref: '#/components/schemas/MetricDataQueries'
+ RequestBasedSliMetric:
+ description: This structure contains the information about the metric that is used for a request-based SLO.
+ type: object
+ additionalProperties: false
+ properties:
+ KeyAttributes:
+ $ref: '#/components/schemas/KeyAttributes'
+ OperationName:
+ description: If the SLO monitors a specific operation of the service, this field displays that operation name.
+ type: string
+ minLength: 1
+ maxLength: 255
+ MetricType:
+ description: If the SLO monitors either the LATENCY or AVAILABILITY metric that Application Signals collects, this field displays which of those metrics is used.
+ type: string
+ enum:
+ - LATENCY
+ - AVAILABILITY
+ TotalRequestCountMetric:
+ description: This structure defines the metric that is used as the "total requests" number for a request-based SLO. The number observed for this metric is divided by the number of "good requests" or "bad requests" that is observed for the metric defined in `MonitoredRequestCountMetric`.
+ $ref: '#/components/schemas/MetricDataQueries'
+ MonitoredRequestCountMetric:
+ $ref: '#/components/schemas/MonitoredRequestCountMetric'
+ MonitoredRequestCountMetric:
+ description: This structure defines the metric that is used as the "good request" or "bad request" value for a request-based SLO. This value observed for the metric defined in `TotalRequestCountMetric` is divided by the number found for `MonitoredRequestCountMetric` to determine the percentage of successful requests that this SLO tracks.
+ type: object
+ additionalProperties: false
+ properties:
+ GoodCountMetric:
+ description: If you want to count "good requests" to determine the percentage of successful requests for this request-based SLO, specify the metric to use as "good requests" in this structure.
+ $ref: '#/components/schemas/MetricDataQueries'
+ BadCountMetric:
+ description: If you want to count "bad requests" to determine the percentage of successful requests for this request-based SLO, specify the metric to use as "bad requests" in this structure.
+ $ref: '#/components/schemas/MetricDataQueries'
+ KeyAttributes:
+ description: This is a string-to-string map that contains information about the type of object that this SLO is related to.
+ x-patternProperties:
+ ^.+$:
+ type: string
+ additionalProperties: false
+ Interval:
+ description: |-
+ The time period used to evaluate the SLO. It can be either a calendar interval or rolling interval.
+ If you omit this parameter, a rolling interval of 7 days is used.
+ type: object
+ additionalProperties: false
+ properties:
+ RollingInterval:
+ $ref: '#/components/schemas/RollingInterval'
+ CalendarInterval:
+ $ref: '#/components/schemas/CalendarInterval'
+ RollingInterval:
+ description: If the interval is a calendar interval, this structure contains the interval specifications.
+ type: object
+ additionalProperties: false
+ properties:
+ DurationUnit:
+ $ref: '#/components/schemas/DurationUnit'
+ Duration:
+ $ref: '#/components/schemas/Duration'
+ required:
+ - DurationUnit
+ - Duration
+ CalendarInterval:
+ description: If the interval for this service level objective is a calendar interval, this structure contains the interval specifications.
+ type: object
+ additionalProperties: false
+ properties:
+ StartTime:
+ type: integer
+ description: |-
+ Epoch time in seconds you want the first interval to start. Be sure to choose a time that configures the intervals the way that you want. For example, if you want weekly intervals starting on Mondays at 6 a.m., be sure to specify a start time that is a Monday at 6 a.m.
+ As soon as one calendar interval ends, another automatically begins.
+ minimum: 946684800
+ DurationUnit:
+ $ref: '#/components/schemas/DurationUnit'
+ Duration:
+ $ref: '#/components/schemas/Duration'
+ required:
+ - StartTime
+ - DurationUnit
+ - Duration
+ DurationUnit:
+ description: Specifies the calendar interval unit.
+ type: string
+ enum:
+ - DAY
+ - MONTH
+ Duration:
+ description: Specifies the duration of each calendar interval. For example, if `Duration` is 1 and `DurationUnit` is `MONTH`, each interval is one month, aligned with the calendar.
+ type: integer
+ minimum: 1
+ MetricDataQueries:
+ description: If this SLO monitors a CloudWatch metric or the result of a CloudWatch metric math expression, this structure includes the information about that metric or expression.
+ type: array
+ uniqueItems: false
+ x-insertionOrder: true
+ items:
+ $ref: '#/components/schemas/MetricDataQuery'
+ MetricDataQuery:
+ description: >-
+ Use this structure to define a metric or metric math expression that you want to use as for a service level objective.
+
+ Each `MetricDataQuery` in the `MetricDataQueries` array specifies either a metric to retrieve, or a metric math expression to be performed on retrieved metrics. A single `MetricDataQueries` array can include as many as 20 `MetricDataQuery` structures in the array. The 20 structures can include as many as 10 structures that contain a `MetricStat` parameter to retrieve a metric, and as many as 10 structures that contain the `Expression` parameter to perform a math expression. Of those
+ Expression structures, exactly one must have true as the value for `ReturnData`. The result of this expression used for the SLO.
+ type: object
+ additionalProperties: false
+ properties:
+ MetricStat:
+ description: A metric to be used directly for the SLO, or to be used in the math expression that will be used for the SLO. Within one MetricDataQuery, you must specify either Expression or MetricStat but not both.
+ $ref: '#/components/schemas/MetricStat'
+ Id:
+ description: A short name used to tie this object to the results in the response.
+ type: string
+ ReturnData:
+ description: This option indicates whether to return the timestamps and raw data values of this metric.
+ type: boolean
+ Expression:
+ description: The math expression to be performed on the returned data.
+ type: string
+ AccountId:
+ description: The ID of the account where the metrics are located, if this is a cross-account alarm.
+ type: string
+ required:
+ - Id
+ MetricStat:
+ description: A metric to be used directly for the SLO, or to be used in the math expression that will be used for the SLO. Within one MetricDataQuery object, you must specify either Expression or MetricStat but not both.
+ type: object
+ additionalProperties: false
+ properties:
+ Period:
+ description: The granularity, in seconds, to be used for the metric.
+ type: integer
+ Metric:
+ $ref: '#/components/schemas/Metric'
+ Stat:
+ description: The statistic to use for comparison to the threshold. It can be any CloudWatch statistic or extended statistic.
+ type: string
+ Unit:
+ description: If you omit Unit then all data that was collected with any unit is returned, along with the corresponding units that were specified when the data was reported to CloudWatch. If you specify a unit, the operation returns only data that was collected with that unit specified. If you specify a unit that does not match the data collected, the results of the operation are null. CloudWatch does not perform unit conversions.
+ type: string
+ required:
+ - Stat
+ - Period
+ - Metric
+ Metric:
+ description: This structure defines the metric used for a service level indicator, including the metric name, namespace, and dimensions.
+ type: object
+ additionalProperties: false
+ properties:
+ MetricName:
+ description: The name of the metric to use.
+ type: string
+ Dimensions:
+ description: An array of one or more dimensions to use to define the metric that you want to use.
+ type: array
+ uniqueItems: false
+ x-insertionOrder: false
+ items:
+ $ref: '#/components/schemas/Dimension'
+ Namespace:
+ description: The namespace of the metric.
+ type: string
+ Dimension:
+ description: A dimension is a name/value pair that is part of the identity of a metric. Because dimensions are part of the unique identifier for a metric, whenever you add a unique name/value pair to one of your metrics, you are creating a new variation of that metric. For example, many Amazon EC2 metrics publish `InstanceId` as a dimension name, and the actual instance ID as the value for that dimension. You can assign up to 30 dimensions to a metric.
+ type: object
+ additionalProperties: false
+ properties:
+ Value:
+ description: The value of the dimension. Dimension values must contain only ASCII characters and must include at least one non-whitespace character. ASCII control characters are not supported as part of dimension values
+ type: string
+ Name:
+ description: The name of the dimension. Dimension names must contain only ASCII characters, must include at least one non-whitespace character, and cannot start with a colon (:). ASCII control characters are not supported as part of dimension names.
+ type: string
+ required:
+ - Value
+ - Name
+ Tags:
+ description: The list of tag keys and values associated with the resource you specified
+ type: array
+ uniqueItems: true
+ x-insertionOrder: false
+ items:
+ $ref: '#/components/schemas/Tag'
+ minItems: 1
+ maxItems: 200
+ Tag:
+ type: object
+ additionalProperties: false
+ properties:
+ Key:
+ type: string
+ pattern: ^(?!aws:)[a-zA-Z+-=._:/]+$
+ description: A string that you can use to assign a value. The combination of tag keys and values can help you organize and categorize your resources.
+ minLength: 1
+ maxLength: 128
+ Value:
+ type: string
+ description: The value for the specified tag key.
+ minLength: 0
+ maxLength: 256
+ required:
+ - Key
+ - Value
+ BurnRateConfigurations:
+ description: Each object in this array defines the length of the look-back window used to calculate one burn rate metric for this SLO. The burn rate measures how fast the service is consuming the error budget, relative to the attainment goal of the SLO.
+ type: array
+ uniqueItems: true
+ x-insertionOrder: false
+ items:
+ $ref: '#/components/schemas/BurnRateConfiguration'
+ minItems: 0
+ maxItems: 10
+ BurnRateConfiguration:
+ type: object
+ description: |-
+ This object defines the length of the look-back window used to calculate one burn rate metric for this SLO. The burn rate measures how fast the service is consuming the error budget, relative to the attainment goal of the SLO. A burn rate of exactly 1 indicates that the SLO goal will be met exactly.
+ For example, if you specify 60 as the number of minutes in the look-back window, the burn rate is calculated as the following:
+ burn rate = error rate over the look-back window / (1 - attainment goal percentage)
+ additionalProperties: false
+ properties:
+ LookBackWindowMinutes:
+ description: The number of minutes to use as the look-back window.
+ type: integer
+ minimum: 1
+ maximum: 10080
+ required:
+ - LookBackWindowMinutes
+ ServiceLevelObjective:
+ type: object
+ properties:
+ Arn:
+ description: The ARN of this SLO.
+ type: string
+ pattern: ^arn:[^:]*:application-signals:[^:]*:[^:]*:slo\/[0-9A-Za-z][-._0-9A-Za-z ]{0,126}[0-9A-Za-z]$
+ Name:
+ description: The name of this SLO.
+ type: string
+ pattern: ^[0-9A-Za-z][-._0-9A-Za-z ]{0,126}[0-9A-Za-z]$
+ Description:
+ description: An optional description for this SLO. Default is 'No description'
+ type: string
+ minLength: 1
+ maxLength: 1024
+ default: No description
+ CreatedTime:
+ type: integer
+ description: Epoch time in seconds of the time that this SLO was created
+ minimum: 946684800
+ LastUpdatedTime:
+ type: integer
+ description: Epoch time in seconds of the time that this SLO was most recently updated
+ minimum: 946684800
+ Sli:
+ $ref: '#/components/schemas/Sli'
+ RequestBasedSli:
+ $ref: '#/components/schemas/RequestBasedSli'
+ EvaluationType:
+ description: Displays whether this is a period-based SLO or a request-based SLO.
+ type: string
+ enum:
+ - PeriodBased
+ - RequestBased
+ Goal:
+ $ref: '#/components/schemas/Goal'
+ Tags:
+ $ref: '#/components/schemas/Tags'
+ BurnRateConfigurations:
+ $ref: '#/components/schemas/BurnRateConfigurations'
+ required:
+ - Name
+ x-stackql-resource-name: service_level_objective
+ description: Resource Type definition for AWS::ApplicationSignals::ServiceLevelObjective
+ x-type-name: AWS::ApplicationSignals::ServiceLevelObjective
+ x-stackql-primary-identifier:
+ - Arn
+ x-create-only-properties:
+ - Name
+ x-read-only-properties:
+ - Arn
+ - CreatedTime
+ - LastUpdatedTime
+ - EvaluationType
+ x-required-properties:
+ - Name
+ x-tagging:
+ taggable: true
+ tagOnCreate: true
+ tagUpdatable: true
+ cloudFormationSystemTags: true
+ tagProperty: /properties/Tags
+ permissions:
+ - application-signals:ListTagsForResource
+ - application-signals:TagResource
+ - application-signals:UntagResource
+ x-required-permissions:
+ create:
+ - application-signals:CreateServiceLevelObjective
+ - cloudwatch:GetMetricData
+ - application-signals:TagResource
+ - application-signals:GetServiceLevelObjective
+ - application-signals:ListTagsForResource
+ - iam:GetRole
+ - iam:CreateServiceLinkedRole
+ read:
+ - application-signals:GetServiceLevelObjective
+ - application-signals:ListTagsForResource
+ update:
+ - application-signals:UpdateServiceLevelObjective
+ - cloudwatch:GetMetricData
+ - application-signals:TagResource
+ - application-signals:UntagResource
+ - application-signals:GetServiceLevelObjective
+ - application-signals:ListTagsForResource
+ delete:
+ - application-signals:DeleteServiceLevelObjective
+ - application-signals:UntagResource
+ - application-signals:GetServiceLevelObjective
+ list:
+ - application-signals:ListServiceLevelObjectives
+ - application-signals:ListTagsForResource
+ CreateServiceLevelObjectiveRequest:
+ properties:
+ ClientToken:
+ type: string
+ RoleArn:
+ type: string
+ TypeName:
+ type: string
+ TypeVersionId:
+ type: string
+ DesiredState:
+ type: object
+ properties:
+ Arn:
+ description: The ARN of this SLO.
+ type: string
+ pattern: ^arn:[^:]*:application-signals:[^:]*:[^:]*:slo\/[0-9A-Za-z][-._0-9A-Za-z ]{0,126}[0-9A-Za-z]$
+ Name:
+ description: The name of this SLO.
+ type: string
+ pattern: ^[0-9A-Za-z][-._0-9A-Za-z ]{0,126}[0-9A-Za-z]$
+ Description:
+ description: An optional description for this SLO. Default is 'No description'
+ type: string
+ minLength: 1
+ maxLength: 1024
+ default: No description
+ CreatedTime:
+ type: integer
+ description: Epoch time in seconds of the time that this SLO was created
+ minimum: 946684800
+ LastUpdatedTime:
+ type: integer
+ description: Epoch time in seconds of the time that this SLO was most recently updated
+ minimum: 946684800
+ Sli:
+ $ref: '#/components/schemas/Sli'
+ RequestBasedSli:
+ $ref: '#/components/schemas/RequestBasedSli'
+ EvaluationType:
+ description: Displays whether this is a period-based SLO or a request-based SLO.
+ type: string
+ enum:
+ - PeriodBased
+ - RequestBased
+ Goal:
+ $ref: '#/components/schemas/Goal'
+ Tags:
+ $ref: '#/components/schemas/Tags'
+ BurnRateConfigurations:
+ $ref: '#/components/schemas/BurnRateConfigurations'
+ x-stackQL-stringOnly: true
+ x-title: CreateServiceLevelObjectiveRequest
+ type: object
+ required: []
+ securitySchemes:
+ hmac:
+ type: apiKey
+ name: Authorization
+ in: header
+ description: Amazon Signature authorization v4
+ x-amazon-apigateway-authtype: awsSigv4
+ x-stackQL-resources:
+ service_level_objectives:
+ name: service_level_objectives
+ id: aws.applicationsignals.service_level_objectives
+ x-cfn-schema-name: ServiceLevelObjective
+ x-cfn-type-name: AWS::ApplicationSignals::ServiceLevelObjective
+ x-identifiers:
+ - Arn
+ x-type: cloud_control
+ methods:
+ create_resource:
+ config:
+ requestBodyTranslate:
+ algorithm: naive_DesiredState
+ operation:
+ $ref: '#/paths/~1?Action=CreateResource&Version=2021-09-30&__ServiceLevelObjective&__detailTransformed=true/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::ApplicationSignals::ServiceLevelObjective"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ update_resource:
+ operation:
+ $ref: '#/paths/~1?Action=UpdateResource&Version=2021-09-30/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::ApplicationSignals::ServiceLevelObjective"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ delete_resource:
+ operation:
+ $ref: '#/paths/~1?Action=DeleteResource&Version=2021-09-30/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::ApplicationSignals::ServiceLevelObjective"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ sqlVerbs:
+ insert:
+ - $ref: '#/components/x-stackQL-resources/service_level_objectives/methods/create_resource'
+ delete:
+ - $ref: '#/components/x-stackQL-resources/service_level_objectives/methods/delete_resource'
+ update:
+ - $ref: '#/components/x-stackQL-resources/service_level_objectives/methods/update_resource'
+ config:
+ views:
+ select:
+ predicate: sqlDialect == "sqlite3" && requiredParams == [ data__Identifier ]
+ ddl: |-
+ SELECT
+ region,
+ data__Identifier,
+ JSON_EXTRACT(Properties, '$.Arn') as arn,
+ JSON_EXTRACT(Properties, '$.Name') as name,
+ JSON_EXTRACT(Properties, '$.Description') as description,
+ JSON_EXTRACT(Properties, '$.CreatedTime') as created_time,
+ JSON_EXTRACT(Properties, '$.LastUpdatedTime') as last_updated_time,
+ JSON_EXTRACT(Properties, '$.Sli') as sli,
+ JSON_EXTRACT(Properties, '$.RequestBasedSli') as request_based_sli,
+ JSON_EXTRACT(Properties, '$.EvaluationType') as evaluation_type,
+ JSON_EXTRACT(Properties, '$.Goal') as goal,
+ JSON_EXTRACT(Properties, '$.Tags') as tags,
+ JSON_EXTRACT(Properties, '$.BurnRateConfigurations') as burn_rate_configurations
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::ApplicationSignals::ServiceLevelObjective'
+ AND data__Identifier = ''
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "sqlite3"
+ ddl: |-
+ SELECT
+ detail.region,
+ JSON_EXTRACT(detail.Properties, '$.Arn') as arn,
+ JSON_EXTRACT(detail.Properties, '$.Name') as name,
+ JSON_EXTRACT(detail.Properties, '$.Description') as description,
+ JSON_EXTRACT(detail.Properties, '$.CreatedTime') as created_time,
+ JSON_EXTRACT(detail.Properties, '$.LastUpdatedTime') as last_updated_time,
+ JSON_EXTRACT(detail.Properties, '$.Sli') as sli,
+ JSON_EXTRACT(detail.Properties, '$.RequestBasedSli') as request_based_sli,
+ JSON_EXTRACT(detail.Properties, '$.EvaluationType') as evaluation_type,
+ JSON_EXTRACT(detail.Properties, '$.Goal') as goal,
+ JSON_EXTRACT(detail.Properties, '$.Tags') as tags,
+ JSON_EXTRACT(detail.Properties, '$.BurnRateConfigurations') as burn_rate_configurations
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ WHERE listing.data__TypeName = 'AWS::ApplicationSignals::ServiceLevelObjective'
+ AND detail.data__TypeName = 'AWS::ApplicationSignals::ServiceLevelObjective'
+ AND listing.region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres" && requiredParams == [ data__Identifier ]
+ ddl: |-
+ SELECT
+ region,
+ data__Identifier,
+ json_extract_path_text(Properties, 'Arn') as arn,
+ json_extract_path_text(Properties, 'Name') as name,
+ json_extract_path_text(Properties, 'Description') as description,
+ json_extract_path_text(Properties, 'CreatedTime') as created_time,
+ json_extract_path_text(Properties, 'LastUpdatedTime') as last_updated_time,
+ json_extract_path_text(Properties, 'Sli') as sli,
+ json_extract_path_text(Properties, 'RequestBasedSli') as request_based_sli,
+ json_extract_path_text(Properties, 'EvaluationType') as evaluation_type,
+ json_extract_path_text(Properties, 'Goal') as goal,
+ json_extract_path_text(Properties, 'Tags') as tags,
+ json_extract_path_text(Properties, 'BurnRateConfigurations') as burn_rate_configurations
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::ApplicationSignals::ServiceLevelObjective'
+ AND data__Identifier = ''
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres"
+ ddl: |-
+ SELECT
+ detail.region,
+ json_extract_path_text(detail.Properties, 'Arn') as arn,
+ json_extract_path_text(detail.Properties, 'Name') as name,
+ json_extract_path_text(detail.Properties, 'Description') as description,
+ json_extract_path_text(detail.Properties, 'CreatedTime') as created_time,
+ json_extract_path_text(detail.Properties, 'LastUpdatedTime') as last_updated_time,
+ json_extract_path_text(detail.Properties, 'Sli') as sli,
+ json_extract_path_text(detail.Properties, 'RequestBasedSli') as request_based_sli,
+ json_extract_path_text(detail.Properties, 'EvaluationType') as evaluation_type,
+ json_extract_path_text(detail.Properties, 'Goal') as goal,
+ json_extract_path_text(detail.Properties, 'Tags') as tags,
+ json_extract_path_text(detail.Properties, 'BurnRateConfigurations') as burn_rate_configurations
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ WHERE listing.data__TypeName = 'AWS::ApplicationSignals::ServiceLevelObjective'
+ AND detail.data__TypeName = 'AWS::ApplicationSignals::ServiceLevelObjective'
+ AND listing.region = 'us-east-1'
+ service_level_objectives_list_only:
+ name: service_level_objectives_list_only
+ id: aws.applicationsignals.service_level_objectives_list_only
+ x-cfn-schema-name: ServiceLevelObjective
+ x-cfn-type-name: AWS::ApplicationSignals::ServiceLevelObjective
+ x-identifiers:
+ - Arn
+ x-type: cloud_control_view
+ methods: {}
+ sqlVerbs:
+ insert: []
+ delete: []
+ update: []
+ config:
+ views:
+ select:
+ predicate: sqlDialect == "sqlite3"
+ ddl: |-
+ SELECT
+ region,
+ JSON_EXTRACT(Properties, '$.Arn') as arn
+ FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::ApplicationSignals::ServiceLevelObjective'
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres"
+ ddl: |-
+ SELECT
+ region,
+ json_extract_path_text(Properties, 'Arn') as arn
+ FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::ApplicationSignals::ServiceLevelObjective'
+ AND region = 'us-east-1'
+ service_level_objective_tags:
+ name: service_level_objective_tags
+ id: aws.applicationsignals.service_level_objective_tags
+ x-cfn-schema-name: ServiceLevelObjective
+ x-cfn-type-name: AWS::ApplicationSignals::ServiceLevelObjective
+ x-type: cloud_control_view
+ methods: {}
+ sqlVerbs:
+ insert: []
+ delete: []
+ update: []
+ config:
+ views:
+ select:
+ predicate: sqlDialect == "sqlite3"
+ ddl: |-
+ SELECT
+ detail.region,
+ JSON_EXTRACT(json_each.value, '$.Key') as tag_key,
+ JSON_EXTRACT(json_each.value, '$.Value') as tag_value,
+ JSON_EXTRACT(detail.Properties, '$.Arn') as arn,
+ JSON_EXTRACT(detail.Properties, '$.Name') as name,
+ JSON_EXTRACT(detail.Properties, '$.Description') as description,
+ JSON_EXTRACT(detail.Properties, '$.CreatedTime') as created_time,
+ JSON_EXTRACT(detail.Properties, '$.LastUpdatedTime') as last_updated_time,
+ JSON_EXTRACT(detail.Properties, '$.Sli') as sli,
+ JSON_EXTRACT(detail.Properties, '$.RequestBasedSli') as request_based_sli,
+ JSON_EXTRACT(detail.Properties, '$.EvaluationType') as evaluation_type,
+ JSON_EXTRACT(detail.Properties, '$.Goal') as goal,
+ JSON_EXTRACT(detail.Properties, '$.BurnRateConfigurations') as burn_rate_configurations
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ ,json_each(JSON_EXTRACT(detail.Properties, '$.Tags'))
+ WHERE listing.data__TypeName = 'AWS::ApplicationSignals::ServiceLevelObjective'
+ AND detail.data__TypeName = 'AWS::ApplicationSignals::ServiceLevelObjective'
+ AND listing.region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres"
+ ddl: |-
+ SELECT
+ detail.region,
+ json_extract_path_text(json_each.value, 'Key') as tag_key,
+ json_extract_path_text(json_each.value, 'Value') as tag_value,
+ json_extract_path_text(detail.Properties, 'Arn') as arn,
+ json_extract_path_text(detail.Properties, 'Name') as name,
+ json_extract_path_text(detail.Properties, 'Description') as description,
+ json_extract_path_text(detail.Properties, 'CreatedTime') as created_time,
+ json_extract_path_text(detail.Properties, 'LastUpdatedTime') as last_updated_time,
+ json_extract_path_text(detail.Properties, 'Sli') as sli,
+ json_extract_path_text(detail.Properties, 'RequestBasedSli') as request_based_sli,
+ json_extract_path_text(detail.Properties, 'EvaluationType') as evaluation_type,
+ json_extract_path_text(detail.Properties, 'Goal') as goal,
+ json_extract_path_text(detail.Properties, 'BurnRateConfigurations') as burn_rate_configurations
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ ,json_array_elements_text(json_extract_path_text(detail.Properties, 'Tags'))
+ WHERE listing.data__TypeName = 'AWS::ApplicationSignals::ServiceLevelObjective'
+ AND detail.data__TypeName = 'AWS::ApplicationSignals::ServiceLevelObjective'
+ AND listing.region = 'us-east-1'
+paths:
+ /?Action=CreateResource&Version=2021-09-30:
+ parameters:
+ - $ref: '#/components/parameters/X-Amz-Content-Sha256'
+ - $ref: '#/components/parameters/X-Amz-Date'
+ - $ref: '#/components/parameters/X-Amz-Algorithm'
+ - $ref: '#/components/parameters/X-Amz-Credential'
+ - $ref: '#/components/parameters/X-Amz-Security-Token'
+ - $ref: '#/components/parameters/X-Amz-Signature'
+ - $ref: '#/components/parameters/X-Amz-SignedHeaders'
+ post:
+ operationId: CreateResource
+ parameters:
+ - description: Action Header
+ in: header
+ name: X-Amz-Target
+ required: false
+ schema:
+ default: CloudApiService.CreateResource
+ enum:
+ - CloudApiService.CreateResource
+ type: string
+ - in: header
+ name: Content-Type
+ required: false
+ schema:
+ default: application/x-amz-json-1.0
+ enum:
+ - application/x-amz-json-1.0
+ type: string
+ requestBody:
+ content:
+ application/x-amz-json-1.0:
+ schema:
+ $ref: '#/components/x-cloud-control-schemas/CreateResourceInput'
+ required: true
+ responses:
+ '200':
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/x-cloud-control-schemas/ProgressEvent'
+ description: Success
+ /?Action=DeleteResource&Version=2021-09-30:
+ parameters:
+ - $ref: '#/components/parameters/X-Amz-Content-Sha256'
+ - $ref: '#/components/parameters/X-Amz-Date'
+ - $ref: '#/components/parameters/X-Amz-Algorithm'
+ - $ref: '#/components/parameters/X-Amz-Credential'
+ - $ref: '#/components/parameters/X-Amz-Security-Token'
+ - $ref: '#/components/parameters/X-Amz-Signature'
+ - $ref: '#/components/parameters/X-Amz-SignedHeaders'
+ post:
+ operationId: DeleteResource
+ parameters:
+ - description: Action Header
+ in: header
+ name: X-Amz-Target
+ required: false
+ schema:
+ default: CloudApiService.DeleteResource
+ enum:
+ - CloudApiService.DeleteResource
+ type: string
+ - in: header
+ name: Content-Type
+ required: false
+ schema:
+ default: application/x-amz-json-1.0
+ enum:
+ - application/x-amz-json-1.0
+ type: string
+ requestBody:
+ content:
+ application/x-amz-json-1.0:
+ schema:
+ $ref: '#/components/x-cloud-control-schemas/DeleteResourceInput'
+ required: true
+ responses:
+ '200':
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/x-cloud-control-schemas/DeleteResourceOutput'
+ description: Success
+ /?Action=UpdateResource&Version=2021-09-30:
+ parameters:
+ - $ref: '#/components/parameters/X-Amz-Content-Sha256'
+ - $ref: '#/components/parameters/X-Amz-Date'
+ - $ref: '#/components/parameters/X-Amz-Algorithm'
+ - $ref: '#/components/parameters/X-Amz-Credential'
+ - $ref: '#/components/parameters/X-Amz-Security-Token'
+ - $ref: '#/components/parameters/X-Amz-Signature'
+ - $ref: '#/components/parameters/X-Amz-SignedHeaders'
+ post:
+ operationId: UpdateResource
+ parameters:
+ - description: Action Header
+ in: header
+ name: X-Amz-Target
+ required: false
+ schema:
+ default: CloudApiService.UpdateResource
+ enum:
+ - CloudApiService.UpdateResource
+ type: string
+ - in: header
+ name: Content-Type
+ required: false
+ schema:
+ default: application/x-amz-json-1.0
+ enum:
+ - application/x-amz-json-1.0
+ type: string
+ requestBody:
+ content:
+ application/x-amz-json-1.0:
+ schema:
+ properties:
+ ClientName:
+ type: string
+ Identifier:
+ $ref: '#/components/x-cloud-control-schemas/Identifier'
+ PatchDocument:
+ type: string
+ RoleArn:
+ $ref: '#/components/x-cloud-control-schemas/RoleArn'
+ TypeName:
+ $ref: '#/components/x-cloud-control-schemas/TypeName'
+ TypeVersionId:
+ $ref: '#/components/x-cloud-control-schemas/TypeVersionId'
+ required:
+ - Identifier
+ - PatchDocument
+ type: object
+ required: true
+ responses:
+ '200':
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/x-cloud-control-schemas/UpdateResourceOutput'
+ description: Success
+ /?Action=CreateResource&Version=2021-09-30&__ServiceLevelObjective&__detailTransformed=true:
+ parameters:
+ - $ref: '#/components/parameters/X-Amz-Content-Sha256'
+ - $ref: '#/components/parameters/X-Amz-Date'
+ - $ref: '#/components/parameters/X-Amz-Algorithm'
+ - $ref: '#/components/parameters/X-Amz-Credential'
+ - $ref: '#/components/parameters/X-Amz-Security-Token'
+ - $ref: '#/components/parameters/X-Amz-Signature'
+ - $ref: '#/components/parameters/X-Amz-SignedHeaders'
+ post:
+ operationId: CreateServiceLevelObjective
+ parameters:
+ - description: Action Header
+ in: header
+ name: X-Amz-Target
+ required: false
+ schema:
+ default: CloudApiService.CreateResource
+ enum:
+ - CloudApiService.CreateResource
+ type: string
+ - in: header
+ name: Content-Type
+ required: false
+ schema:
+ default: application/x-amz-json-1.0
+ enum:
+ - application/x-amz-json-1.0
+ type: string
+ requestBody:
+ content:
+ application/x-amz-json-1.0:
+ schema:
+ $ref: '#/components/schemas/CreateServiceLevelObjectiveRequest'
+ required: true
+ responses:
+ '200':
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/x-cloud-control-schemas/ProgressEvent'
+ description: Success
+x-stackQL-config:
+ requestTranslate:
+ algorithm: drop_double_underscore_params
+ pagination:
+ requestToken:
+ key: NextToken
+ location: body
+ responseToken:
+ key: NextToken
+ location: body
diff --git a/providers/src/aws/v00.00.00000/services/appsync.yaml b/providers/src/aws/v00.00.00000/services/appsync.yaml
index 01d19710..98311623 100644
--- a/providers/src/aws/v00.00.00000/services/appsync.yaml
+++ b/providers/src/aws/v00.00.00000/services/appsync.yaml
@@ -385,6 +385,557 @@ components:
$ref: '#/components/x-cloud-control-schemas/ProgressEvent'
type: object
schemas:
+ EventConfig:
+ description: The configuration for an Event Api
+ type: object
+ additionalProperties: false
+ properties:
+ AuthProviders:
+ $ref: '#/components/schemas/AuthProviders'
+ ConnectionAuthModes:
+ $ref: '#/components/schemas/AuthModes'
+ DefaultPublishAuthModes:
+ $ref: '#/components/schemas/AuthModes'
+ DefaultSubscribeAuthModes:
+ $ref: '#/components/schemas/AuthModes'
+ LogConfig:
+ $ref: '#/components/schemas/EventLogConfig'
+ required:
+ - AuthProviders
+ - ConnectionAuthModes
+ - DefaultPublishAuthModes
+ - DefaultSubscribeAuthModes
+ AuthMode:
+ description: An auth mode.
+ type: object
+ additionalProperties: false
+ properties:
+ AuthType:
+ $ref: '#/components/schemas/AuthenticationType'
+ AuthModes:
+ type: array
+ x-insertionOrder: false
+ items:
+ $ref: '#/components/schemas/AuthMode'
+ AuthenticationType:
+ description: Security configuration for your AppSync API.
+ type: string
+ enum:
+ - AMAZON_COGNITO_USER_POOLS
+ - AWS_IAM
+ - API_KEY
+ - OPENID_CONNECT
+ - AWS_LAMBDA
+ OpenIDConnectConfig:
+ type: object
+ additionalProperties: false
+ properties:
+ ClientId:
+ description: The client identifier of the Relying party at the OpenID identity provider.
+ type: string
+ AuthTTL:
+ description: The number of milliseconds that a token is valid after being authenticated.
+ type: number
+ Issuer:
+ description: 'The issuer for the OIDC configuration. '
+ type: string
+ IatTTL:
+ description: |+
+ The number of milliseconds that a token is valid after it's issued to a user.
+
+ type: number
+ CognitoConfig:
+ description: Optional authorization configuration for using Amazon Cognito user pools with your API endpoint.
+ type: object
+ additionalProperties: false
+ properties:
+ AppIdClientRegex:
+ type: string
+ UserPoolId:
+ type: string
+ AwsRegion:
+ type: string
+ required:
+ - UserPoolId
+ - AwsRegion
+ LambdaAuthorizerConfig:
+ type: object
+ additionalProperties: false
+ properties:
+ IdentityValidationExpression:
+ description: A regular expression for validation of tokens before the Lambda function is called.
+ type: string
+ AuthorizerUri:
+ description: The ARN of the Lambda function to be called for authorization.
+ type: string
+ AuthorizerResultTtlInSeconds:
+ description: The number of seconds a response should be cached for.
+ type: integer
+ AuthProviders:
+ description: A list of auth providers for the AppSync API.
+ type: array
+ x-insertionOrder: false
+ items:
+ $ref: '#/components/schemas/AuthProvider'
+ AuthProvider:
+ description: An auth provider for the AppSync API.
+ type: object
+ additionalProperties: false
+ properties:
+ AuthType:
+ $ref: '#/components/schemas/AuthenticationType'
+ OpenIDConnectConfig:
+ $ref: '#/components/schemas/OpenIDConnectConfig'
+ CognitoConfig:
+ $ref: '#/components/schemas/CognitoConfig'
+ LambdaAuthorizerConfig:
+ $ref: '#/components/schemas/LambdaAuthorizerConfig'
+ required:
+ - AuthType
+ Tag:
+ type: object
+ additionalProperties: false
+ properties:
+ Value:
+ type: string
+ Key:
+ type: string
+ required:
+ - Value
+ - Key
+ Tags:
+ description: An arbitrary set of tags (key-value pairs) for this AppSync API.
+ type: array
+ uniqueItems: true
+ x-insertionOrder: false
+ items:
+ $ref: '#/components/schemas/Tag'
+ ApiName:
+ description: The name of the AppSync API.
+ type: string
+ minLength: 1
+ maxLength: 50
+ pattern: '[A-Za-z0-9_\-\ ]+'
+ OwnerContact:
+ description: The owner contact information for an API resource.
+ type: string
+ minLength: 1
+ maxLength: 250
+ pattern: '[A-Za-z0-9_\-\ \.]+'
+ DnsMap:
+ description: A map of DNS names for the AppSync API.
+ type: object
+ additionalProperties: false
+ properties:
+ Realtime:
+ type: string
+ Http:
+ type: string
+ EventLogLevel:
+ description: Logging level for the AppSync API.
+ type: string
+ enum:
+ - NONE
+ - ERROR
+ - ALL
+ - INFO
+ - DEBUG
+ EventLogConfig:
+ description: The log config for the AppSync API.
+ type: object
+ additionalProperties: false
+ properties:
+ LogLevel:
+ $ref: '#/components/schemas/EventLogLevel'
+ CloudWatchLogsRoleArn:
+ type: string
+ required:
+ - LogLevel
+ - CloudWatchLogsRoleArn
+ Api:
+ type: object
+ properties:
+ ApiId:
+ description: The unique identifier for the AppSync Api generated by the service
+ type: string
+ ApiArn:
+ description: The Amazon Resource Name (ARN) of the AppSync Api
+ type: string
+ Name:
+ $ref: '#/components/schemas/ApiName'
+ OwnerContact:
+ $ref: '#/components/schemas/OwnerContact'
+ Dns:
+ $ref: '#/components/schemas/DnsMap'
+ EventConfig:
+ $ref: '#/components/schemas/EventConfig'
+ Tags:
+ $ref: '#/components/schemas/Tags'
+ required:
+ - Name
+ x-stackql-resource-name: api
+ description: Resource schema for AppSync Api
+ x-type-name: AWS::AppSync::Api
+ x-stackql-primary-identifier:
+ - ApiArn
+ x-read-only-properties:
+ - ApiId
+ - Dns
+ - Dns/Realtime
+ - Dns/Http
+ - ApiArn
+ x-required-properties:
+ - Name
+ x-tagging:
+ taggable: true
+ tagOnCreate: true
+ tagUpdatable: true
+ cloudFormationSystemTags: true
+ tagProperty: /properties/Tags
+ permissions:
+ - appsync:TagResource
+ - appsync:UntagResource
+ x-required-permissions:
+ create:
+ - appsync:CreateApi
+ - appsync:TagResource
+ - appsync:GetApi
+ - iam:PassRole
+ read:
+ - appsync:GetApi
+ - appsync:ListTagsForResource
+ update:
+ - appsync:UpdateApi
+ - appsync:TagResource
+ - appsync:UntagResource
+ - appsync:GetApi
+ - iam:PassRole
+ delete:
+ - appsync:DeleteApi
+ - appsync:UntagResource
+ list:
+ - appsync:ListApis
+ Namespace:
+ description: Namespace indentifier.
+ type: string
+ minLength: 1
+ maxLength: 50
+ pattern: ([A-Za-z0-9](?:[A-Za-z0-9\-]{0,48}[A-Za-z0-9])?)
+ Code:
+ description: String of APPSYNC_JS code to be used by the handlers.
+ type: string
+ minLength: 1
+ maxLength: 32768
+ ChannelNamespaceArn:
+ type: string
+ description: The Amazon Resource Name (ARN) for the Channel Namespace.
+ ChannelNamespace:
+ type: object
+ properties:
+ ApiId:
+ description: AppSync Api Id that this Channel Namespace belongs to.
+ type: string
+ Name:
+ $ref: '#/components/schemas/Namespace'
+ SubscribeAuthModes:
+ description: List of AuthModes supported for Subscribe operations.
+ $ref: '#/components/schemas/AuthModes'
+ PublishAuthModes:
+ description: List of AuthModes supported for Publish operations.
+ $ref: '#/components/schemas/AuthModes'
+ CodeHandlers:
+ $ref: '#/components/schemas/Code'
+ CodeS3Location:
+ description: The Amazon S3 endpoint where the code is located.
+ type: string
+ ChannelNamespaceArn:
+ $ref: '#/components/schemas/ChannelNamespaceArn'
+ Tags:
+ $ref: '#/components/schemas/Tags'
+ required:
+ - ApiId
+ - Name
+ x-stackql-resource-name: channel_namespace
+ description: Resource schema for AppSync ChannelNamespace
+ x-type-name: AWS::AppSync::ChannelNamespace
+ x-stackql-primary-identifier:
+ - ChannelNamespaceArn
+ x-create-only-properties:
+ - ApiId
+ - Name
+ x-write-only-properties:
+ - CodeS3Location
+ x-read-only-properties:
+ - ChannelNamespaceArn
+ x-required-properties:
+ - ApiId
+ - Name
+ x-tagging:
+ taggable: true
+ tagOnCreate: true
+ tagUpdatable: true
+ cloudFormationSystemTags: true
+ tagProperty: /properties/Tags
+ permissions:
+ - appsync:TagResource
+ - appsync:UntagResource
+ x-required-permissions:
+ create:
+ - appsync:CreateChannelNamespace
+ - appsync:TagResource
+ - appsync:GetChannelNamespace
+ - s3:GetObject
+ read:
+ - appsync:GetChannelNamespace
+ - appsync:ListTagsForResource
+ update:
+ - appsync:UpdateChannelNamespace
+ - appsync:TagResource
+ - appsync:UntagResource
+ - appsync:GetChannelNamespace
+ - s3:GetObject
+ delete:
+ - appsync:DeleteChannelNamespace
+ - appsync:UntagResource
+ list:
+ - appsync:ListChannelNamespaces
+ RdsHttpEndpointConfig:
+ type: object
+ additionalProperties: false
+ properties:
+ DatabaseName:
+ description: Logical database name.
+ type: string
+ AwsRegion:
+ description: AWS Region for RDS HTTP endpoint.
+ type: string
+ DbClusterIdentifier:
+ description: Amazon RDS cluster Amazon Resource Name (ARN).
+ type: string
+ AwsSecretStoreArn:
+ description: The ARN for database credentials stored in AWS Secrets Manager.
+ type: string
+ Schema:
+ description: Logical schema name.
+ type: string
+ required:
+ - AwsRegion
+ - DbClusterIdentifier
+ - AwsSecretStoreArn
+ OpenSearchServiceConfig:
+ type: object
+ additionalProperties: false
+ properties:
+ AwsRegion:
+ description: The AWS Region.
+ type: string
+ Endpoint:
+ description: The endpoint.
+ type: string
+ required:
+ - AwsRegion
+ - Endpoint
+ AwsIamConfig:
+ type: object
+ additionalProperties: false
+ properties:
+ SigningRegion:
+ description: The signing Region for AWS Identity and Access Management authorization.
+ type: string
+ SigningServiceName:
+ description: The signing service name for AWS Identity and Access Management authorization.
+ type: string
+ EventBridgeConfig:
+ type: object
+ additionalProperties: false
+ properties:
+ EventBusArn:
+ description: ARN for the EventBridge bus.
+ type: string
+ required:
+ - EventBusArn
+ AuthorizationConfig:
+ type: object
+ additionalProperties: false
+ properties:
+ AuthorizationType:
+ description: The authorization type that the HTTP endpoint requires.
+ type: string
+ AwsIamConfig:
+ description: The AWS Identity and Access Management settings.
+ $ref: '#/components/schemas/AwsIamConfig'
+ required:
+ - AuthorizationType
+ DeltaSyncConfig:
+ type: object
+ additionalProperties: false
+ properties:
+ BaseTableTTL:
+ description: The number of minutes that an Item is stored in the data source.
+ type: string
+ DeltaSyncTableTTL:
+ description: The number of minutes that a Delta Sync log entry is stored in the Delta Sync table.
+ type: string
+ DeltaSyncTableName:
+ description: The Delta Sync table name.
+ type: string
+ required:
+ - BaseTableTTL
+ - DeltaSyncTableTTL
+ - DeltaSyncTableName
+ RelationalDatabaseConfig:
+ type: object
+ additionalProperties: false
+ properties:
+ RdsHttpEndpointConfig:
+ description: Information about the Amazon RDS resource.
+ $ref: '#/components/schemas/RdsHttpEndpointConfig'
+ RelationalDatabaseSourceType:
+ description: The type of relational data source.
+ type: string
+ required:
+ - RelationalDatabaseSourceType
+ HttpConfig:
+ type: object
+ additionalProperties: false
+ properties:
+ Endpoint:
+ description: The endpoint.
+ type: string
+ AuthorizationConfig:
+ description: The authorization configuration.
+ $ref: '#/components/schemas/AuthorizationConfig'
+ required:
+ - Endpoint
+ LambdaConfig:
+ type: object
+ additionalProperties: false
+ properties:
+ LambdaFunctionArn:
+ description: The ARN for the Lambda function.
+ type: string
+ required:
+ - LambdaFunctionArn
+ ElasticsearchConfig:
+ type: object
+ additionalProperties: false
+ properties:
+ AwsRegion:
+ description: The AWS Region.
+ type: string
+ Endpoint:
+ description: The endpoint.
+ type: string
+ required:
+ - AwsRegion
+ - Endpoint
+ DynamoDBConfig:
+ type: object
+ additionalProperties: false
+ properties:
+ TableName:
+ description: The table name.
+ type: string
+ DeltaSyncConfig:
+ description: The DeltaSyncConfig for a versioned datasource.
+ $ref: '#/components/schemas/DeltaSyncConfig'
+ UseCallerCredentials:
+ description: Set to TRUE to use AWS Identity and Access Management with this data source.
+ type: boolean
+ AwsRegion:
+ description: The AWS Region.
+ type: string
+ Versioned:
+ description: Set to TRUE to use Conflict Detection and Resolution with this data source.
+ type: boolean
+ required:
+ - TableName
+ - AwsRegion
+ DataSource:
+ type: object
+ properties:
+ ApiId:
+ description: Unique AWS AppSync GraphQL API identifier where this data source will be created.
+ type: string
+ Description:
+ description: The description of the data source.
+ type: string
+ DynamoDBConfig:
+ description: AWS Region and TableName for an Amazon DynamoDB table in your account.
+ $ref: '#/components/schemas/DynamoDBConfig'
+ ElasticsearchConfig:
+ description: |-
+ AWS Region and Endpoints for an Amazon OpenSearch Service domain in your account.
+ As of September 2021, Amazon Elasticsearch Service is Amazon OpenSearch Service. This property is deprecated. For new data sources, use OpenSearchServiceConfig to specify an OpenSearch Service data source.
+ $ref: '#/components/schemas/ElasticsearchConfig'
+ EventBridgeConfig:
+ description: ARN for the EventBridge bus.
+ $ref: '#/components/schemas/EventBridgeConfig'
+ HttpConfig:
+ description: Endpoints for an HTTP data source.
+ $ref: '#/components/schemas/HttpConfig'
+ LambdaConfig:
+ description: An ARN of a Lambda function in valid ARN format. This can be the ARN of a Lambda function that exists in the current account or in another account.
+ $ref: '#/components/schemas/LambdaConfig'
+ Name:
+ description: Friendly name for you to identify your AppSync data source after creation.
+ type: string
+ OpenSearchServiceConfig:
+ description: AWS Region and Endpoints for an Amazon OpenSearch Service domain in your account.
+ $ref: '#/components/schemas/OpenSearchServiceConfig'
+ RelationalDatabaseConfig:
+ description: Relational Database configuration of the relational database data source.
+ $ref: '#/components/schemas/RelationalDatabaseConfig'
+ ServiceRoleArn:
+ description: The AWS Identity and Access Management service role ARN for the data source. The system assumes this role when accessing the data source.
+ type: string
+ Type:
+ description: The type of the data source.
+ type: string
+ DataSourceArn:
+ description: The Amazon Resource Name (ARN) of the API key, such as arn:aws:appsync:us-east-1:123456789012:apis/graphqlapiid/datasources/datasourcename.
+ type: string
+ MetricsConfig:
+ description: ''
+ type: string
+ enum:
+ - DISABLED
+ - ENABLED
+ required:
+ - Type
+ - ApiId
+ - Name
+ x-stackql-resource-name: data_source
+ description: Resource Type definition for AWS::AppSync::DataSource
+ x-type-name: AWS::AppSync::DataSource
+ x-stackql-primary-identifier:
+ - DataSourceArn
+ x-create-only-properties:
+ - ApiId
+ - Name
+ x-read-only-properties:
+ - DataSourceArn
+ x-required-properties:
+ - Type
+ - ApiId
+ - Name
+ x-tagging:
+ taggable: false
+ x-required-permissions:
+ create:
+ - appsync:CreateDataSource
+ - appsync:GetDataSource
+ - iam:PassRole
+ read:
+ - appsync:GetDataSource
+ update:
+ - appsync:UpdateDataSource
+ - iam:PassRole
+ delete:
+ - appsync:DeleteDataSource
+ - appsync:GetDataSource
+ list:
+ - appsync:ListDataSources
DomainName:
type: object
properties:
@@ -625,47 +1176,267 @@ components:
- appsync:DeleteFunction
list:
- appsync:ListFunctions
- PipelineConfig:
+ EnhancedMetricsConfig:
type: object
additionalProperties: false
properties:
- Functions:
- type: array
- description: A list of ``Function`` objects.
- uniqueItems: false
- x-insertionOrder: false
- items:
- type: string
- description: |-
- Use the ``PipelineConfig`` property type to specify ``PipelineConfig`` for an APSYlong resolver.
- ``PipelineConfig`` is a property of the [AWS::AppSync::Resolver](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-resolver.html) resource.
- CachingConfig:
+ OperationLevelMetricsConfig:
+ description: |+
+ Controls how operation metrics will be emitted to CloudWatch. Operation metrics include:
+
+ type: string
+ ResolverLevelMetricsBehavior:
+ description: |+
+ Controls how resolver metrics will be emitted to CloudWatch. Resolver metrics include:
+
+ type: string
+ DataSourceLevelMetricsBehavior:
+ description: |+
+ Controls how data source metrics will be emitted to CloudWatch. Data source metrics include:
+
+ type: string
+ required:
+ - OperationLevelMetricsConfig
+ - ResolverLevelMetricsBehavior
+ - DataSourceLevelMetricsBehavior
+ CognitoUserPoolConfig:
type: object
additionalProperties: false
properties:
- CachingKeys:
- type: array
- description: |-
- The caching keys for a resolver that has caching activated.
- Valid values are entries from the ``$context.arguments``, ``$context.source``, and ``$context.identity`` maps.
- uniqueItems: false
- x-insertionOrder: false
- items:
- type: string
- Ttl:
- type: number
- description: |-
- The TTL in seconds for a resolver that has caching activated.
- Valid values are 1–3,600 seconds.
- required:
- - Ttl
- description: The caching configuration for a resolver that has caching activated.
- Resolver:
+ AppIdClientRegex:
+ description: 'A regular expression for validating the incoming Amazon Cognito user pool app client ID. '
+ type: string
+ UserPoolId:
+ description: The user pool ID
+ type: string
+ AwsRegion:
+ description: The AWS Region in which the user pool was created.
+ type: string
+ UserPoolConfig:
type: object
+ additionalProperties: false
properties:
- ApiId:
+ AppIdClientRegex:
+ description: A regular expression for validating the incoming Amazon Cognito user pool app client ID.
type: string
- description: The APSYlong GraphQL API to which you want to attach this resolver.
+ UserPoolId:
+ description: The user pool ID.
+ type: string
+ AwsRegion:
+ description: The AWS Region in which the user pool was created.
+ type: string
+ DefaultAction:
+ description: The action that you want your GraphQL API to take when a request that uses Amazon Cognito user pool authentication doesn't match the Amazon Cognito user pool configuration.
+ type: string
+ AdditionalAuthenticationProvider:
+ type: object
+ additionalProperties: false
+ properties:
+ LambdaAuthorizerConfig:
+ $ref: '#/components/schemas/LambdaAuthorizerConfig'
+ OpenIDConnectConfig:
+ $ref: '#/components/schemas/OpenIDConnectConfig'
+ UserPoolConfig:
+ $ref: '#/components/schemas/CognitoUserPoolConfig'
+ AuthenticationType:
+ description: The authentication type for API key, AWS Identity and Access Management, OIDC, Amazon Cognito user pools, or AWS Lambda.
+ type: string
+ required:
+ - AuthenticationType
+ LogConfig:
+ type: object
+ additionalProperties: false
+ properties:
+ ExcludeVerboseContent:
+ description: Set to TRUE to exclude sections that contain information such as headers, context, and evaluated mapping templates, regardless of logging level.
+ type: boolean
+ FieldLogLevel:
+ description: The field logging level. Values can be NONE, ERROR, INFO, DEBUG, or ALL.
+ type: string
+ CloudWatchLogsRoleArn:
+ description: The service role that AWS AppSync will assume to publish to Amazon CloudWatch Logs in your account.
+ type: string
+ GraphQLApi:
+ type: object
+ properties:
+ AdditionalAuthenticationProviders:
+ type: array
+ description: A list of additional authentication providers for the GraphqlApi API.
+ uniqueItems: true
+ items:
+ $ref: '#/components/schemas/AdditionalAuthenticationProvider'
+ ApiId:
+ description: Unique AWS AppSync GraphQL API identifier.
+ type: string
+ ApiType:
+ description: The value that indicates whether the GraphQL API is a standard API (GRAPHQL) or merged API (MERGED).
+ type: string
+ Arn:
+ description: The Amazon Resource Name (ARN) of the API key
+ type: string
+ AuthenticationType:
+ description: Security configuration for your GraphQL API
+ type: string
+ EnhancedMetricsConfig:
+ description: Enables and controls the enhanced metrics feature. Enhanced metrics emit granular data on API usage and performance such as AppSync request and error counts, latency, and cache hits/misses. All enhanced metric data is sent to your CloudWatch account, and you can configure the types of data that will be sent.
+ $ref: '#/components/schemas/EnhancedMetricsConfig'
+ EnvironmentVariables:
+ description: A map containing the list of resources with their properties and environment variables.
+ type: object
+ additionalProperties: false
+ x-patternProperties:
+ ^[A-Za-z]+\w*$:
+ type: string
+ GraphQLDns:
+ description: The fully qualified domain name (FQDN) of the endpoint URL of your GraphQL API.
+ type: string
+ GraphQLEndpointArn:
+ description: The GraphQL endpoint ARN.
+ type: string
+ GraphQLUrl:
+ description: The Endpoint URL of your GraphQL API.
+ type: string
+ IntrospectionConfig:
+ description: Sets the value of the GraphQL API to enable (ENABLED) or disable (DISABLED) introspection. If no value is provided, the introspection configuration will be set to ENABLED by default. This field will produce an error if the operation attempts to use the introspection feature while this field is disabled.
+ type: string
+ LambdaAuthorizerConfig:
+ description: A LambdaAuthorizerConfig holds configuration on how to authorize AWS AppSync API access when using the AWS_LAMBDA authorizer mode. Be aware that an AWS AppSync API may have only one Lambda authorizer configured at a time.
+ $ref: '#/components/schemas/LambdaAuthorizerConfig'
+ LogConfig:
+ description: The Amazon CloudWatch Logs configuration.
+ $ref: '#/components/schemas/LogConfig'
+ MergedApiExecutionRoleArn:
+ description: 'The AWS Identity and Access Management service role ARN for a merged API. '
+ type: string
+ Name:
+ description: The API name
+ type: string
+ OpenIDConnectConfig:
+ description: The OpenID Connect configuration.
+ $ref: '#/components/schemas/OpenIDConnectConfig'
+ OwnerContact:
+ description: The owner contact information for an API resource.
+ type: string
+ QueryDepthLimit:
+ description: The maximum depth a query can have in a single request. Depth refers to the amount of nested levels allowed in the body of query.
+ type: integer
+ RealtimeDns:
+ description: The fully qualified domain name (FQDN) of the real-time endpoint URL of your GraphQL API.
+ type: string
+ RealtimeUrl:
+ description: The GraphQL API real-time endpoint URL.
+ type: string
+ ResolverCountLimit:
+ description: The maximum number of resolvers that can be invoked in a single request.
+ type: integer
+ Tags:
+ description: |+
+ An arbitrary set of tags (key-value pairs) for this GraphQL API.
+
+ type: array
+ uniqueItems: true
+ items:
+ $ref: '#/components/schemas/Tag'
+ UserPoolConfig:
+ description: |+
+ Optional authorization configuration for using Amazon Cognito user pools with your GraphQL endpoint.
+
+ $ref: '#/components/schemas/UserPoolConfig'
+ Visibility:
+ description: Sets the scope of the GraphQL API to public (GLOBAL) or private (PRIVATE). By default, the scope is set to Global if no value is provided.
+ type: string
+ XrayEnabled:
+ description: |+
+ A flag indicating whether to use AWS X-Ray tracing for this GraphqlApi.
+
+ type: boolean
+ required:
+ - Name
+ - AuthenticationType
+ x-stackql-resource-name: graphql_api
+ description: Resource Type definition for AWS::AppSync::GraphQLApi
+ x-type-name: AWS::AppSync::GraphQLApi
+ x-stackql-primary-identifier:
+ - ApiId
+ x-read-only-properties:
+ - ApiId
+ - Arn
+ - GraphQLEndpointArn
+ - GraphQLDns
+ - GraphQLUrl
+ - RealtimeDns
+ - RealtimeUrl
+ x-required-properties:
+ - Name
+ - AuthenticationType
+ x-tagging:
+ taggable: true
+ tagOnCreate: true
+ tagUpdatable: true
+ cloudFormationSystemTags: false
+ tagProperty: /properties/Tags
+ permissions:
+ - appsync:TagResource
+ - appsync:UntagResource
+ - appsync:ListTagsForResource
+ x-required-permissions:
+ create:
+ - appsync:CreateGraphqlApi
+ - appsync:TagResource
+ read:
+ - appsync:GetGraphqlApi
+ - appsync:GetGraphqlApiEnvironmentVariables
+ - appsync:ListTagsForResource
+ update:
+ - appsync:GetGraphqlApi
+ - appsync:UpdateGraphqlApi
+ - appsync:TagResource
+ - appsync:UntagResource
+ delete:
+ - appsync:DeleteGraphqlApi
+ list:
+ - appsync:ListGraphqlApis
+ PipelineConfig:
+ type: object
+ additionalProperties: false
+ properties:
+ Functions:
+ type: array
+ description: A list of ``Function`` objects.
+ uniqueItems: false
+ x-insertionOrder: false
+ items:
+ type: string
+ description: |-
+ Use the ``PipelineConfig`` property type to specify ``PipelineConfig`` for an APSYlong resolver.
+ ``PipelineConfig`` is a property of the [AWS::AppSync::Resolver](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-resolver.html) resource.
+ CachingConfig:
+ type: object
+ additionalProperties: false
+ properties:
+ CachingKeys:
+ type: array
+ description: |-
+ The caching keys for a resolver that has caching activated.
+ Valid values are entries from the ``$context.arguments``, ``$context.source``, and ``$context.identity`` maps.
+ uniqueItems: false
+ x-insertionOrder: false
+ items:
+ type: string
+ Ttl:
+ type: number
+ description: |-
+ The TTL in seconds for a resolver that has caching activated.
+ Valid values are 1–3,600 seconds.
+ required:
+ - Ttl
+ description: The caching configuration for a resolver that has caching activated.
+ Resolver:
+ type: object
+ properties:
+ ApiId:
+ type: string
+ description: The APSYlong GraphQL API to which you want to attach this resolver.
CachingConfig:
$ref: '#/components/schemas/CachingConfig'
description: The caching configuration for the resolver.
@@ -878,6 +1649,140 @@ components:
- appsync:ListSourceApiAssociations
list:
- appsync:ListSourceApiAssociations
+ CreateApiRequest:
+ properties:
+ ClientToken:
+ type: string
+ RoleArn:
+ type: string
+ TypeName:
+ type: string
+ TypeVersionId:
+ type: string
+ DesiredState:
+ type: object
+ properties:
+ ApiId:
+ description: The unique identifier for the AppSync Api generated by the service
+ type: string
+ ApiArn:
+ description: The Amazon Resource Name (ARN) of the AppSync Api
+ type: string
+ Name:
+ $ref: '#/components/schemas/ApiName'
+ OwnerContact:
+ $ref: '#/components/schemas/OwnerContact'
+ Dns:
+ $ref: '#/components/schemas/DnsMap'
+ EventConfig:
+ $ref: '#/components/schemas/EventConfig'
+ Tags:
+ $ref: '#/components/schemas/Tags'
+ x-stackQL-stringOnly: true
+ x-title: CreateApiRequest
+ type: object
+ required: []
+ CreateChannelNamespaceRequest:
+ properties:
+ ClientToken:
+ type: string
+ RoleArn:
+ type: string
+ TypeName:
+ type: string
+ TypeVersionId:
+ type: string
+ DesiredState:
+ type: object
+ properties:
+ ApiId:
+ description: AppSync Api Id that this Channel Namespace belongs to.
+ type: string
+ Name:
+ $ref: '#/components/schemas/Namespace'
+ SubscribeAuthModes:
+ description: List of AuthModes supported for Subscribe operations.
+ $ref: '#/components/schemas/AuthModes'
+ PublishAuthModes:
+ description: List of AuthModes supported for Publish operations.
+ $ref: '#/components/schemas/AuthModes'
+ CodeHandlers:
+ $ref: '#/components/schemas/Code'
+ CodeS3Location:
+ description: The Amazon S3 endpoint where the code is located.
+ type: string
+ ChannelNamespaceArn:
+ $ref: '#/components/schemas/ChannelNamespaceArn'
+ Tags:
+ $ref: '#/components/schemas/Tags'
+ x-stackQL-stringOnly: true
+ x-title: CreateChannelNamespaceRequest
+ type: object
+ required: []
+ CreateDataSourceRequest:
+ properties:
+ ClientToken:
+ type: string
+ RoleArn:
+ type: string
+ TypeName:
+ type: string
+ TypeVersionId:
+ type: string
+ DesiredState:
+ type: object
+ properties:
+ ApiId:
+ description: Unique AWS AppSync GraphQL API identifier where this data source will be created.
+ type: string
+ Description:
+ description: The description of the data source.
+ type: string
+ DynamoDBConfig:
+ description: AWS Region and TableName for an Amazon DynamoDB table in your account.
+ $ref: '#/components/schemas/DynamoDBConfig'
+ ElasticsearchConfig:
+ description: |-
+ AWS Region and Endpoints for an Amazon OpenSearch Service domain in your account.
+ As of September 2021, Amazon Elasticsearch Service is Amazon OpenSearch Service. This property is deprecated. For new data sources, use OpenSearchServiceConfig to specify an OpenSearch Service data source.
+ $ref: '#/components/schemas/ElasticsearchConfig'
+ EventBridgeConfig:
+ description: ARN for the EventBridge bus.
+ $ref: '#/components/schemas/EventBridgeConfig'
+ HttpConfig:
+ description: Endpoints for an HTTP data source.
+ $ref: '#/components/schemas/HttpConfig'
+ LambdaConfig:
+ description: An ARN of a Lambda function in valid ARN format. This can be the ARN of a Lambda function that exists in the current account or in another account.
+ $ref: '#/components/schemas/LambdaConfig'
+ Name:
+ description: Friendly name for you to identify your AppSync data source after creation.
+ type: string
+ OpenSearchServiceConfig:
+ description: AWS Region and Endpoints for an Amazon OpenSearch Service domain in your account.
+ $ref: '#/components/schemas/OpenSearchServiceConfig'
+ RelationalDatabaseConfig:
+ description: Relational Database configuration of the relational database data source.
+ $ref: '#/components/schemas/RelationalDatabaseConfig'
+ ServiceRoleArn:
+ description: The AWS Identity and Access Management service role ARN for the data source. The system assumes this role when accessing the data source.
+ type: string
+ Type:
+ description: The type of the data source.
+ type: string
+ DataSourceArn:
+ description: The Amazon Resource Name (ARN) of the API key, such as arn:aws:appsync:us-east-1:123456789012:apis/graphqlapiid/datasources/datasourcename.
+ type: string
+ MetricsConfig:
+ description: ''
+ type: string
+ enum:
+ - DISABLED
+ - ENABLED
+ x-stackQL-stringOnly: true
+ x-title: CreateDataSourceRequest
+ type: object
+ required: []
CreateDomainNameRequest:
properties:
ClientToken:
@@ -1004,6 +1909,114 @@ components:
x-title: CreateFunctionConfigurationRequest
type: object
required: []
+ CreateGraphQLApiRequest:
+ properties:
+ ClientToken:
+ type: string
+ RoleArn:
+ type: string
+ TypeName:
+ type: string
+ TypeVersionId:
+ type: string
+ DesiredState:
+ type: object
+ properties:
+ AdditionalAuthenticationProviders:
+ type: array
+ description: A list of additional authentication providers for the GraphqlApi API.
+ uniqueItems: true
+ items:
+ $ref: '#/components/schemas/AdditionalAuthenticationProvider'
+ ApiId:
+ description: Unique AWS AppSync GraphQL API identifier.
+ type: string
+ ApiType:
+ description: The value that indicates whether the GraphQL API is a standard API (GRAPHQL) or merged API (MERGED).
+ type: string
+ Arn:
+ description: The Amazon Resource Name (ARN) of the API key
+ type: string
+ AuthenticationType:
+ description: Security configuration for your GraphQL API
+ type: string
+ EnhancedMetricsConfig:
+ description: Enables and controls the enhanced metrics feature. Enhanced metrics emit granular data on API usage and performance such as AppSync request and error counts, latency, and cache hits/misses. All enhanced metric data is sent to your CloudWatch account, and you can configure the types of data that will be sent.
+ $ref: '#/components/schemas/EnhancedMetricsConfig'
+ EnvironmentVariables:
+ description: A map containing the list of resources with their properties and environment variables.
+ type: object
+ additionalProperties: false
+ x-patternProperties:
+ ^[A-Za-z]+\w*$:
+ type: string
+ GraphQLDns:
+ description: The fully qualified domain name (FQDN) of the endpoint URL of your GraphQL API.
+ type: string
+ GraphQLEndpointArn:
+ description: The GraphQL endpoint ARN.
+ type: string
+ GraphQLUrl:
+ description: The Endpoint URL of your GraphQL API.
+ type: string
+ IntrospectionConfig:
+ description: Sets the value of the GraphQL API to enable (ENABLED) or disable (DISABLED) introspection. If no value is provided, the introspection configuration will be set to ENABLED by default. This field will produce an error if the operation attempts to use the introspection feature while this field is disabled.
+ type: string
+ LambdaAuthorizerConfig:
+ description: A LambdaAuthorizerConfig holds configuration on how to authorize AWS AppSync API access when using the AWS_LAMBDA authorizer mode. Be aware that an AWS AppSync API may have only one Lambda authorizer configured at a time.
+ $ref: '#/components/schemas/LambdaAuthorizerConfig'
+ LogConfig:
+ description: The Amazon CloudWatch Logs configuration.
+ $ref: '#/components/schemas/LogConfig'
+ MergedApiExecutionRoleArn:
+ description: 'The AWS Identity and Access Management service role ARN for a merged API. '
+ type: string
+ Name:
+ description: The API name
+ type: string
+ OpenIDConnectConfig:
+ description: The OpenID Connect configuration.
+ $ref: '#/components/schemas/OpenIDConnectConfig'
+ OwnerContact:
+ description: The owner contact information for an API resource.
+ type: string
+ QueryDepthLimit:
+ description: The maximum depth a query can have in a single request. Depth refers to the amount of nested levels allowed in the body of query.
+ type: integer
+ RealtimeDns:
+ description: The fully qualified domain name (FQDN) of the real-time endpoint URL of your GraphQL API.
+ type: string
+ RealtimeUrl:
+ description: The GraphQL API real-time endpoint URL.
+ type: string
+ ResolverCountLimit:
+ description: The maximum number of resolvers that can be invoked in a single request.
+ type: integer
+ Tags:
+ description: |+
+ An arbitrary set of tags (key-value pairs) for this GraphQL API.
+
+ type: array
+ uniqueItems: true
+ items:
+ $ref: '#/components/schemas/Tag'
+ UserPoolConfig:
+ description: |+
+ Optional authorization configuration for using Amazon Cognito user pools with your GraphQL endpoint.
+
+ $ref: '#/components/schemas/UserPoolConfig'
+ Visibility:
+ description: Sets the scope of the GraphQL API to public (GLOBAL) or private (PRIVATE). By default, the scope is set to Global if no value is provided.
+ type: string
+ XrayEnabled:
+ description: |+
+ A flag indicating whether to use AWS X-Ray tracing for this GraphqlApi.
+
+ type: boolean
+ x-stackQL-stringOnly: true
+ x-title: CreateGraphQLApiRequest
+ type: object
+ required: []
CreateResolverRequest:
properties:
ClientToken:
@@ -1159,6 +2172,624 @@ components:
description: Amazon Signature authorization v4
x-amazon-apigateway-authtype: awsSigv4
x-stackQL-resources:
+ apis:
+ name: apis
+ id: aws.appsync.apis
+ x-cfn-schema-name: Api
+ x-cfn-type-name: AWS::AppSync::Api
+ x-identifiers:
+ - ApiArn
+ x-type: cloud_control
+ methods:
+ create_resource:
+ config:
+ requestBodyTranslate:
+ algorithm: naive_DesiredState
+ operation:
+ $ref: '#/paths/~1?Action=CreateResource&Version=2021-09-30&__Api&__detailTransformed=true/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::AppSync::Api"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ update_resource:
+ operation:
+ $ref: '#/paths/~1?Action=UpdateResource&Version=2021-09-30/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::AppSync::Api"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ delete_resource:
+ operation:
+ $ref: '#/paths/~1?Action=DeleteResource&Version=2021-09-30/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::AppSync::Api"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ sqlVerbs:
+ insert:
+ - $ref: '#/components/x-stackQL-resources/apis/methods/create_resource'
+ delete:
+ - $ref: '#/components/x-stackQL-resources/apis/methods/delete_resource'
+ update:
+ - $ref: '#/components/x-stackQL-resources/apis/methods/update_resource'
+ config:
+ views:
+ select:
+ predicate: sqlDialect == "sqlite3" && requiredParams == [ data__Identifier ]
+ ddl: |-
+ SELECT
+ region,
+ data__Identifier,
+ JSON_EXTRACT(Properties, '$.ApiId') as api_id,
+ JSON_EXTRACT(Properties, '$.ApiArn') as api_arn,
+ JSON_EXTRACT(Properties, '$.Name') as name,
+ JSON_EXTRACT(Properties, '$.OwnerContact') as owner_contact,
+ JSON_EXTRACT(Properties, '$.Dns') as dns,
+ JSON_EXTRACT(Properties, '$.EventConfig') as event_config,
+ JSON_EXTRACT(Properties, '$.Tags') as tags
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::AppSync::Api'
+ AND data__Identifier = ''
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "sqlite3"
+ ddl: |-
+ SELECT
+ detail.region,
+ JSON_EXTRACT(detail.Properties, '$.ApiId') as api_id,
+ JSON_EXTRACT(detail.Properties, '$.ApiArn') as api_arn,
+ JSON_EXTRACT(detail.Properties, '$.Name') as name,
+ JSON_EXTRACT(detail.Properties, '$.OwnerContact') as owner_contact,
+ JSON_EXTRACT(detail.Properties, '$.Dns') as dns,
+ JSON_EXTRACT(detail.Properties, '$.EventConfig') as event_config,
+ JSON_EXTRACT(detail.Properties, '$.Tags') as tags
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ WHERE listing.data__TypeName = 'AWS::AppSync::Api'
+ AND detail.data__TypeName = 'AWS::AppSync::Api'
+ AND listing.region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres" && requiredParams == [ data__Identifier ]
+ ddl: |-
+ SELECT
+ region,
+ data__Identifier,
+ json_extract_path_text(Properties, 'ApiId') as api_id,
+ json_extract_path_text(Properties, 'ApiArn') as api_arn,
+ json_extract_path_text(Properties, 'Name') as name,
+ json_extract_path_text(Properties, 'OwnerContact') as owner_contact,
+ json_extract_path_text(Properties, 'Dns') as dns,
+ json_extract_path_text(Properties, 'EventConfig') as event_config,
+ json_extract_path_text(Properties, 'Tags') as tags
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::AppSync::Api'
+ AND data__Identifier = ''
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres"
+ ddl: |-
+ SELECT
+ detail.region,
+ json_extract_path_text(detail.Properties, 'ApiId') as api_id,
+ json_extract_path_text(detail.Properties, 'ApiArn') as api_arn,
+ json_extract_path_text(detail.Properties, 'Name') as name,
+ json_extract_path_text(detail.Properties, 'OwnerContact') as owner_contact,
+ json_extract_path_text(detail.Properties, 'Dns') as dns,
+ json_extract_path_text(detail.Properties, 'EventConfig') as event_config,
+ json_extract_path_text(detail.Properties, 'Tags') as tags
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ WHERE listing.data__TypeName = 'AWS::AppSync::Api'
+ AND detail.data__TypeName = 'AWS::AppSync::Api'
+ AND listing.region = 'us-east-1'
+ apis_list_only:
+ name: apis_list_only
+ id: aws.appsync.apis_list_only
+ x-cfn-schema-name: Api
+ x-cfn-type-name: AWS::AppSync::Api
+ x-identifiers:
+ - ApiArn
+ x-type: cloud_control_view
+ methods: {}
+ sqlVerbs:
+ insert: []
+ delete: []
+ update: []
+ config:
+ views:
+ select:
+ predicate: sqlDialect == "sqlite3"
+ ddl: |-
+ SELECT
+ region,
+ JSON_EXTRACT(Properties, '$.ApiArn') as api_arn
+ FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::AppSync::Api'
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres"
+ ddl: |-
+ SELECT
+ region,
+ json_extract_path_text(Properties, 'ApiArn') as api_arn
+ FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::AppSync::Api'
+ AND region = 'us-east-1'
+ api_tags:
+ name: api_tags
+ id: aws.appsync.api_tags
+ x-cfn-schema-name: Api
+ x-cfn-type-name: AWS::AppSync::Api
+ x-type: cloud_control_view
+ methods: {}
+ sqlVerbs:
+ insert: []
+ delete: []
+ update: []
+ config:
+ views:
+ select:
+ predicate: sqlDialect == "sqlite3"
+ ddl: |-
+ SELECT
+ detail.region,
+ JSON_EXTRACT(json_each.value, '$.Key') as tag_key,
+ JSON_EXTRACT(json_each.value, '$.Value') as tag_value,
+ JSON_EXTRACT(detail.Properties, '$.ApiId') as api_id,
+ JSON_EXTRACT(detail.Properties, '$.ApiArn') as api_arn,
+ JSON_EXTRACT(detail.Properties, '$.Name') as name,
+ JSON_EXTRACT(detail.Properties, '$.OwnerContact') as owner_contact,
+ JSON_EXTRACT(detail.Properties, '$.Dns') as dns,
+ JSON_EXTRACT(detail.Properties, '$.EventConfig') as event_config
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ ,json_each(JSON_EXTRACT(detail.Properties, '$.Tags'))
+ WHERE listing.data__TypeName = 'AWS::AppSync::Api'
+ AND detail.data__TypeName = 'AWS::AppSync::Api'
+ AND listing.region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres"
+ ddl: |-
+ SELECT
+ detail.region,
+ json_extract_path_text(json_each.value, 'Key') as tag_key,
+ json_extract_path_text(json_each.value, 'Value') as tag_value,
+ json_extract_path_text(detail.Properties, 'ApiId') as api_id,
+ json_extract_path_text(detail.Properties, 'ApiArn') as api_arn,
+ json_extract_path_text(detail.Properties, 'Name') as name,
+ json_extract_path_text(detail.Properties, 'OwnerContact') as owner_contact,
+ json_extract_path_text(detail.Properties, 'Dns') as dns,
+ json_extract_path_text(detail.Properties, 'EventConfig') as event_config
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ ,json_array_elements_text(json_extract_path_text(detail.Properties, 'Tags'))
+ WHERE listing.data__TypeName = 'AWS::AppSync::Api'
+ AND detail.data__TypeName = 'AWS::AppSync::Api'
+ AND listing.region = 'us-east-1'
+ channel_namespaces:
+ name: channel_namespaces
+ id: aws.appsync.channel_namespaces
+ x-cfn-schema-name: ChannelNamespace
+ x-cfn-type-name: AWS::AppSync::ChannelNamespace
+ x-identifiers:
+ - ChannelNamespaceArn
+ x-type: cloud_control
+ methods:
+ create_resource:
+ config:
+ requestBodyTranslate:
+ algorithm: naive_DesiredState
+ operation:
+ $ref: '#/paths/~1?Action=CreateResource&Version=2021-09-30&__ChannelNamespace&__detailTransformed=true/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::AppSync::ChannelNamespace"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ update_resource:
+ operation:
+ $ref: '#/paths/~1?Action=UpdateResource&Version=2021-09-30/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::AppSync::ChannelNamespace"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ delete_resource:
+ operation:
+ $ref: '#/paths/~1?Action=DeleteResource&Version=2021-09-30/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::AppSync::ChannelNamespace"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ sqlVerbs:
+ insert:
+ - $ref: '#/components/x-stackQL-resources/channel_namespaces/methods/create_resource'
+ delete:
+ - $ref: '#/components/x-stackQL-resources/channel_namespaces/methods/delete_resource'
+ update:
+ - $ref: '#/components/x-stackQL-resources/channel_namespaces/methods/update_resource'
+ config:
+ views:
+ select:
+ predicate: sqlDialect == "sqlite3" && requiredParams == [ data__Identifier ]
+ ddl: |-
+ SELECT
+ region,
+ data__Identifier,
+ JSON_EXTRACT(Properties, '$.ApiId') as api_id,
+ JSON_EXTRACT(Properties, '$.Name') as name,
+ JSON_EXTRACT(Properties, '$.SubscribeAuthModes') as subscribe_auth_modes,
+ JSON_EXTRACT(Properties, '$.PublishAuthModes') as publish_auth_modes,
+ JSON_EXTRACT(Properties, '$.CodeHandlers') as code_handlers,
+ JSON_EXTRACT(Properties, '$.CodeS3Location') as code_s3_location,
+ JSON_EXTRACT(Properties, '$.ChannelNamespaceArn') as channel_namespace_arn,
+ JSON_EXTRACT(Properties, '$.Tags') as tags
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::AppSync::ChannelNamespace'
+ AND data__Identifier = ''
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "sqlite3"
+ ddl: |-
+ SELECT
+ detail.region,
+ JSON_EXTRACT(detail.Properties, '$.ApiId') as api_id,
+ JSON_EXTRACT(detail.Properties, '$.Name') as name,
+ JSON_EXTRACT(detail.Properties, '$.SubscribeAuthModes') as subscribe_auth_modes,
+ JSON_EXTRACT(detail.Properties, '$.PublishAuthModes') as publish_auth_modes,
+ JSON_EXTRACT(detail.Properties, '$.CodeHandlers') as code_handlers,
+ JSON_EXTRACT(detail.Properties, '$.CodeS3Location') as code_s3_location,
+ JSON_EXTRACT(detail.Properties, '$.ChannelNamespaceArn') as channel_namespace_arn,
+ JSON_EXTRACT(detail.Properties, '$.Tags') as tags
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ WHERE listing.data__TypeName = 'AWS::AppSync::ChannelNamespace'
+ AND detail.data__TypeName = 'AWS::AppSync::ChannelNamespace'
+ AND listing.region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres" && requiredParams == [ data__Identifier ]
+ ddl: |-
+ SELECT
+ region,
+ data__Identifier,
+ json_extract_path_text(Properties, 'ApiId') as api_id,
+ json_extract_path_text(Properties, 'Name') as name,
+ json_extract_path_text(Properties, 'SubscribeAuthModes') as subscribe_auth_modes,
+ json_extract_path_text(Properties, 'PublishAuthModes') as publish_auth_modes,
+ json_extract_path_text(Properties, 'CodeHandlers') as code_handlers,
+ json_extract_path_text(Properties, 'CodeS3Location') as code_s3_location,
+ json_extract_path_text(Properties, 'ChannelNamespaceArn') as channel_namespace_arn,
+ json_extract_path_text(Properties, 'Tags') as tags
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::AppSync::ChannelNamespace'
+ AND data__Identifier = ''
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres"
+ ddl: |-
+ SELECT
+ detail.region,
+ json_extract_path_text(detail.Properties, 'ApiId') as api_id,
+ json_extract_path_text(detail.Properties, 'Name') as name,
+ json_extract_path_text(detail.Properties, 'SubscribeAuthModes') as subscribe_auth_modes,
+ json_extract_path_text(detail.Properties, 'PublishAuthModes') as publish_auth_modes,
+ json_extract_path_text(detail.Properties, 'CodeHandlers') as code_handlers,
+ json_extract_path_text(detail.Properties, 'CodeS3Location') as code_s3_location,
+ json_extract_path_text(detail.Properties, 'ChannelNamespaceArn') as channel_namespace_arn,
+ json_extract_path_text(detail.Properties, 'Tags') as tags
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ WHERE listing.data__TypeName = 'AWS::AppSync::ChannelNamespace'
+ AND detail.data__TypeName = 'AWS::AppSync::ChannelNamespace'
+ AND listing.region = 'us-east-1'
+ channel_namespaces_list_only:
+ name: channel_namespaces_list_only
+ id: aws.appsync.channel_namespaces_list_only
+ x-cfn-schema-name: ChannelNamespace
+ x-cfn-type-name: AWS::AppSync::ChannelNamespace
+ x-identifiers:
+ - ChannelNamespaceArn
+ x-type: cloud_control_view
+ methods: {}
+ sqlVerbs:
+ insert: []
+ delete: []
+ update: []
+ config:
+ views:
+ select:
+ predicate: sqlDialect == "sqlite3"
+ ddl: |-
+ SELECT
+ region,
+ JSON_EXTRACT(Properties, '$.ChannelNamespaceArn') as channel_namespace_arn
+ FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::AppSync::ChannelNamespace'
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres"
+ ddl: |-
+ SELECT
+ region,
+ json_extract_path_text(Properties, 'ChannelNamespaceArn') as channel_namespace_arn
+ FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::AppSync::ChannelNamespace'
+ AND region = 'us-east-1'
+ channel_namespace_tags:
+ name: channel_namespace_tags
+ id: aws.appsync.channel_namespace_tags
+ x-cfn-schema-name: ChannelNamespace
+ x-cfn-type-name: AWS::AppSync::ChannelNamespace
+ x-type: cloud_control_view
+ methods: {}
+ sqlVerbs:
+ insert: []
+ delete: []
+ update: []
+ config:
+ views:
+ select:
+ predicate: sqlDialect == "sqlite3"
+ ddl: |-
+ SELECT
+ detail.region,
+ JSON_EXTRACT(json_each.value, '$.Key') as tag_key,
+ JSON_EXTRACT(json_each.value, '$.Value') as tag_value,
+ JSON_EXTRACT(detail.Properties, '$.ApiId') as api_id,
+ JSON_EXTRACT(detail.Properties, '$.Name') as name,
+ JSON_EXTRACT(detail.Properties, '$.SubscribeAuthModes') as subscribe_auth_modes,
+ JSON_EXTRACT(detail.Properties, '$.PublishAuthModes') as publish_auth_modes,
+ JSON_EXTRACT(detail.Properties, '$.CodeHandlers') as code_handlers,
+ JSON_EXTRACT(detail.Properties, '$.CodeS3Location') as code_s3_location,
+ JSON_EXTRACT(detail.Properties, '$.ChannelNamespaceArn') as channel_namespace_arn
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ ,json_each(JSON_EXTRACT(detail.Properties, '$.Tags'))
+ WHERE listing.data__TypeName = 'AWS::AppSync::ChannelNamespace'
+ AND detail.data__TypeName = 'AWS::AppSync::ChannelNamespace'
+ AND listing.region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres"
+ ddl: |-
+ SELECT
+ detail.region,
+ json_extract_path_text(json_each.value, 'Key') as tag_key,
+ json_extract_path_text(json_each.value, 'Value') as tag_value,
+ json_extract_path_text(detail.Properties, 'ApiId') as api_id,
+ json_extract_path_text(detail.Properties, 'Name') as name,
+ json_extract_path_text(detail.Properties, 'SubscribeAuthModes') as subscribe_auth_modes,
+ json_extract_path_text(detail.Properties, 'PublishAuthModes') as publish_auth_modes,
+ json_extract_path_text(detail.Properties, 'CodeHandlers') as code_handlers,
+ json_extract_path_text(detail.Properties, 'CodeS3Location') as code_s3_location,
+ json_extract_path_text(detail.Properties, 'ChannelNamespaceArn') as channel_namespace_arn
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ ,json_array_elements_text(json_extract_path_text(detail.Properties, 'Tags'))
+ WHERE listing.data__TypeName = 'AWS::AppSync::ChannelNamespace'
+ AND detail.data__TypeName = 'AWS::AppSync::ChannelNamespace'
+ AND listing.region = 'us-east-1'
+ data_sources:
+ name: data_sources
+ id: aws.appsync.data_sources
+ x-cfn-schema-name: DataSource
+ x-cfn-type-name: AWS::AppSync::DataSource
+ x-identifiers:
+ - DataSourceArn
+ x-type: cloud_control
+ methods:
+ create_resource:
+ config:
+ requestBodyTranslate:
+ algorithm: naive_DesiredState
+ operation:
+ $ref: '#/paths/~1?Action=CreateResource&Version=2021-09-30&__DataSource&__detailTransformed=true/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::AppSync::DataSource"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ update_resource:
+ operation:
+ $ref: '#/paths/~1?Action=UpdateResource&Version=2021-09-30/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::AppSync::DataSource"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ delete_resource:
+ operation:
+ $ref: '#/paths/~1?Action=DeleteResource&Version=2021-09-30/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::AppSync::DataSource"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ sqlVerbs:
+ insert:
+ - $ref: '#/components/x-stackQL-resources/data_sources/methods/create_resource'
+ delete:
+ - $ref: '#/components/x-stackQL-resources/data_sources/methods/delete_resource'
+ update:
+ - $ref: '#/components/x-stackQL-resources/data_sources/methods/update_resource'
+ config:
+ views:
+ select:
+ predicate: sqlDialect == "sqlite3" && requiredParams == [ data__Identifier ]
+ ddl: |-
+ SELECT
+ region,
+ data__Identifier,
+ JSON_EXTRACT(Properties, '$.ApiId') as api_id,
+ JSON_EXTRACT(Properties, '$.Description') as description,
+ JSON_EXTRACT(Properties, '$.DynamoDBConfig') as dynamo_db_config,
+ JSON_EXTRACT(Properties, '$.ElasticsearchConfig') as elasticsearch_config,
+ JSON_EXTRACT(Properties, '$.EventBridgeConfig') as event_bridge_config,
+ JSON_EXTRACT(Properties, '$.HttpConfig') as http_config,
+ JSON_EXTRACT(Properties, '$.LambdaConfig') as lambda_config,
+ JSON_EXTRACT(Properties, '$.Name') as name,
+ JSON_EXTRACT(Properties, '$.OpenSearchServiceConfig') as open_search_service_config,
+ JSON_EXTRACT(Properties, '$.RelationalDatabaseConfig') as relational_database_config,
+ JSON_EXTRACT(Properties, '$.ServiceRoleArn') as service_role_arn,
+ JSON_EXTRACT(Properties, '$.Type') as type,
+ JSON_EXTRACT(Properties, '$.DataSourceArn') as data_source_arn,
+ JSON_EXTRACT(Properties, '$.MetricsConfig') as metrics_config
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::AppSync::DataSource'
+ AND data__Identifier = ''
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "sqlite3"
+ ddl: |-
+ SELECT
+ detail.region,
+ JSON_EXTRACT(detail.Properties, '$.ApiId') as api_id,
+ JSON_EXTRACT(detail.Properties, '$.Description') as description,
+ JSON_EXTRACT(detail.Properties, '$.DynamoDBConfig') as dynamo_db_config,
+ JSON_EXTRACT(detail.Properties, '$.ElasticsearchConfig') as elasticsearch_config,
+ JSON_EXTRACT(detail.Properties, '$.EventBridgeConfig') as event_bridge_config,
+ JSON_EXTRACT(detail.Properties, '$.HttpConfig') as http_config,
+ JSON_EXTRACT(detail.Properties, '$.LambdaConfig') as lambda_config,
+ JSON_EXTRACT(detail.Properties, '$.Name') as name,
+ JSON_EXTRACT(detail.Properties, '$.OpenSearchServiceConfig') as open_search_service_config,
+ JSON_EXTRACT(detail.Properties, '$.RelationalDatabaseConfig') as relational_database_config,
+ JSON_EXTRACT(detail.Properties, '$.ServiceRoleArn') as service_role_arn,
+ JSON_EXTRACT(detail.Properties, '$.Type') as type,
+ JSON_EXTRACT(detail.Properties, '$.DataSourceArn') as data_source_arn,
+ JSON_EXTRACT(detail.Properties, '$.MetricsConfig') as metrics_config
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ WHERE listing.data__TypeName = 'AWS::AppSync::DataSource'
+ AND detail.data__TypeName = 'AWS::AppSync::DataSource'
+ AND listing.region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres" && requiredParams == [ data__Identifier ]
+ ddl: |-
+ SELECT
+ region,
+ data__Identifier,
+ json_extract_path_text(Properties, 'ApiId') as api_id,
+ json_extract_path_text(Properties, 'Description') as description,
+ json_extract_path_text(Properties, 'DynamoDBConfig') as dynamo_db_config,
+ json_extract_path_text(Properties, 'ElasticsearchConfig') as elasticsearch_config,
+ json_extract_path_text(Properties, 'EventBridgeConfig') as event_bridge_config,
+ json_extract_path_text(Properties, 'HttpConfig') as http_config,
+ json_extract_path_text(Properties, 'LambdaConfig') as lambda_config,
+ json_extract_path_text(Properties, 'Name') as name,
+ json_extract_path_text(Properties, 'OpenSearchServiceConfig') as open_search_service_config,
+ json_extract_path_text(Properties, 'RelationalDatabaseConfig') as relational_database_config,
+ json_extract_path_text(Properties, 'ServiceRoleArn') as service_role_arn,
+ json_extract_path_text(Properties, 'Type') as type,
+ json_extract_path_text(Properties, 'DataSourceArn') as data_source_arn,
+ json_extract_path_text(Properties, 'MetricsConfig') as metrics_config
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::AppSync::DataSource'
+ AND data__Identifier = ''
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres"
+ ddl: |-
+ SELECT
+ detail.region,
+ json_extract_path_text(detail.Properties, 'ApiId') as api_id,
+ json_extract_path_text(detail.Properties, 'Description') as description,
+ json_extract_path_text(detail.Properties, 'DynamoDBConfig') as dynamo_db_config,
+ json_extract_path_text(detail.Properties, 'ElasticsearchConfig') as elasticsearch_config,
+ json_extract_path_text(detail.Properties, 'EventBridgeConfig') as event_bridge_config,
+ json_extract_path_text(detail.Properties, 'HttpConfig') as http_config,
+ json_extract_path_text(detail.Properties, 'LambdaConfig') as lambda_config,
+ json_extract_path_text(detail.Properties, 'Name') as name,
+ json_extract_path_text(detail.Properties, 'OpenSearchServiceConfig') as open_search_service_config,
+ json_extract_path_text(detail.Properties, 'RelationalDatabaseConfig') as relational_database_config,
+ json_extract_path_text(detail.Properties, 'ServiceRoleArn') as service_role_arn,
+ json_extract_path_text(detail.Properties, 'Type') as type,
+ json_extract_path_text(detail.Properties, 'DataSourceArn') as data_source_arn,
+ json_extract_path_text(detail.Properties, 'MetricsConfig') as metrics_config
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ WHERE listing.data__TypeName = 'AWS::AppSync::DataSource'
+ AND detail.data__TypeName = 'AWS::AppSync::DataSource'
+ AND listing.region = 'us-east-1'
+ data_sources_list_only:
+ name: data_sources_list_only
+ id: aws.appsync.data_sources_list_only
+ x-cfn-schema-name: DataSource
+ x-cfn-type-name: AWS::AppSync::DataSource
+ x-identifiers:
+ - DataSourceArn
+ x-type: cloud_control_view
+ methods: {}
+ sqlVerbs:
+ insert: []
+ delete: []
+ update: []
+ config:
+ views:
+ select:
+ predicate: sqlDialect == "sqlite3"
+ ddl: |-
+ SELECT
+ region,
+ JSON_EXTRACT(Properties, '$.DataSourceArn') as data_source_arn
+ FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::AppSync::DataSource'
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres"
+ ddl: |-
+ SELECT
+ region,
+ json_extract_path_text(Properties, 'DataSourceArn') as data_source_arn
+ FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::AppSync::DataSource'
+ AND region = 'us-east-1'
domain_names:
name: domain_names
id: aws.appsync.domain_names
@@ -1440,11 +3071,205 @@ components:
openAPIDocKey: '200'
sqlVerbs:
insert:
- - $ref: '#/components/x-stackQL-resources/function_configurations/methods/create_resource'
+ - $ref: '#/components/x-stackQL-resources/function_configurations/methods/create_resource'
+ delete:
+ - $ref: '#/components/x-stackQL-resources/function_configurations/methods/delete_resource'
+ update:
+ - $ref: '#/components/x-stackQL-resources/function_configurations/methods/update_resource'
+ config:
+ views:
+ select:
+ predicate: sqlDialect == "sqlite3" && requiredParams == [ data__Identifier ]
+ ddl: |-
+ SELECT
+ region,
+ data__Identifier,
+ JSON_EXTRACT(Properties, '$.FunctionId') as function_id,
+ JSON_EXTRACT(Properties, '$.FunctionArn') as function_arn,
+ JSON_EXTRACT(Properties, '$.ApiId') as api_id,
+ JSON_EXTRACT(Properties, '$.Code') as code,
+ JSON_EXTRACT(Properties, '$.CodeS3Location') as code_s3_location,
+ JSON_EXTRACT(Properties, '$.DataSourceName') as data_source_name,
+ JSON_EXTRACT(Properties, '$.Description') as description,
+ JSON_EXTRACT(Properties, '$.FunctionVersion') as function_version,
+ JSON_EXTRACT(Properties, '$.MaxBatchSize') as max_batch_size,
+ JSON_EXTRACT(Properties, '$.Name') as name,
+ JSON_EXTRACT(Properties, '$.RequestMappingTemplate') as request_mapping_template,
+ JSON_EXTRACT(Properties, '$.RequestMappingTemplateS3Location') as request_mapping_template_s3_location,
+ JSON_EXTRACT(Properties, '$.ResponseMappingTemplate') as response_mapping_template,
+ JSON_EXTRACT(Properties, '$.ResponseMappingTemplateS3Location') as response_mapping_template_s3_location,
+ JSON_EXTRACT(Properties, '$.Runtime') as runtime,
+ JSON_EXTRACT(Properties, '$.SyncConfig') as sync_config
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::AppSync::FunctionConfiguration'
+ AND data__Identifier = ''
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "sqlite3"
+ ddl: |-
+ SELECT
+ detail.region,
+ JSON_EXTRACT(detail.Properties, '$.FunctionId') as function_id,
+ JSON_EXTRACT(detail.Properties, '$.FunctionArn') as function_arn,
+ JSON_EXTRACT(detail.Properties, '$.ApiId') as api_id,
+ JSON_EXTRACT(detail.Properties, '$.Code') as code,
+ JSON_EXTRACT(detail.Properties, '$.CodeS3Location') as code_s3_location,
+ JSON_EXTRACT(detail.Properties, '$.DataSourceName') as data_source_name,
+ JSON_EXTRACT(detail.Properties, '$.Description') as description,
+ JSON_EXTRACT(detail.Properties, '$.FunctionVersion') as function_version,
+ JSON_EXTRACT(detail.Properties, '$.MaxBatchSize') as max_batch_size,
+ JSON_EXTRACT(detail.Properties, '$.Name') as name,
+ JSON_EXTRACT(detail.Properties, '$.RequestMappingTemplate') as request_mapping_template,
+ JSON_EXTRACT(detail.Properties, '$.RequestMappingTemplateS3Location') as request_mapping_template_s3_location,
+ JSON_EXTRACT(detail.Properties, '$.ResponseMappingTemplate') as response_mapping_template,
+ JSON_EXTRACT(detail.Properties, '$.ResponseMappingTemplateS3Location') as response_mapping_template_s3_location,
+ JSON_EXTRACT(detail.Properties, '$.Runtime') as runtime,
+ JSON_EXTRACT(detail.Properties, '$.SyncConfig') as sync_config
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ WHERE listing.data__TypeName = 'AWS::AppSync::FunctionConfiguration'
+ AND detail.data__TypeName = 'AWS::AppSync::FunctionConfiguration'
+ AND listing.region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres" && requiredParams == [ data__Identifier ]
+ ddl: |-
+ SELECT
+ region,
+ data__Identifier,
+ json_extract_path_text(Properties, 'FunctionId') as function_id,
+ json_extract_path_text(Properties, 'FunctionArn') as function_arn,
+ json_extract_path_text(Properties, 'ApiId') as api_id,
+ json_extract_path_text(Properties, 'Code') as code,
+ json_extract_path_text(Properties, 'CodeS3Location') as code_s3_location,
+ json_extract_path_text(Properties, 'DataSourceName') as data_source_name,
+ json_extract_path_text(Properties, 'Description') as description,
+ json_extract_path_text(Properties, 'FunctionVersion') as function_version,
+ json_extract_path_text(Properties, 'MaxBatchSize') as max_batch_size,
+ json_extract_path_text(Properties, 'Name') as name,
+ json_extract_path_text(Properties, 'RequestMappingTemplate') as request_mapping_template,
+ json_extract_path_text(Properties, 'RequestMappingTemplateS3Location') as request_mapping_template_s3_location,
+ json_extract_path_text(Properties, 'ResponseMappingTemplate') as response_mapping_template,
+ json_extract_path_text(Properties, 'ResponseMappingTemplateS3Location') as response_mapping_template_s3_location,
+ json_extract_path_text(Properties, 'Runtime') as runtime,
+ json_extract_path_text(Properties, 'SyncConfig') as sync_config
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::AppSync::FunctionConfiguration'
+ AND data__Identifier = ''
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres"
+ ddl: |-
+ SELECT
+ detail.region,
+ json_extract_path_text(detail.Properties, 'FunctionId') as function_id,
+ json_extract_path_text(detail.Properties, 'FunctionArn') as function_arn,
+ json_extract_path_text(detail.Properties, 'ApiId') as api_id,
+ json_extract_path_text(detail.Properties, 'Code') as code,
+ json_extract_path_text(detail.Properties, 'CodeS3Location') as code_s3_location,
+ json_extract_path_text(detail.Properties, 'DataSourceName') as data_source_name,
+ json_extract_path_text(detail.Properties, 'Description') as description,
+ json_extract_path_text(detail.Properties, 'FunctionVersion') as function_version,
+ json_extract_path_text(detail.Properties, 'MaxBatchSize') as max_batch_size,
+ json_extract_path_text(detail.Properties, 'Name') as name,
+ json_extract_path_text(detail.Properties, 'RequestMappingTemplate') as request_mapping_template,
+ json_extract_path_text(detail.Properties, 'RequestMappingTemplateS3Location') as request_mapping_template_s3_location,
+ json_extract_path_text(detail.Properties, 'ResponseMappingTemplate') as response_mapping_template,
+ json_extract_path_text(detail.Properties, 'ResponseMappingTemplateS3Location') as response_mapping_template_s3_location,
+ json_extract_path_text(detail.Properties, 'Runtime') as runtime,
+ json_extract_path_text(detail.Properties, 'SyncConfig') as sync_config
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ WHERE listing.data__TypeName = 'AWS::AppSync::FunctionConfiguration'
+ AND detail.data__TypeName = 'AWS::AppSync::FunctionConfiguration'
+ AND listing.region = 'us-east-1'
+ function_configurations_list_only:
+ name: function_configurations_list_only
+ id: aws.appsync.function_configurations_list_only
+ x-cfn-schema-name: FunctionConfiguration
+ x-cfn-type-name: AWS::AppSync::FunctionConfiguration
+ x-identifiers:
+ - FunctionArn
+ x-type: cloud_control_view
+ methods: {}
+ sqlVerbs:
+ insert: []
+ delete: []
+ update: []
+ config:
+ views:
+ select:
+ predicate: sqlDialect == "sqlite3"
+ ddl: |-
+ SELECT
+ region,
+ JSON_EXTRACT(Properties, '$.FunctionArn') as function_arn
+ FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::AppSync::FunctionConfiguration'
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres"
+ ddl: |-
+ SELECT
+ region,
+ json_extract_path_text(Properties, 'FunctionArn') as function_arn
+ FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::AppSync::FunctionConfiguration'
+ AND region = 'us-east-1'
+ graphql_apis:
+ name: graphql_apis
+ id: aws.appsync.graphql_apis
+ x-cfn-schema-name: GraphQLApi
+ x-cfn-type-name: AWS::AppSync::GraphQLApi
+ x-identifiers:
+ - ApiId
+ x-type: cloud_control
+ methods:
+ create_resource:
+ config:
+ requestBodyTranslate:
+ algorithm: naive_DesiredState
+ operation:
+ $ref: '#/paths/~1?Action=CreateResource&Version=2021-09-30&__GraphQLApi&__detailTransformed=true/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::AppSync::GraphQLApi"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ update_resource:
+ operation:
+ $ref: '#/paths/~1?Action=UpdateResource&Version=2021-09-30/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::AppSync::GraphQLApi"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ delete_resource:
+ operation:
+ $ref: '#/paths/~1?Action=DeleteResource&Version=2021-09-30/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::AppSync::GraphQLApi"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ sqlVerbs:
+ insert:
+ - $ref: '#/components/x-stackQL-resources/graphql_apis/methods/create_resource'
delete:
- - $ref: '#/components/x-stackQL-resources/function_configurations/methods/delete_resource'
+ - $ref: '#/components/x-stackQL-resources/graphql_apis/methods/delete_resource'
update:
- - $ref: '#/components/x-stackQL-resources/function_configurations/methods/update_resource'
+ - $ref: '#/components/x-stackQL-resources/graphql_apis/methods/update_resource'
config:
views:
select:
@@ -1453,52 +3278,70 @@ components:
SELECT
region,
data__Identifier,
- JSON_EXTRACT(Properties, '$.FunctionId') as function_id,
- JSON_EXTRACT(Properties, '$.FunctionArn') as function_arn,
+ JSON_EXTRACT(Properties, '$.AdditionalAuthenticationProviders') as additional_authentication_providers,
JSON_EXTRACT(Properties, '$.ApiId') as api_id,
- JSON_EXTRACT(Properties, '$.Code') as code,
- JSON_EXTRACT(Properties, '$.CodeS3Location') as code_s3_location,
- JSON_EXTRACT(Properties, '$.DataSourceName') as data_source_name,
- JSON_EXTRACT(Properties, '$.Description') as description,
- JSON_EXTRACT(Properties, '$.FunctionVersion') as function_version,
- JSON_EXTRACT(Properties, '$.MaxBatchSize') as max_batch_size,
+ JSON_EXTRACT(Properties, '$.ApiType') as api_type,
+ JSON_EXTRACT(Properties, '$.Arn') as arn,
+ JSON_EXTRACT(Properties, '$.AuthenticationType') as authentication_type,
+ JSON_EXTRACT(Properties, '$.EnhancedMetricsConfig') as enhanced_metrics_config,
+ JSON_EXTRACT(Properties, '$.EnvironmentVariables') as environment_variables,
+ JSON_EXTRACT(Properties, '$.GraphQLDns') as graph_ql_dns,
+ JSON_EXTRACT(Properties, '$.GraphQLEndpointArn') as graph_ql_endpoint_arn,
+ JSON_EXTRACT(Properties, '$.GraphQLUrl') as graph_ql_url,
+ JSON_EXTRACT(Properties, '$.IntrospectionConfig') as introspection_config,
+ JSON_EXTRACT(Properties, '$.LambdaAuthorizerConfig') as lambda_authorizer_config,
+ JSON_EXTRACT(Properties, '$.LogConfig') as log_config,
+ JSON_EXTRACT(Properties, '$.MergedApiExecutionRoleArn') as merged_api_execution_role_arn,
JSON_EXTRACT(Properties, '$.Name') as name,
- JSON_EXTRACT(Properties, '$.RequestMappingTemplate') as request_mapping_template,
- JSON_EXTRACT(Properties, '$.RequestMappingTemplateS3Location') as request_mapping_template_s3_location,
- JSON_EXTRACT(Properties, '$.ResponseMappingTemplate') as response_mapping_template,
- JSON_EXTRACT(Properties, '$.ResponseMappingTemplateS3Location') as response_mapping_template_s3_location,
- JSON_EXTRACT(Properties, '$.Runtime') as runtime,
- JSON_EXTRACT(Properties, '$.SyncConfig') as sync_config
- FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::AppSync::FunctionConfiguration'
- AND data__Identifier = ''
+ JSON_EXTRACT(Properties, '$.OpenIDConnectConfig') as open_id_connect_config,
+ JSON_EXTRACT(Properties, '$.OwnerContact') as owner_contact,
+ JSON_EXTRACT(Properties, '$.QueryDepthLimit') as query_depth_limit,
+ JSON_EXTRACT(Properties, '$.RealtimeDns') as realtime_dns,
+ JSON_EXTRACT(Properties, '$.RealtimeUrl') as realtime_url,
+ JSON_EXTRACT(Properties, '$.ResolverCountLimit') as resolver_count_limit,
+ JSON_EXTRACT(Properties, '$.Tags') as tags,
+ JSON_EXTRACT(Properties, '$.UserPoolConfig') as user_pool_config,
+ JSON_EXTRACT(Properties, '$.Visibility') as visibility,
+ JSON_EXTRACT(Properties, '$.XrayEnabled') as xray_enabled
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::AppSync::GraphQLApi'
+ AND data__Identifier = ''
AND region = 'us-east-1'
fallback:
predicate: sqlDialect == "sqlite3"
ddl: |-
SELECT
detail.region,
- JSON_EXTRACT(detail.Properties, '$.FunctionId') as function_id,
- JSON_EXTRACT(detail.Properties, '$.FunctionArn') as function_arn,
+ JSON_EXTRACT(detail.Properties, '$.AdditionalAuthenticationProviders') as additional_authentication_providers,
JSON_EXTRACT(detail.Properties, '$.ApiId') as api_id,
- JSON_EXTRACT(detail.Properties, '$.Code') as code,
- JSON_EXTRACT(detail.Properties, '$.CodeS3Location') as code_s3_location,
- JSON_EXTRACT(detail.Properties, '$.DataSourceName') as data_source_name,
- JSON_EXTRACT(detail.Properties, '$.Description') as description,
- JSON_EXTRACT(detail.Properties, '$.FunctionVersion') as function_version,
- JSON_EXTRACT(detail.Properties, '$.MaxBatchSize') as max_batch_size,
+ JSON_EXTRACT(detail.Properties, '$.ApiType') as api_type,
+ JSON_EXTRACT(detail.Properties, '$.Arn') as arn,
+ JSON_EXTRACT(detail.Properties, '$.AuthenticationType') as authentication_type,
+ JSON_EXTRACT(detail.Properties, '$.EnhancedMetricsConfig') as enhanced_metrics_config,
+ JSON_EXTRACT(detail.Properties, '$.EnvironmentVariables') as environment_variables,
+ JSON_EXTRACT(detail.Properties, '$.GraphQLDns') as graph_ql_dns,
+ JSON_EXTRACT(detail.Properties, '$.GraphQLEndpointArn') as graph_ql_endpoint_arn,
+ JSON_EXTRACT(detail.Properties, '$.GraphQLUrl') as graph_ql_url,
+ JSON_EXTRACT(detail.Properties, '$.IntrospectionConfig') as introspection_config,
+ JSON_EXTRACT(detail.Properties, '$.LambdaAuthorizerConfig') as lambda_authorizer_config,
+ JSON_EXTRACT(detail.Properties, '$.LogConfig') as log_config,
+ JSON_EXTRACT(detail.Properties, '$.MergedApiExecutionRoleArn') as merged_api_execution_role_arn,
JSON_EXTRACT(detail.Properties, '$.Name') as name,
- JSON_EXTRACT(detail.Properties, '$.RequestMappingTemplate') as request_mapping_template,
- JSON_EXTRACT(detail.Properties, '$.RequestMappingTemplateS3Location') as request_mapping_template_s3_location,
- JSON_EXTRACT(detail.Properties, '$.ResponseMappingTemplate') as response_mapping_template,
- JSON_EXTRACT(detail.Properties, '$.ResponseMappingTemplateS3Location') as response_mapping_template_s3_location,
- JSON_EXTRACT(detail.Properties, '$.Runtime') as runtime,
- JSON_EXTRACT(detail.Properties, '$.SyncConfig') as sync_config
+ JSON_EXTRACT(detail.Properties, '$.OpenIDConnectConfig') as open_id_connect_config,
+ JSON_EXTRACT(detail.Properties, '$.OwnerContact') as owner_contact,
+ JSON_EXTRACT(detail.Properties, '$.QueryDepthLimit') as query_depth_limit,
+ JSON_EXTRACT(detail.Properties, '$.RealtimeDns') as realtime_dns,
+ JSON_EXTRACT(detail.Properties, '$.RealtimeUrl') as realtime_url,
+ JSON_EXTRACT(detail.Properties, '$.ResolverCountLimit') as resolver_count_limit,
+ JSON_EXTRACT(detail.Properties, '$.Tags') as tags,
+ JSON_EXTRACT(detail.Properties, '$.UserPoolConfig') as user_pool_config,
+ JSON_EXTRACT(detail.Properties, '$.Visibility') as visibility,
+ JSON_EXTRACT(detail.Properties, '$.XrayEnabled') as xray_enabled
FROM aws.cloud_control.resources listing
LEFT OUTER JOIN aws.cloud_control.resource detail
ON detail.data__Identifier = listing.Identifier
AND detail.region = listing.region
- WHERE listing.data__TypeName = 'AWS::AppSync::FunctionConfiguration'
- AND detail.data__TypeName = 'AWS::AppSync::FunctionConfiguration'
+ WHERE listing.data__TypeName = 'AWS::AppSync::GraphQLApi'
+ AND detail.data__TypeName = 'AWS::AppSync::GraphQLApi'
AND listing.region = 'us-east-1'
fallback:
predicate: sqlDialect == "postgres" && requiredParams == [ data__Identifier ]
@@ -1506,60 +3349,78 @@ components:
SELECT
region,
data__Identifier,
- json_extract_path_text(Properties, 'FunctionId') as function_id,
- json_extract_path_text(Properties, 'FunctionArn') as function_arn,
+ json_extract_path_text(Properties, 'AdditionalAuthenticationProviders') as additional_authentication_providers,
json_extract_path_text(Properties, 'ApiId') as api_id,
- json_extract_path_text(Properties, 'Code') as code,
- json_extract_path_text(Properties, 'CodeS3Location') as code_s3_location,
- json_extract_path_text(Properties, 'DataSourceName') as data_source_name,
- json_extract_path_text(Properties, 'Description') as description,
- json_extract_path_text(Properties, 'FunctionVersion') as function_version,
- json_extract_path_text(Properties, 'MaxBatchSize') as max_batch_size,
+ json_extract_path_text(Properties, 'ApiType') as api_type,
+ json_extract_path_text(Properties, 'Arn') as arn,
+ json_extract_path_text(Properties, 'AuthenticationType') as authentication_type,
+ json_extract_path_text(Properties, 'EnhancedMetricsConfig') as enhanced_metrics_config,
+ json_extract_path_text(Properties, 'EnvironmentVariables') as environment_variables,
+ json_extract_path_text(Properties, 'GraphQLDns') as graph_ql_dns,
+ json_extract_path_text(Properties, 'GraphQLEndpointArn') as graph_ql_endpoint_arn,
+ json_extract_path_text(Properties, 'GraphQLUrl') as graph_ql_url,
+ json_extract_path_text(Properties, 'IntrospectionConfig') as introspection_config,
+ json_extract_path_text(Properties, 'LambdaAuthorizerConfig') as lambda_authorizer_config,
+ json_extract_path_text(Properties, 'LogConfig') as log_config,
+ json_extract_path_text(Properties, 'MergedApiExecutionRoleArn') as merged_api_execution_role_arn,
json_extract_path_text(Properties, 'Name') as name,
- json_extract_path_text(Properties, 'RequestMappingTemplate') as request_mapping_template,
- json_extract_path_text(Properties, 'RequestMappingTemplateS3Location') as request_mapping_template_s3_location,
- json_extract_path_text(Properties, 'ResponseMappingTemplate') as response_mapping_template,
- json_extract_path_text(Properties, 'ResponseMappingTemplateS3Location') as response_mapping_template_s3_location,
- json_extract_path_text(Properties, 'Runtime') as runtime,
- json_extract_path_text(Properties, 'SyncConfig') as sync_config
- FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::AppSync::FunctionConfiguration'
- AND data__Identifier = ''
+ json_extract_path_text(Properties, 'OpenIDConnectConfig') as open_id_connect_config,
+ json_extract_path_text(Properties, 'OwnerContact') as owner_contact,
+ json_extract_path_text(Properties, 'QueryDepthLimit') as query_depth_limit,
+ json_extract_path_text(Properties, 'RealtimeDns') as realtime_dns,
+ json_extract_path_text(Properties, 'RealtimeUrl') as realtime_url,
+ json_extract_path_text(Properties, 'ResolverCountLimit') as resolver_count_limit,
+ json_extract_path_text(Properties, 'Tags') as tags,
+ json_extract_path_text(Properties, 'UserPoolConfig') as user_pool_config,
+ json_extract_path_text(Properties, 'Visibility') as visibility,
+ json_extract_path_text(Properties, 'XrayEnabled') as xray_enabled
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::AppSync::GraphQLApi'
+ AND data__Identifier = ''
AND region = 'us-east-1'
fallback:
predicate: sqlDialect == "postgres"
ddl: |-
SELECT
detail.region,
- json_extract_path_text(detail.Properties, 'FunctionId') as function_id,
- json_extract_path_text(detail.Properties, 'FunctionArn') as function_arn,
+ json_extract_path_text(detail.Properties, 'AdditionalAuthenticationProviders') as additional_authentication_providers,
json_extract_path_text(detail.Properties, 'ApiId') as api_id,
- json_extract_path_text(detail.Properties, 'Code') as code,
- json_extract_path_text(detail.Properties, 'CodeS3Location') as code_s3_location,
- json_extract_path_text(detail.Properties, 'DataSourceName') as data_source_name,
- json_extract_path_text(detail.Properties, 'Description') as description,
- json_extract_path_text(detail.Properties, 'FunctionVersion') as function_version,
- json_extract_path_text(detail.Properties, 'MaxBatchSize') as max_batch_size,
+ json_extract_path_text(detail.Properties, 'ApiType') as api_type,
+ json_extract_path_text(detail.Properties, 'Arn') as arn,
+ json_extract_path_text(detail.Properties, 'AuthenticationType') as authentication_type,
+ json_extract_path_text(detail.Properties, 'EnhancedMetricsConfig') as enhanced_metrics_config,
+ json_extract_path_text(detail.Properties, 'EnvironmentVariables') as environment_variables,
+ json_extract_path_text(detail.Properties, 'GraphQLDns') as graph_ql_dns,
+ json_extract_path_text(detail.Properties, 'GraphQLEndpointArn') as graph_ql_endpoint_arn,
+ json_extract_path_text(detail.Properties, 'GraphQLUrl') as graph_ql_url,
+ json_extract_path_text(detail.Properties, 'IntrospectionConfig') as introspection_config,
+ json_extract_path_text(detail.Properties, 'LambdaAuthorizerConfig') as lambda_authorizer_config,
+ json_extract_path_text(detail.Properties, 'LogConfig') as log_config,
+ json_extract_path_text(detail.Properties, 'MergedApiExecutionRoleArn') as merged_api_execution_role_arn,
json_extract_path_text(detail.Properties, 'Name') as name,
- json_extract_path_text(detail.Properties, 'RequestMappingTemplate') as request_mapping_template,
- json_extract_path_text(detail.Properties, 'RequestMappingTemplateS3Location') as request_mapping_template_s3_location,
- json_extract_path_text(detail.Properties, 'ResponseMappingTemplate') as response_mapping_template,
- json_extract_path_text(detail.Properties, 'ResponseMappingTemplateS3Location') as response_mapping_template_s3_location,
- json_extract_path_text(detail.Properties, 'Runtime') as runtime,
- json_extract_path_text(detail.Properties, 'SyncConfig') as sync_config
+ json_extract_path_text(detail.Properties, 'OpenIDConnectConfig') as open_id_connect_config,
+ json_extract_path_text(detail.Properties, 'OwnerContact') as owner_contact,
+ json_extract_path_text(detail.Properties, 'QueryDepthLimit') as query_depth_limit,
+ json_extract_path_text(detail.Properties, 'RealtimeDns') as realtime_dns,
+ json_extract_path_text(detail.Properties, 'RealtimeUrl') as realtime_url,
+ json_extract_path_text(detail.Properties, 'ResolverCountLimit') as resolver_count_limit,
+ json_extract_path_text(detail.Properties, 'Tags') as tags,
+ json_extract_path_text(detail.Properties, 'UserPoolConfig') as user_pool_config,
+ json_extract_path_text(detail.Properties, 'Visibility') as visibility,
+ json_extract_path_text(detail.Properties, 'XrayEnabled') as xray_enabled
FROM aws.cloud_control.resources listing
LEFT OUTER JOIN aws.cloud_control.resource detail
ON detail.data__Identifier = listing.Identifier
AND detail.region = listing.region
- WHERE listing.data__TypeName = 'AWS::AppSync::FunctionConfiguration'
- AND detail.data__TypeName = 'AWS::AppSync::FunctionConfiguration'
+ WHERE listing.data__TypeName = 'AWS::AppSync::GraphQLApi'
+ AND detail.data__TypeName = 'AWS::AppSync::GraphQLApi'
AND listing.region = 'us-east-1'
- function_configurations_list_only:
- name: function_configurations_list_only
- id: aws.appsync.function_configurations_list_only
- x-cfn-schema-name: FunctionConfiguration
- x-cfn-type-name: AWS::AppSync::FunctionConfiguration
+ graphql_apis_list_only:
+ name: graphql_apis_list_only
+ id: aws.appsync.graphql_apis_list_only
+ x-cfn-schema-name: GraphQLApi
+ x-cfn-type-name: AWS::AppSync::GraphQLApi
x-identifiers:
- - FunctionArn
+ - ApiId
x-type: cloud_control_view
methods: {}
sqlVerbs:
@@ -1573,17 +3434,108 @@ components:
ddl: |-
SELECT
region,
- JSON_EXTRACT(Properties, '$.FunctionArn') as function_arn
- FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::AppSync::FunctionConfiguration'
+ JSON_EXTRACT(Properties, '$.ApiId') as api_id
+ FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::AppSync::GraphQLApi'
AND region = 'us-east-1'
fallback:
predicate: sqlDialect == "postgres"
ddl: |-
SELECT
region,
- json_extract_path_text(Properties, 'FunctionArn') as function_arn
- FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::AppSync::FunctionConfiguration'
+ json_extract_path_text(Properties, 'ApiId') as api_id
+ FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::AppSync::GraphQLApi'
AND region = 'us-east-1'
+ graphql_api_tags:
+ name: graphql_api_tags
+ id: aws.appsync.graphql_api_tags
+ x-cfn-schema-name: GraphQLApi
+ x-cfn-type-name: AWS::AppSync::GraphQLApi
+ x-type: cloud_control_view
+ methods: {}
+ sqlVerbs:
+ insert: []
+ delete: []
+ update: []
+ config:
+ views:
+ select:
+ predicate: sqlDialect == "sqlite3"
+ ddl: |-
+ SELECT
+ detail.region,
+ JSON_EXTRACT(json_each.value, '$.Key') as tag_key,
+ JSON_EXTRACT(json_each.value, '$.Value') as tag_value,
+ JSON_EXTRACT(detail.Properties, '$.AdditionalAuthenticationProviders') as additional_authentication_providers,
+ JSON_EXTRACT(detail.Properties, '$.ApiId') as api_id,
+ JSON_EXTRACT(detail.Properties, '$.ApiType') as api_type,
+ JSON_EXTRACT(detail.Properties, '$.Arn') as arn,
+ JSON_EXTRACT(detail.Properties, '$.AuthenticationType') as authentication_type,
+ JSON_EXTRACT(detail.Properties, '$.EnhancedMetricsConfig') as enhanced_metrics_config,
+ JSON_EXTRACT(detail.Properties, '$.EnvironmentVariables') as environment_variables,
+ JSON_EXTRACT(detail.Properties, '$.GraphQLDns') as graph_ql_dns,
+ JSON_EXTRACT(detail.Properties, '$.GraphQLEndpointArn') as graph_ql_endpoint_arn,
+ JSON_EXTRACT(detail.Properties, '$.GraphQLUrl') as graph_ql_url,
+ JSON_EXTRACT(detail.Properties, '$.IntrospectionConfig') as introspection_config,
+ JSON_EXTRACT(detail.Properties, '$.LambdaAuthorizerConfig') as lambda_authorizer_config,
+ JSON_EXTRACT(detail.Properties, '$.LogConfig') as log_config,
+ JSON_EXTRACT(detail.Properties, '$.MergedApiExecutionRoleArn') as merged_api_execution_role_arn,
+ JSON_EXTRACT(detail.Properties, '$.Name') as name,
+ JSON_EXTRACT(detail.Properties, '$.OpenIDConnectConfig') as open_id_connect_config,
+ JSON_EXTRACT(detail.Properties, '$.OwnerContact') as owner_contact,
+ JSON_EXTRACT(detail.Properties, '$.QueryDepthLimit') as query_depth_limit,
+ JSON_EXTRACT(detail.Properties, '$.RealtimeDns') as realtime_dns,
+ JSON_EXTRACT(detail.Properties, '$.RealtimeUrl') as realtime_url,
+ JSON_EXTRACT(detail.Properties, '$.ResolverCountLimit') as resolver_count_limit,
+ JSON_EXTRACT(detail.Properties, '$.UserPoolConfig') as user_pool_config,
+ JSON_EXTRACT(detail.Properties, '$.Visibility') as visibility,
+ JSON_EXTRACT(detail.Properties, '$.XrayEnabled') as xray_enabled
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ ,json_each(JSON_EXTRACT(detail.Properties, '$.Tags'))
+ WHERE listing.data__TypeName = 'AWS::AppSync::GraphQLApi'
+ AND detail.data__TypeName = 'AWS::AppSync::GraphQLApi'
+ AND listing.region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres"
+ ddl: |-
+ SELECT
+ detail.region,
+ json_extract_path_text(json_each.value, 'Key') as tag_key,
+ json_extract_path_text(json_each.value, 'Value') as tag_value,
+ json_extract_path_text(detail.Properties, 'AdditionalAuthenticationProviders') as additional_authentication_providers,
+ json_extract_path_text(detail.Properties, 'ApiId') as api_id,
+ json_extract_path_text(detail.Properties, 'ApiType') as api_type,
+ json_extract_path_text(detail.Properties, 'Arn') as arn,
+ json_extract_path_text(detail.Properties, 'AuthenticationType') as authentication_type,
+ json_extract_path_text(detail.Properties, 'EnhancedMetricsConfig') as enhanced_metrics_config,
+ json_extract_path_text(detail.Properties, 'EnvironmentVariables') as environment_variables,
+ json_extract_path_text(detail.Properties, 'GraphQLDns') as graph_ql_dns,
+ json_extract_path_text(detail.Properties, 'GraphQLEndpointArn') as graph_ql_endpoint_arn,
+ json_extract_path_text(detail.Properties, 'GraphQLUrl') as graph_ql_url,
+ json_extract_path_text(detail.Properties, 'IntrospectionConfig') as introspection_config,
+ json_extract_path_text(detail.Properties, 'LambdaAuthorizerConfig') as lambda_authorizer_config,
+ json_extract_path_text(detail.Properties, 'LogConfig') as log_config,
+ json_extract_path_text(detail.Properties, 'MergedApiExecutionRoleArn') as merged_api_execution_role_arn,
+ json_extract_path_text(detail.Properties, 'Name') as name,
+ json_extract_path_text(detail.Properties, 'OpenIDConnectConfig') as open_id_connect_config,
+ json_extract_path_text(detail.Properties, 'OwnerContact') as owner_contact,
+ json_extract_path_text(detail.Properties, 'QueryDepthLimit') as query_depth_limit,
+ json_extract_path_text(detail.Properties, 'RealtimeDns') as realtime_dns,
+ json_extract_path_text(detail.Properties, 'RealtimeUrl') as realtime_url,
+ json_extract_path_text(detail.Properties, 'ResolverCountLimit') as resolver_count_limit,
+ json_extract_path_text(detail.Properties, 'UserPoolConfig') as user_pool_config,
+ json_extract_path_text(detail.Properties, 'Visibility') as visibility,
+ json_extract_path_text(detail.Properties, 'XrayEnabled') as xray_enabled
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ ,json_array_elements_text(json_extract_path_text(detail.Properties, 'Tags'))
+ WHERE listing.data__TypeName = 'AWS::AppSync::GraphQLApi'
+ AND detail.data__TypeName = 'AWS::AppSync::GraphQLApi'
+ AND listing.region = 'us-east-1'
resolvers:
name: resolvers
id: aws.appsync.resolvers
@@ -2111,6 +4063,132 @@ paths:
schema:
$ref: '#/components/x-cloud-control-schemas/UpdateResourceOutput'
description: Success
+ /?Action=CreateResource&Version=2021-09-30&__Api&__detailTransformed=true:
+ parameters:
+ - $ref: '#/components/parameters/X-Amz-Content-Sha256'
+ - $ref: '#/components/parameters/X-Amz-Date'
+ - $ref: '#/components/parameters/X-Amz-Algorithm'
+ - $ref: '#/components/parameters/X-Amz-Credential'
+ - $ref: '#/components/parameters/X-Amz-Security-Token'
+ - $ref: '#/components/parameters/X-Amz-Signature'
+ - $ref: '#/components/parameters/X-Amz-SignedHeaders'
+ post:
+ operationId: CreateApi
+ parameters:
+ - description: Action Header
+ in: header
+ name: X-Amz-Target
+ required: false
+ schema:
+ default: CloudApiService.CreateResource
+ enum:
+ - CloudApiService.CreateResource
+ type: string
+ - in: header
+ name: Content-Type
+ required: false
+ schema:
+ default: application/x-amz-json-1.0
+ enum:
+ - application/x-amz-json-1.0
+ type: string
+ requestBody:
+ content:
+ application/x-amz-json-1.0:
+ schema:
+ $ref: '#/components/schemas/CreateApiRequest'
+ required: true
+ responses:
+ '200':
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/x-cloud-control-schemas/ProgressEvent'
+ description: Success
+ /?Action=CreateResource&Version=2021-09-30&__ChannelNamespace&__detailTransformed=true:
+ parameters:
+ - $ref: '#/components/parameters/X-Amz-Content-Sha256'
+ - $ref: '#/components/parameters/X-Amz-Date'
+ - $ref: '#/components/parameters/X-Amz-Algorithm'
+ - $ref: '#/components/parameters/X-Amz-Credential'
+ - $ref: '#/components/parameters/X-Amz-Security-Token'
+ - $ref: '#/components/parameters/X-Amz-Signature'
+ - $ref: '#/components/parameters/X-Amz-SignedHeaders'
+ post:
+ operationId: CreateChannelNamespace
+ parameters:
+ - description: Action Header
+ in: header
+ name: X-Amz-Target
+ required: false
+ schema:
+ default: CloudApiService.CreateResource
+ enum:
+ - CloudApiService.CreateResource
+ type: string
+ - in: header
+ name: Content-Type
+ required: false
+ schema:
+ default: application/x-amz-json-1.0
+ enum:
+ - application/x-amz-json-1.0
+ type: string
+ requestBody:
+ content:
+ application/x-amz-json-1.0:
+ schema:
+ $ref: '#/components/schemas/CreateChannelNamespaceRequest'
+ required: true
+ responses:
+ '200':
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/x-cloud-control-schemas/ProgressEvent'
+ description: Success
+ /?Action=CreateResource&Version=2021-09-30&__DataSource&__detailTransformed=true:
+ parameters:
+ - $ref: '#/components/parameters/X-Amz-Content-Sha256'
+ - $ref: '#/components/parameters/X-Amz-Date'
+ - $ref: '#/components/parameters/X-Amz-Algorithm'
+ - $ref: '#/components/parameters/X-Amz-Credential'
+ - $ref: '#/components/parameters/X-Amz-Security-Token'
+ - $ref: '#/components/parameters/X-Amz-Signature'
+ - $ref: '#/components/parameters/X-Amz-SignedHeaders'
+ post:
+ operationId: CreateDataSource
+ parameters:
+ - description: Action Header
+ in: header
+ name: X-Amz-Target
+ required: false
+ schema:
+ default: CloudApiService.CreateResource
+ enum:
+ - CloudApiService.CreateResource
+ type: string
+ - in: header
+ name: Content-Type
+ required: false
+ schema:
+ default: application/x-amz-json-1.0
+ enum:
+ - application/x-amz-json-1.0
+ type: string
+ requestBody:
+ content:
+ application/x-amz-json-1.0:
+ schema:
+ $ref: '#/components/schemas/CreateDataSourceRequest'
+ required: true
+ responses:
+ '200':
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/x-cloud-control-schemas/ProgressEvent'
+ description: Success
/?Action=CreateResource&Version=2021-09-30&__DomainName&__detailTransformed=true:
parameters:
- $ref: '#/components/parameters/X-Amz-Content-Sha256'
@@ -2237,6 +4315,48 @@ paths:
schema:
$ref: '#/components/x-cloud-control-schemas/ProgressEvent'
description: Success
+ /?Action=CreateResource&Version=2021-09-30&__GraphQLApi&__detailTransformed=true:
+ parameters:
+ - $ref: '#/components/parameters/X-Amz-Content-Sha256'
+ - $ref: '#/components/parameters/X-Amz-Date'
+ - $ref: '#/components/parameters/X-Amz-Algorithm'
+ - $ref: '#/components/parameters/X-Amz-Credential'
+ - $ref: '#/components/parameters/X-Amz-Security-Token'
+ - $ref: '#/components/parameters/X-Amz-Signature'
+ - $ref: '#/components/parameters/X-Amz-SignedHeaders'
+ post:
+ operationId: CreateGraphQLApi
+ parameters:
+ - description: Action Header
+ in: header
+ name: X-Amz-Target
+ required: false
+ schema:
+ default: CloudApiService.CreateResource
+ enum:
+ - CloudApiService.CreateResource
+ type: string
+ - in: header
+ name: Content-Type
+ required: false
+ schema:
+ default: application/x-amz-json-1.0
+ enum:
+ - application/x-amz-json-1.0
+ type: string
+ requestBody:
+ content:
+ application/x-amz-json-1.0:
+ schema:
+ $ref: '#/components/schemas/CreateGraphQLApiRequest'
+ required: true
+ responses:
+ '200':
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/x-cloud-control-schemas/ProgressEvent'
+ description: Success
/?Action=CreateResource&Version=2021-09-30&__Resolver&__detailTransformed=true:
parameters:
- $ref: '#/components/parameters/X-Amz-Content-Sha256'
diff --git a/providers/src/aws/v00.00.00000/services/apptest.yaml b/providers/src/aws/v00.00.00000/services/apptest.yaml
new file mode 100644
index 00000000..b05c8ff1
--- /dev/null
+++ b/providers/src/aws/v00.00.00000/services/apptest.yaml
@@ -0,0 +1,1362 @@
+openapi: 3.0.0
+info:
+ title: AppTest
+ version: 2.0.0
+ x-serviceName: cloudcontrolapi
+servers:
+ - url: https://cloudcontrolapi.{region}.amazonaws.com
+ variables:
+ region:
+ description: The AWS region
+ enum:
+ - us-east-1
+ - us-east-2
+ - us-west-1
+ - us-west-2
+ - us-gov-west-1
+ - us-gov-east-1
+ - ca-central-1
+ - eu-north-1
+ - eu-west-1
+ - eu-west-2
+ - eu-west-3
+ - eu-central-1
+ - eu-south-1
+ - af-south-1
+ - ap-northeast-1
+ - ap-northeast-2
+ - ap-northeast-3
+ - ap-southeast-1
+ - ap-southeast-2
+ - ap-east-1
+ - ap-south-1
+ - sa-east-1
+ - me-south-1
+ default: us-east-1
+ description: The CloudControlApi multi-region endpoint
+ - url: https://cloudcontrolapi.{region}.amazonaws.com.cn
+ variables:
+ region:
+ description: The AWS region
+ enum:
+ - cn-north-1
+ - cn-northwest-1
+ default: cn-north-1
+ description: The CloudControlApi endpoint for China (Beijing) and China (Ningxia)
+components:
+ parameters:
+ X-Amz-Content-Sha256:
+ name: X-Amz-Content-Sha256
+ in: header
+ schema:
+ type: string
+ required: false
+ X-Amz-Date:
+ name: X-Amz-Date
+ in: header
+ schema:
+ type: string
+ required: false
+ X-Amz-Algorithm:
+ name: X-Amz-Algorithm
+ in: header
+ schema:
+ type: string
+ required: false
+ X-Amz-Credential:
+ name: X-Amz-Credential
+ in: header
+ schema:
+ type: string
+ required: false
+ X-Amz-Security-Token:
+ name: X-Amz-Security-Token
+ in: header
+ schema:
+ type: string
+ required: false
+ X-Amz-Signature:
+ name: X-Amz-Signature
+ in: header
+ schema:
+ type: string
+ required: false
+ X-Amz-SignedHeaders:
+ name: X-Amz-SignedHeaders
+ in: header
+ schema:
+ type: string
+ required: false
+ x-cloud-control-schemas:
+ AlreadyExistsException: {}
+ CancelResourceRequestInput:
+ properties:
+ RequestToken:
+ $ref: '#/components/x-cloud-control-schemas/RequestToken'
+ required:
+ - RequestToken
+ title: CancelResourceRequestInput
+ type: object
+ CancelResourceRequestOutput:
+ properties:
+ ProgressEvent:
+ $ref: '#/components/x-cloud-control-schemas/ProgressEvent'
+ type: object
+ ClientToken:
+ maxLength: 128
+ minLength: 1
+ pattern: '[-A-Za-z0-9+/=]+'
+ type: string
+ ClientTokenConflictException: {}
+ ConcurrentModificationException: {}
+ ConcurrentOperationException: {}
+ CreateResourceInput:
+ properties:
+ ClientToken:
+ type: string
+ DesiredState:
+ allOf:
+ - $ref: '#/components/x-cloud-control-schemas/Properties'
+ - description: >-
+ Structured data format representing the desired state of the resource, consisting of that resource's properties and their desired values.
Cloud Control API currently supports JSON as a structured data format.
<p>Specify the desired state as one of the following:</p> <ul> <li> <p>A JSON blob</p> </li> <li> <p>A local path containing the desired state in JSON data format</p>
+ </li> </ul> <p>For more information, see <a href="https://docs.aws.amazon.com/cloudcontrolapi/latest/userguide/resource-operations-create.html#resource-operations-create-desiredstate">Composing the desired state of the resource</a> in the <i>Amazon Web Services Cloud Control API User Guide</i>.</p> <p>For more information about the properties of a specific resource, refer to the related topic for the resource in the
+ <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-template-resource-type-ref.html">Resource and property types reference</a> in the <i>CloudFormation Users Guide</i>.</p>
+ RoleArn:
+ type: string
+ TypeName:
+ type: string
+ TypeVersionId:
+ type: string
+ required:
+ - DesiredState
+ title: CreateResourceInput
+ type: object
+ CreateResourceOutput:
+ properties:
+ ProgressEvent:
+ $ref: '#/components/x-cloud-control-schemas/ProgressEvent'
+ type: object
+ DeleteResourceInput:
+ properties:
+ ClientToken:
+ type: string
+ Identifier:
+ $ref: '#/components/x-cloud-control-schemas/Identifier'
+ RoleArn:
+ type: string
+ TypeName:
+ type: string
+ TypeVersionId:
+ type: string
+ required:
+ - Identifier
+ title: DeleteResourceInput
+ type: object
+ DeleteResourceOutput:
+ properties:
+ ProgressEvent:
+ $ref: '#/components/x-cloud-control-schemas/ProgressEvent'
+ type: object
+ GeneralServiceException: {}
+ GetResourceInput:
+ properties:
+ TypeName:
+ $ref: '#/components/x-cloud-control-schemas/TypeName'
+ Identifier:
+ $ref: '#/components/x-cloud-control-schemas/Identifier'
+ TypeVersionId:
+ $ref: '#/components/x-cloud-control-schemas/TypeVersionId'
+ RoleArn:
+ $ref: '#/components/x-cloud-control-schemas/RoleArn'
+ required:
+ - TypeName
+ - Identifier
+ title: GetResourceInput
+ type: object
+ GetResourceOutput:
+ properties:
+ ResourceDescription:
+ $ref: '#/components/x-cloud-control-schemas/ResourceDescription'
+ TypeName:
+ type: string
+ type: object
+ GetResourceRequestStatusInput:
+ properties:
+ RequestToken:
+ $ref: '#/components/x-cloud-control-schemas/RequestToken'
+ required:
+ - RequestToken
+ title: GetResourceRequestStatusInput
+ type: object
+ GetResourceRequestStatusOutput:
+ properties:
+ ProgressEvent:
+ $ref: '#/components/x-cloud-control-schemas/ProgressEvent'
+ type: object
+ HandlerErrorCode:
+ enum:
+ - NotUpdatable
+ - InvalidRequest
+ - AccessDenied
+ - InvalidCredentials
+ - AlreadyExists
+ - NotFound
+ - ResourceConflict
+ - Throttling
+ - ServiceLimitExceeded
+ - NotStabilized
+ - GeneralServiceException
+ - ServiceInternalError
+ - ServiceTimeout
+ - NetworkFailure
+ - InternalFailure
+ type: string
+ HandlerFailureException: {}
+ HandlerInternalFailureException: {}
+ HandlerNextToken:
+ maxLength: 2048
+ minLength: 1
+ pattern: .+
+ type: string
+ Identifier:
+ maxLength: 1024
+ minLength: 1
+ pattern: .+
+ type: string
+ InvalidCredentialsException: {}
+ InvalidRequestException: {}
+ MaxResults:
+ maximum: 100
+ minimum: 1
+ type: integer
+ NetworkFailureException: {}
+ NextToken:
+ maxLength: 2048
+ minLength: 1
+ pattern: '[-A-Za-z0-9+/=]+'
+ type: string
+ NotStabilizedException: {}
+ NotUpdatableException: {}
+ Operation:
+ enum:
+ - CREATE
+ - DELETE
+ - UPDATE
+ type: string
+ OperationStatus:
+ enum:
+ - PENDING
+ - IN_PROGRESS
+ - SUCCESS
+ - FAILED
+ - CANCEL_IN_PROGRESS
+ - CANCEL_COMPLETE
+ type: string
+ OperationStatuses:
+ items:
+ $ref: '#/components/x-cloud-control-schemas/OperationStatus'
+ type: array
+ Operations:
+ items:
+ $ref: '#/components/x-cloud-control-schemas/Operation'
+ type: array
+ PatchDocument:
+ format: password
+ maxLength: 65536
+ minLength: 1
+ pattern: '[\s\S]*'
+ type: string
+ PrivateTypeException: {}
+ ProgressEvent:
+ example:
+ ErrorCode: string
+ EventTime: number
+ Identifier: string
+ Operation: string
+ OperationStatus: string
+ RequestToken: string
+ ResourceModel: string
+ RetryAfter: number
+ StatusMessage: string
+ TypeName: string
+ properties:
+ ErrorCode:
+ type: string
+ EventTime:
+ type: number
+ Identifier:
+ type: string
+ Operation:
+ type: string
+ OperationStatus:
+ type: string
+ RequestToken:
+ type: string
+ ResourceModel:
+ type: string
+ RetryAfter:
+ type: number
+ StatusMessage:
+ type: string
+ TypeName:
+ type: string
+ type: object
+ Properties:
+ format: password
+ maxLength: 65536
+ minLength: 1
+ pattern: '[\s\S]*'
+ type: string
+ RequestToken:
+ maxLength: 128
+ minLength: 1
+ pattern: '[-A-Za-z0-9+/=]+'
+ type: string
+ RequestTokenNotFoundException: {}
+ ResourceConflictException: {}
+ ResourceDescription:
+ description: Represents information about a provisioned resource.
+ properties:
+ Identifier:
+ type: string
+ Properties:
+ type: string
+ type: object
+ ResourceDescriptions:
+ items:
+ $ref: '#/components/x-cloud-control-schemas/ResourceDescription'
+ type: array
+ ResourceNotFoundException: {}
+ ResourceRequestStatusFilter:
+ description: The filter criteria to use in determining the requests returned.
+ properties:
+ undefined:
+ allOf:
+ - $ref: '#/components/x-cloud-control-schemas/OperationStatuses'
+ - description: >-
+ The operation statuses to include in the filter.
-
PENDING: The operation has been requested, but not yet initiated.
-
IN_PROGRESS: The operation is in progress.
-
SUCCESS: The operation completed.
-
FAILED: The operation failed.
-
CANCEL_IN_PROGRESS: The operation is in the process of being canceled.
-
+ CANCEL_COMPLETE: The operation has been canceled.
+ type: object
+ ResourceRequestStatusSummaries:
+ items:
+ $ref: '#/components/x-cloud-control-schemas/ProgressEvent'
+ type: array
+ RoleArn:
+ maxLength: 2048
+ minLength: 20
+ pattern: arn:.+:iam::[0-9]{12}:role/.+
+ type: string
+ ServiceInternalErrorException: {}
+ ServiceLimitExceededException: {}
+ StatusMessage:
+ maxLength: 1024
+ minLength: 0
+ pattern: '[\s\S]*'
+ type: string
+ ThrottlingException: {}
+ Timestamp:
+ format: date-time
+ type: string
+ TypeName:
+ maxLength: 196
+ minLength: 10
+ pattern: '[A-Za-z0-9]{2,64}::[A-Za-z0-9]{2,64}::[A-Za-z0-9]{2,64}'
+ type: string
+ TypeNotFoundException: {}
+ TypeVersionId:
+ maxLength: 128
+ minLength: 1
+ pattern: '[A-Za-z0-9-]+'
+ type: string
+ UnsupportedActionException: {}
+ UpdateResourceInput:
+ properties:
+ undefined:
+ allOf:
+ - $ref: '#/components/x-cloud-control-schemas/PatchDocument'
+ required:
+ - Identifier
+ - PatchDocument
+ title: UpdateResourceInput
+ type: object
+ UpdateResourceOutput:
+ properties:
+ ProgressEvent:
+ $ref: '#/components/x-cloud-control-schemas/ProgressEvent'
+ type: object
+ schemas:
+ Batch:
+ type: object
+ properties:
+ BatchJobName:
+ type: string
+ pattern: ^\S{1,1000}$
+ BatchJobParameters:
+ $ref: '#/components/schemas/BatchJobParameters'
+ ExportDataSetNames:
+ type: array
+ items:
+ type: string
+ pattern: ^\S{1,100}$
+ required:
+ - BatchJobName
+ additionalProperties: false
+ BatchJobParameters:
+ type: object
+ x-patternProperties:
+ .+:
+ type: string
+ additionalProperties: false
+ CaptureTool:
+ type: string
+ enum:
+ - Precisely
+ - AWS DMS
+ CloudFormationAction:
+ type: object
+ properties:
+ Resource:
+ type: string
+ pattern: ^\S{1,1000}$
+ ActionType:
+ $ref: '#/components/schemas/CloudFormationActionType'
+ required:
+ - Resource
+ additionalProperties: false
+ CloudFormationActionType:
+ type: string
+ enum:
+ - Create
+ - Delete
+ CompareAction:
+ type: object
+ properties:
+ Input:
+ $ref: '#/components/schemas/Input'
+ Output:
+ $ref: '#/components/schemas/Output'
+ required:
+ - Input
+ additionalProperties: false
+ DataSet:
+ type: object
+ properties:
+ Type:
+ $ref: '#/components/schemas/DataSetType'
+ Name:
+ type: string
+ pattern: ^\S{1,100}$
+ Ccsid:
+ type: string
+ pattern: ^\S{1,50}$
+ Format:
+ $ref: '#/components/schemas/Format'
+ Length:
+ type: number
+ required:
+ - Ccsid
+ - Format
+ - Length
+ - Name
+ - Type
+ additionalProperties: false
+ DataSetType:
+ type: string
+ enum:
+ - PS
+ DatabaseCDC:
+ type: object
+ properties:
+ SourceMetadata:
+ $ref: '#/components/schemas/SourceDatabaseMetadata'
+ TargetMetadata:
+ $ref: '#/components/schemas/TargetDatabaseMetadata'
+ required:
+ - SourceMetadata
+ - TargetMetadata
+ additionalProperties: false
+ FileMetadata:
+ oneOf:
+ - type: object
+ title: DataSets
+ properties:
+ DataSets:
+ type: array
+ items:
+ $ref: '#/components/schemas/DataSet'
+ required:
+ - DataSets
+ additionalProperties: false
+ - type: object
+ title: DatabaseCDC
+ properties:
+ DatabaseCDC:
+ $ref: '#/components/schemas/DatabaseCDC'
+ required:
+ - DatabaseCDC
+ additionalProperties: false
+ Format:
+ type: string
+ enum:
+ - FIXED
+ - VARIABLE
+ - LINE_SEQUENTIAL
+ Input:
+ oneOf:
+ - type: object
+ title: File
+ properties:
+ File:
+ $ref: '#/components/schemas/InputFile'
+ required:
+ - File
+ additionalProperties: false
+ InputFile:
+ type: object
+ properties:
+ SourceLocation:
+ type: string
+ pattern: ^\S{1,1000}$
+ TargetLocation:
+ type: string
+ pattern: ^\S{1,1000}$
+ FileMetadata:
+ $ref: '#/components/schemas/FileMetadata'
+ required:
+ - FileMetadata
+ - SourceLocation
+ - TargetLocation
+ additionalProperties: false
+ M2ManagedActionProperties:
+ type: object
+ properties:
+ ForceStop:
+ type: boolean
+ ImportDataSetLocation:
+ type: string
+ pattern: ^\S{1,1000}$
+ additionalProperties: false
+ M2ManagedActionType:
+ type: string
+ enum:
+ - Configure
+ - Deconfigure
+ M2ManagedApplicationAction:
+ type: object
+ properties:
+ Resource:
+ type: string
+ pattern: ^\S{1,1000}$
+ ActionType:
+ $ref: '#/components/schemas/M2ManagedActionType'
+ Properties:
+ $ref: '#/components/schemas/M2ManagedActionProperties'
+ required:
+ - ActionType
+ - Resource
+ additionalProperties: false
+ M2NonManagedActionType:
+ type: string
+ enum:
+ - Configure
+ - Deconfigure
+ M2NonManagedApplicationAction:
+ type: object
+ properties:
+ Resource:
+ type: string
+ pattern: ^\S{1,1000}$
+ ActionType:
+ $ref: '#/components/schemas/M2NonManagedActionType'
+ required:
+ - ActionType
+ - Resource
+ additionalProperties: false
+ MainframeAction:
+ type: object
+ properties:
+ Resource:
+ type: string
+ pattern: ^\S{1,1000}$
+ ActionType:
+ $ref: '#/components/schemas/MainframeActionType'
+ Properties:
+ $ref: '#/components/schemas/MainframeActionProperties'
+ required:
+ - ActionType
+ - Resource
+ additionalProperties: false
+ MainframeActionProperties:
+ type: object
+ properties:
+ DmsTaskArn:
+ type: string
+ pattern: ^\S{1,1000}$
+ additionalProperties: false
+ MainframeActionType:
+ oneOf:
+ - type: object
+ title: Batch
+ properties:
+ Batch:
+ $ref: '#/components/schemas/Batch'
+ required:
+ - Batch
+ additionalProperties: false
+ - type: object
+ title: Tn3270
+ properties:
+ Tn3270:
+ $ref: '#/components/schemas/TN3270'
+ required:
+ - Tn3270
+ additionalProperties: false
+ Output:
+ oneOf:
+ - type: object
+ title: File
+ properties:
+ File:
+ $ref: '#/components/schemas/OutputFile'
+ required:
+ - File
+ additionalProperties: false
+ OutputFile:
+ type: object
+ properties:
+ FileLocation:
+ type: string
+ maxLength: 1024
+ minLength: 0
+ additionalProperties: false
+ ResourceAction:
+ oneOf:
+ - type: object
+ title: M2ManagedApplicationAction
+ properties:
+ M2ManagedApplicationAction:
+ $ref: '#/components/schemas/M2ManagedApplicationAction'
+ required:
+ - M2ManagedApplicationAction
+ additionalProperties: false
+ - type: object
+ title: M2NonManagedApplicationAction
+ properties:
+ M2NonManagedApplicationAction:
+ $ref: '#/components/schemas/M2NonManagedApplicationAction'
+ required:
+ - M2NonManagedApplicationAction
+ additionalProperties: false
+ - type: object
+ title: CloudFormationAction
+ properties:
+ CloudFormationAction:
+ $ref: '#/components/schemas/CloudFormationAction'
+ required:
+ - CloudFormationAction
+ additionalProperties: false
+ Script:
+ type: object
+ properties:
+ ScriptLocation:
+ type: string
+ maxLength: 1024
+ minLength: 0
+ Type:
+ $ref: '#/components/schemas/ScriptType'
+ required:
+ - ScriptLocation
+ - Type
+ additionalProperties: false
+ ScriptType:
+ type: string
+ enum:
+ - Selenium
+ SourceDatabase:
+ type: string
+ enum:
+ - z/OS-DB2
+ SourceDatabaseMetadata:
+ type: object
+ properties:
+ Type:
+ $ref: '#/components/schemas/SourceDatabase'
+ CaptureTool:
+ $ref: '#/components/schemas/CaptureTool'
+ required:
+ - CaptureTool
+ - Type
+ additionalProperties: false
+ Step:
+ type: object
+ properties:
+ Name:
+ type: string
+ pattern: ^[A-Za-z][A-Za-z0-9_\-]{1,59}$
+ Description:
+ type: string
+ maxLength: 1000
+ minLength: 0
+ Action:
+ $ref: '#/components/schemas/StepAction'
+ required:
+ - Action
+ - Name
+ additionalProperties: false
+ StepAction:
+ oneOf:
+ - type: object
+ title: ResourceAction
+ properties:
+ ResourceAction:
+ $ref: '#/components/schemas/ResourceAction'
+ required:
+ - ResourceAction
+ additionalProperties: false
+ - type: object
+ title: MainframeAction
+ properties:
+ MainframeAction:
+ $ref: '#/components/schemas/MainframeAction'
+ required:
+ - MainframeAction
+ additionalProperties: false
+ - type: object
+ title: CompareAction
+ properties:
+ CompareAction:
+ $ref: '#/components/schemas/CompareAction'
+ required:
+ - CompareAction
+ additionalProperties: false
+ TN3270:
+ type: object
+ properties:
+ Script:
+ $ref: '#/components/schemas/Script'
+ ExportDataSetNames:
+ type: array
+ items:
+ type: string
+ pattern: ^\S{1,100}$
+ required:
+ - Script
+ additionalProperties: false
+ TagMap:
+ type: object
+ maxProperties: 200
+ minProperties: 0
+ x-patternProperties:
+ ^(?!aws:).+$:
+ type: string
+ maxLength: 256
+ minLength: 0
+ additionalProperties: false
+ TargetDatabase:
+ type: string
+ enum:
+ - PostgreSQL
+ TargetDatabaseMetadata:
+ type: object
+ properties:
+ Type:
+ $ref: '#/components/schemas/TargetDatabase'
+ CaptureTool:
+ $ref: '#/components/schemas/CaptureTool'
+ required:
+ - CaptureTool
+ - Type
+ additionalProperties: false
+ TestCaseLatestVersion:
+ type: object
+ properties:
+ Version:
+ type: number
+ Status:
+ $ref: '#/components/schemas/TestCaseLifecycle'
+ required:
+ - Status
+ - Version
+ additionalProperties: false
+ TestCaseLifecycle:
+ type: string
+ enum:
+ - Active
+ - Deleting
+ TestCase:
+ type: object
+ properties:
+ CreationTime:
+ type: string
+ format: date-time
+ Description:
+ type: string
+ maxLength: 1000
+ minLength: 0
+ LastUpdateTime:
+ type: string
+ format: date-time
+ LatestVersion:
+ $ref: '#/components/schemas/TestCaseLatestVersion'
+ Name:
+ type: string
+ pattern: ^[A-Za-z][A-Za-z0-9_\-]{1,59}$
+ Status:
+ $ref: '#/components/schemas/TestCaseLifecycle'
+ Steps:
+ type: array
+ items:
+ $ref: '#/components/schemas/Step'
+ maxItems: 20
+ minItems: 1
+ Tags:
+ $ref: '#/components/schemas/TagMap'
+ TestCaseArn:
+ type: string
+ pattern: ^arn:(aws|aws-cn|aws-iso|aws-iso-[a-z]{1}|aws-us-gov):[A-Za-z0-9][A-Za-z0-9_/.-]{0,62}:([a-z]{2}-((iso[a-z]{0,1}-)|(gov-)){0,1}[a-z]+-[0-9]):[0-9]{12}:[A-Za-z0-9/][A-Za-z0-9:_/+=,@.-]{0,1023}$
+ TestCaseId:
+ type: string
+ pattern: ^[A-Za-z0-9:/\-]{1,100}$
+ TestCaseVersion:
+ type: number
+ required:
+ - Name
+ - Steps
+ x-stackql-resource-name: test_case
+ description: Represents a Test Case that can be captured and executed
+ x-type-name: AWS::AppTest::TestCase
+ x-stackql-primary-identifier:
+ - TestCaseId
+ x-create-only-properties:
+ - Name
+ x-read-only-properties:
+ - CreationTime
+ - LastUpdateTime
+ - LatestVersion
+ - Status
+ - TestCaseArn
+ - TestCaseId
+ - TestCaseVersion
+ x-required-properties:
+ - Name
+ - Steps
+ x-tagging:
+ taggable: true
+ tagOnCreate: true
+ tagUpdatable: true
+ cloudFormationSystemTags: false
+ tagProperty: /properties/Tags
+ permissions:
+ - apptest:TagResource
+ - apptest:UntagResource
+ - apptest:ListTagsForResource
+ x-required-permissions:
+ create:
+ - apptest:CreateTestCase
+ - apptest:GetTestCase
+ - apptest:ListTagsForResource
+ read:
+ - apptest:GetTestCase
+ - apptest:ListTagsForResource
+ update:
+ - apptest:UpdateTestCase
+ - apptest:GetTestCase
+ - apptest:TagResource
+ - apptest:UnTagResource
+ - apptest:ListTagsForResource
+ delete:
+ - apptest:GetTestCase
+ - apptest:ListTagsForResource
+ - apptest:DeleteTestCase
+ list:
+ - apptest:ListTestCases
+ CreateTestCaseRequest:
+ properties:
+ ClientToken:
+ type: string
+ RoleArn:
+ type: string
+ TypeName:
+ type: string
+ TypeVersionId:
+ type: string
+ DesiredState:
+ type: object
+ properties:
+ CreationTime:
+ type: string
+ format: date-time
+ Description:
+ type: string
+ maxLength: 1000
+ minLength: 0
+ LastUpdateTime:
+ type: string
+ format: date-time
+ LatestVersion:
+ $ref: '#/components/schemas/TestCaseLatestVersion'
+ Name:
+ type: string
+ pattern: ^[A-Za-z][A-Za-z0-9_\-]{1,59}$
+ Status:
+ $ref: '#/components/schemas/TestCaseLifecycle'
+ Steps:
+ type: array
+ items:
+ $ref: '#/components/schemas/Step'
+ maxItems: 20
+ minItems: 1
+ Tags:
+ $ref: '#/components/schemas/TagMap'
+ TestCaseArn:
+ type: string
+ pattern: ^arn:(aws|aws-cn|aws-iso|aws-iso-[a-z]{1}|aws-us-gov):[A-Za-z0-9][A-Za-z0-9_/.-]{0,62}:([a-z]{2}-((iso[a-z]{0,1}-)|(gov-)){0,1}[a-z]+-[0-9]):[0-9]{12}:[A-Za-z0-9/][A-Za-z0-9:_/+=,@.-]{0,1023}$
+ TestCaseId:
+ type: string
+ pattern: ^[A-Za-z0-9:/\-]{1,100}$
+ TestCaseVersion:
+ type: number
+ x-stackQL-stringOnly: true
+ x-title: CreateTestCaseRequest
+ type: object
+ required: []
+ securitySchemes:
+ hmac:
+ type: apiKey
+ name: Authorization
+ in: header
+ description: Amazon Signature authorization v4
+ x-amazon-apigateway-authtype: awsSigv4
+ x-stackQL-resources:
+ test_cases:
+ name: test_cases
+ id: aws.apptest.test_cases
+ x-cfn-schema-name: TestCase
+ x-cfn-type-name: AWS::AppTest::TestCase
+ x-identifiers:
+ - TestCaseId
+ x-type: cloud_control
+ methods:
+ create_resource:
+ config:
+ requestBodyTranslate:
+ algorithm: naive_DesiredState
+ operation:
+ $ref: '#/paths/~1?Action=CreateResource&Version=2021-09-30&__TestCase&__detailTransformed=true/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::AppTest::TestCase"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ update_resource:
+ operation:
+ $ref: '#/paths/~1?Action=UpdateResource&Version=2021-09-30/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::AppTest::TestCase"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ delete_resource:
+ operation:
+ $ref: '#/paths/~1?Action=DeleteResource&Version=2021-09-30/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::AppTest::TestCase"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ sqlVerbs:
+ insert:
+ - $ref: '#/components/x-stackQL-resources/test_cases/methods/create_resource'
+ delete:
+ - $ref: '#/components/x-stackQL-resources/test_cases/methods/delete_resource'
+ update:
+ - $ref: '#/components/x-stackQL-resources/test_cases/methods/update_resource'
+ config:
+ views:
+ select:
+ predicate: sqlDialect == "sqlite3" && requiredParams == [ data__Identifier ]
+ ddl: |-
+ SELECT
+ region,
+ data__Identifier,
+ JSON_EXTRACT(Properties, '$.CreationTime') as creation_time,
+ JSON_EXTRACT(Properties, '$.Description') as description,
+ JSON_EXTRACT(Properties, '$.LastUpdateTime') as last_update_time,
+ JSON_EXTRACT(Properties, '$.LatestVersion') as latest_version,
+ JSON_EXTRACT(Properties, '$.Name') as name,
+ JSON_EXTRACT(Properties, '$.Status') as status,
+ JSON_EXTRACT(Properties, '$.Steps') as steps,
+ JSON_EXTRACT(Properties, '$.Tags') as tags,
+ JSON_EXTRACT(Properties, '$.TestCaseArn') as test_case_arn,
+ JSON_EXTRACT(Properties, '$.TestCaseId') as test_case_id,
+ JSON_EXTRACT(Properties, '$.TestCaseVersion') as test_case_version
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::AppTest::TestCase'
+ AND data__Identifier = ''
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "sqlite3"
+ ddl: |-
+ SELECT
+ detail.region,
+ JSON_EXTRACT(detail.Properties, '$.CreationTime') as creation_time,
+ JSON_EXTRACT(detail.Properties, '$.Description') as description,
+ JSON_EXTRACT(detail.Properties, '$.LastUpdateTime') as last_update_time,
+ JSON_EXTRACT(detail.Properties, '$.LatestVersion') as latest_version,
+ JSON_EXTRACT(detail.Properties, '$.Name') as name,
+ JSON_EXTRACT(detail.Properties, '$.Status') as status,
+ JSON_EXTRACT(detail.Properties, '$.Steps') as steps,
+ JSON_EXTRACT(detail.Properties, '$.Tags') as tags,
+ JSON_EXTRACT(detail.Properties, '$.TestCaseArn') as test_case_arn,
+ JSON_EXTRACT(detail.Properties, '$.TestCaseId') as test_case_id,
+ JSON_EXTRACT(detail.Properties, '$.TestCaseVersion') as test_case_version
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ WHERE listing.data__TypeName = 'AWS::AppTest::TestCase'
+ AND detail.data__TypeName = 'AWS::AppTest::TestCase'
+ AND listing.region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres" && requiredParams == [ data__Identifier ]
+ ddl: |-
+ SELECT
+ region,
+ data__Identifier,
+ json_extract_path_text(Properties, 'CreationTime') as creation_time,
+ json_extract_path_text(Properties, 'Description') as description,
+ json_extract_path_text(Properties, 'LastUpdateTime') as last_update_time,
+ json_extract_path_text(Properties, 'LatestVersion') as latest_version,
+ json_extract_path_text(Properties, 'Name') as name,
+ json_extract_path_text(Properties, 'Status') as status,
+ json_extract_path_text(Properties, 'Steps') as steps,
+ json_extract_path_text(Properties, 'Tags') as tags,
+ json_extract_path_text(Properties, 'TestCaseArn') as test_case_arn,
+ json_extract_path_text(Properties, 'TestCaseId') as test_case_id,
+ json_extract_path_text(Properties, 'TestCaseVersion') as test_case_version
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::AppTest::TestCase'
+ AND data__Identifier = ''
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres"
+ ddl: |-
+ SELECT
+ detail.region,
+ json_extract_path_text(detail.Properties, 'CreationTime') as creation_time,
+ json_extract_path_text(detail.Properties, 'Description') as description,
+ json_extract_path_text(detail.Properties, 'LastUpdateTime') as last_update_time,
+ json_extract_path_text(detail.Properties, 'LatestVersion') as latest_version,
+ json_extract_path_text(detail.Properties, 'Name') as name,
+ json_extract_path_text(detail.Properties, 'Status') as status,
+ json_extract_path_text(detail.Properties, 'Steps') as steps,
+ json_extract_path_text(detail.Properties, 'Tags') as tags,
+ json_extract_path_text(detail.Properties, 'TestCaseArn') as test_case_arn,
+ json_extract_path_text(detail.Properties, 'TestCaseId') as test_case_id,
+ json_extract_path_text(detail.Properties, 'TestCaseVersion') as test_case_version
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ WHERE listing.data__TypeName = 'AWS::AppTest::TestCase'
+ AND detail.data__TypeName = 'AWS::AppTest::TestCase'
+ AND listing.region = 'us-east-1'
+ test_cases_list_only:
+ name: test_cases_list_only
+ id: aws.apptest.test_cases_list_only
+ x-cfn-schema-name: TestCase
+ x-cfn-type-name: AWS::AppTest::TestCase
+ x-identifiers:
+ - TestCaseId
+ x-type: cloud_control_view
+ methods: {}
+ sqlVerbs:
+ insert: []
+ delete: []
+ update: []
+ config:
+ views:
+ select:
+ predicate: sqlDialect == "sqlite3"
+ ddl: |-
+ SELECT
+ region,
+ JSON_EXTRACT(Properties, '$.TestCaseId') as test_case_id
+ FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::AppTest::TestCase'
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres"
+ ddl: |-
+ SELECT
+ region,
+ json_extract_path_text(Properties, 'TestCaseId') as test_case_id
+ FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::AppTest::TestCase'
+ AND region = 'us-east-1'
+ test_case_tags:
+ name: test_case_tags
+ id: aws.apptest.test_case_tags
+ x-cfn-schema-name: TestCase
+ x-cfn-type-name: AWS::AppTest::TestCase
+ x-type: cloud_control_view
+ methods: {}
+ sqlVerbs:
+ insert: []
+ delete: []
+ update: []
+ config:
+ views:
+ select:
+ predicate: sqlDialect == "sqlite3"
+ ddl: |-
+ SELECT
+ detail.region,
+ JSON_EXTRACT(json_each.value, '$.Key') as tag_key,
+ JSON_EXTRACT(json_each.value, '$.Value') as tag_value,
+ JSON_EXTRACT(detail.Properties, '$.CreationTime') as creation_time,
+ JSON_EXTRACT(detail.Properties, '$.Description') as description,
+ JSON_EXTRACT(detail.Properties, '$.LastUpdateTime') as last_update_time,
+ JSON_EXTRACT(detail.Properties, '$.LatestVersion') as latest_version,
+ JSON_EXTRACT(detail.Properties, '$.Name') as name,
+ JSON_EXTRACT(detail.Properties, '$.Status') as status,
+ JSON_EXTRACT(detail.Properties, '$.Steps') as steps,
+ JSON_EXTRACT(detail.Properties, '$.TestCaseArn') as test_case_arn,
+ JSON_EXTRACT(detail.Properties, '$.TestCaseId') as test_case_id,
+ JSON_EXTRACT(detail.Properties, '$.TestCaseVersion') as test_case_version
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ ,json_each(JSON_EXTRACT(detail.Properties, '$.Tags'))
+ WHERE listing.data__TypeName = 'AWS::AppTest::TestCase'
+ AND detail.data__TypeName = 'AWS::AppTest::TestCase'
+ AND listing.region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres"
+ ddl: |-
+ SELECT
+ detail.region,
+ json_extract_path_text(json_each.value, 'Key') as tag_key,
+ json_extract_path_text(json_each.value, 'Value') as tag_value,
+ json_extract_path_text(detail.Properties, 'CreationTime') as creation_time,
+ json_extract_path_text(detail.Properties, 'Description') as description,
+ json_extract_path_text(detail.Properties, 'LastUpdateTime') as last_update_time,
+ json_extract_path_text(detail.Properties, 'LatestVersion') as latest_version,
+ json_extract_path_text(detail.Properties, 'Name') as name,
+ json_extract_path_text(detail.Properties, 'Status') as status,
+ json_extract_path_text(detail.Properties, 'Steps') as steps,
+ json_extract_path_text(detail.Properties, 'TestCaseArn') as test_case_arn,
+ json_extract_path_text(detail.Properties, 'TestCaseId') as test_case_id,
+ json_extract_path_text(detail.Properties, 'TestCaseVersion') as test_case_version
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ ,json_array_elements_text(json_extract_path_text(detail.Properties, 'Tags'))
+ WHERE listing.data__TypeName = 'AWS::AppTest::TestCase'
+ AND detail.data__TypeName = 'AWS::AppTest::TestCase'
+ AND listing.region = 'us-east-1'
+paths:
+ /?Action=CreateResource&Version=2021-09-30:
+ parameters:
+ - $ref: '#/components/parameters/X-Amz-Content-Sha256'
+ - $ref: '#/components/parameters/X-Amz-Date'
+ - $ref: '#/components/parameters/X-Amz-Algorithm'
+ - $ref: '#/components/parameters/X-Amz-Credential'
+ - $ref: '#/components/parameters/X-Amz-Security-Token'
+ - $ref: '#/components/parameters/X-Amz-Signature'
+ - $ref: '#/components/parameters/X-Amz-SignedHeaders'
+ post:
+ operationId: CreateResource
+ parameters:
+ - description: Action Header
+ in: header
+ name: X-Amz-Target
+ required: false
+ schema:
+ default: CloudApiService.CreateResource
+ enum:
+ - CloudApiService.CreateResource
+ type: string
+ - in: header
+ name: Content-Type
+ required: false
+ schema:
+ default: application/x-amz-json-1.0
+ enum:
+ - application/x-amz-json-1.0
+ type: string
+ requestBody:
+ content:
+ application/x-amz-json-1.0:
+ schema:
+ $ref: '#/components/x-cloud-control-schemas/CreateResourceInput'
+ required: true
+ responses:
+ '200':
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/x-cloud-control-schemas/ProgressEvent'
+ description: Success
+ /?Action=DeleteResource&Version=2021-09-30:
+ parameters:
+ - $ref: '#/components/parameters/X-Amz-Content-Sha256'
+ - $ref: '#/components/parameters/X-Amz-Date'
+ - $ref: '#/components/parameters/X-Amz-Algorithm'
+ - $ref: '#/components/parameters/X-Amz-Credential'
+ - $ref: '#/components/parameters/X-Amz-Security-Token'
+ - $ref: '#/components/parameters/X-Amz-Signature'
+ - $ref: '#/components/parameters/X-Amz-SignedHeaders'
+ post:
+ operationId: DeleteResource
+ parameters:
+ - description: Action Header
+ in: header
+ name: X-Amz-Target
+ required: false
+ schema:
+ default: CloudApiService.DeleteResource
+ enum:
+ - CloudApiService.DeleteResource
+ type: string
+ - in: header
+ name: Content-Type
+ required: false
+ schema:
+ default: application/x-amz-json-1.0
+ enum:
+ - application/x-amz-json-1.0
+ type: string
+ requestBody:
+ content:
+ application/x-amz-json-1.0:
+ schema:
+ $ref: '#/components/x-cloud-control-schemas/DeleteResourceInput'
+ required: true
+ responses:
+ '200':
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/x-cloud-control-schemas/DeleteResourceOutput'
+ description: Success
+ /?Action=UpdateResource&Version=2021-09-30:
+ parameters:
+ - $ref: '#/components/parameters/X-Amz-Content-Sha256'
+ - $ref: '#/components/parameters/X-Amz-Date'
+ - $ref: '#/components/parameters/X-Amz-Algorithm'
+ - $ref: '#/components/parameters/X-Amz-Credential'
+ - $ref: '#/components/parameters/X-Amz-Security-Token'
+ - $ref: '#/components/parameters/X-Amz-Signature'
+ - $ref: '#/components/parameters/X-Amz-SignedHeaders'
+ post:
+ operationId: UpdateResource
+ parameters:
+ - description: Action Header
+ in: header
+ name: X-Amz-Target
+ required: false
+ schema:
+ default: CloudApiService.UpdateResource
+ enum:
+ - CloudApiService.UpdateResource
+ type: string
+ - in: header
+ name: Content-Type
+ required: false
+ schema:
+ default: application/x-amz-json-1.0
+ enum:
+ - application/x-amz-json-1.0
+ type: string
+ requestBody:
+ content:
+ application/x-amz-json-1.0:
+ schema:
+ properties:
+ ClientName:
+ type: string
+ Identifier:
+ $ref: '#/components/x-cloud-control-schemas/Identifier'
+ PatchDocument:
+ type: string
+ RoleArn:
+ $ref: '#/components/x-cloud-control-schemas/RoleArn'
+ TypeName:
+ $ref: '#/components/x-cloud-control-schemas/TypeName'
+ TypeVersionId:
+ $ref: '#/components/x-cloud-control-schemas/TypeVersionId'
+ required:
+ - Identifier
+ - PatchDocument
+ type: object
+ required: true
+ responses:
+ '200':
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/x-cloud-control-schemas/UpdateResourceOutput'
+ description: Success
+ /?Action=CreateResource&Version=2021-09-30&__TestCase&__detailTransformed=true:
+ parameters:
+ - $ref: '#/components/parameters/X-Amz-Content-Sha256'
+ - $ref: '#/components/parameters/X-Amz-Date'
+ - $ref: '#/components/parameters/X-Amz-Algorithm'
+ - $ref: '#/components/parameters/X-Amz-Credential'
+ - $ref: '#/components/parameters/X-Amz-Security-Token'
+ - $ref: '#/components/parameters/X-Amz-Signature'
+ - $ref: '#/components/parameters/X-Amz-SignedHeaders'
+ post:
+ operationId: CreateTestCase
+ parameters:
+ - description: Action Header
+ in: header
+ name: X-Amz-Target
+ required: false
+ schema:
+ default: CloudApiService.CreateResource
+ enum:
+ - CloudApiService.CreateResource
+ type: string
+ - in: header
+ name: Content-Type
+ required: false
+ schema:
+ default: application/x-amz-json-1.0
+ enum:
+ - application/x-amz-json-1.0
+ type: string
+ requestBody:
+ content:
+ application/x-amz-json-1.0:
+ schema:
+ $ref: '#/components/schemas/CreateTestCaseRequest'
+ required: true
+ responses:
+ '200':
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/x-cloud-control-schemas/ProgressEvent'
+ description: Success
+x-stackQL-config:
+ requestTranslate:
+ algorithm: drop_double_underscore_params
+ pagination:
+ requestToken:
+ key: NextToken
+ location: body
+ responseToken:
+ key: NextToken
+ location: body
diff --git a/providers/src/aws/v00.00.00000/services/aps.yaml b/providers/src/aws/v00.00.00000/services/aps.yaml
index 8bf93e8a..0af9c7e0 100644
--- a/providers/src/aws/v00.00.00000/services/aps.yaml
+++ b/providers/src/aws/v00.00.00000/services/aps.yaml
@@ -591,10 +591,7 @@ components:
x-stackql-primary-identifier:
- Arn
x-create-only-properties:
- - ScrapeConfiguration
- Source
- - Destination
- - Alias
x-read-only-properties:
- ScraperId
- Arn
@@ -625,7 +622,10 @@ components:
- aps:DescribeScraper
- aps:ListTagsForResource
update:
+ - aps:CreateScraper
- aps:DescribeScraper
+ - aps:UpdateScraper
+ - aps:DescribeWorkspace
- aps:TagResource
- aps:UntagResource
- aps:ListTagsForResource
diff --git a/providers/src/aws/v00.00.00000/services/arczonalshift.yaml b/providers/src/aws/v00.00.00000/services/arczonalshift.yaml
index 41be2632..a10843dd 100644
--- a/providers/src/aws/v00.00.00000/services/arczonalshift.yaml
+++ b/providers/src/aws/v00.00.00000/services/arczonalshift.yaml
@@ -385,6 +385,52 @@ components:
$ref: '#/components/x-cloud-control-schemas/ProgressEvent'
type: object
schemas:
+ AccountId:
+ description: User account id, used as part of the primary identifier for the resource
+ type: string
+ pattern: ^\d{12}$
+ Region:
+ description: Region, used as part of the primary identifier for the resource
+ type: string
+ pattern: ^[a-z0-9-]*$
+ maxLength: 30
+ minLength: 5
+ AutoshiftObserverNotificationStatus:
+ type: object
+ properties:
+ Status:
+ $ref: '#/components/schemas/AutoshiftObserverNotificationStatus'
+ AccountId:
+ $ref: '#/components/schemas/AccountId'
+ Region:
+ $ref: '#/components/schemas/Region'
+ required:
+ - Status
+ x-stackql-resource-name: autoshift_observer_notification_status
+ description: Definition of AWS::ARCZonalShift::AutoshiftObserverNotificationStatus Resource Type
+ x-type-name: AWS::ARCZonalShift::AutoshiftObserverNotificationStatus
+ x-stackql-primary-identifier:
+ - AccountId
+ - Region
+ x-create-only-properties:
+ - Status
+ x-read-only-properties:
+ - AccountId
+ - Region
+ x-required-properties:
+ - Status
+ x-tagging:
+ taggable: false
+ x-required-permissions:
+ create:
+ - arc-zonal-shift:UpdateAutoshiftObserverNotificationStatus
+ read:
+ - arc-zonal-shift:GetAutoshiftObserverNotificationStatus
+ delete:
+ - arc-zonal-shift:UpdateAutoshiftObserverNotificationStatus
+ - arc-zonal-shift:GetAutoshiftObserverNotificationStatus
+ list:
+ - arc-zonal-shift:GetAutoshiftObserverNotificationStatus
ZonalAutoshiftStatus:
type: string
enum:
@@ -398,15 +444,16 @@ components:
type: string
maxLength: 1024
minLength: 8
- pattern: ^arn:.*$
+ pattern: ^.*$
required:
- AlarmIdentifier
- Type
additionalProperties: false
ControlConditionType:
type: string
- enum:
- - CLOUDWATCH
+ minLength: 8
+ maxLength: 10
+ pattern: ^[a-zA-Z]*$
PracticeRunConfiguration:
type: object
properties:
@@ -487,6 +534,29 @@ components:
- arc-zonal-shift:UpdateZonalAutoshiftConfiguration
list:
- arc-zonal-shift:ListManagedResources
+ CreateAutoshiftObserverNotificationStatusRequest:
+ properties:
+ ClientToken:
+ type: string
+ RoleArn:
+ type: string
+ TypeName:
+ type: string
+ TypeVersionId:
+ type: string
+ DesiredState:
+ type: object
+ properties:
+ Status:
+ $ref: '#/components/schemas/AutoshiftObserverNotificationStatus'
+ AccountId:
+ $ref: '#/components/schemas/AccountId'
+ Region:
+ $ref: '#/components/schemas/Region'
+ x-stackQL-stringOnly: true
+ x-title: CreateAutoshiftObserverNotificationStatusRequest
+ type: object
+ required: []
CreateZonalAutoshiftConfigurationRequest:
properties:
ClientToken:
@@ -520,6 +590,139 @@ components:
description: Amazon Signature authorization v4
x-amazon-apigateway-authtype: awsSigv4
x-stackQL-resources:
+ autoshift_observer_notification_statuses:
+ name: autoshift_observer_notification_statuses
+ id: aws.arczonalshift.autoshift_observer_notification_statuses
+ x-cfn-schema-name: AutoshiftObserverNotificationStatus
+ x-cfn-type-name: AWS::ARCZonalShift::AutoshiftObserverNotificationStatus
+ x-identifiers:
+ - AccountId
+ - Region
+ x-type: cloud_control
+ methods:
+ create_resource:
+ config:
+ requestBodyTranslate:
+ algorithm: naive_DesiredState
+ operation:
+ $ref: '#/paths/~1?Action=CreateResource&Version=2021-09-30&__AutoshiftObserverNotificationStatus&__detailTransformed=true/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::ARCZonalShift::AutoshiftObserverNotificationStatus"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ delete_resource:
+ operation:
+ $ref: '#/paths/~1?Action=DeleteResource&Version=2021-09-30/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::ARCZonalShift::AutoshiftObserverNotificationStatus"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ sqlVerbs:
+ insert:
+ - $ref: '#/components/x-stackQL-resources/autoshift_observer_notification_statuses/methods/create_resource'
+ delete:
+ - $ref: '#/components/x-stackQL-resources/autoshift_observer_notification_statuses/methods/delete_resource'
+ update: []
+ config:
+ views:
+ select:
+ predicate: sqlDialect == "sqlite3" && requiredParams == [ data__Identifier ]
+ ddl: |-
+ SELECT
+ region,
+ data__Identifier,
+ JSON_EXTRACT(Properties, '$.Status') as status,
+ JSON_EXTRACT(Properties, '$.AccountId') as account_id,
+ JSON_EXTRACT(Properties, '$.Region') as region
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::ARCZonalShift::AutoshiftObserverNotificationStatus'
+ AND data__Identifier = '|'
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "sqlite3"
+ ddl: |-
+ SELECT
+ detail.region,
+ JSON_EXTRACT(detail.Properties, '$.Status') as status,
+ JSON_EXTRACT(detail.Properties, '$.AccountId') as account_id,
+ JSON_EXTRACT(detail.Properties, '$.Region') as region
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ WHERE listing.data__TypeName = 'AWS::ARCZonalShift::AutoshiftObserverNotificationStatus'
+ AND detail.data__TypeName = 'AWS::ARCZonalShift::AutoshiftObserverNotificationStatus'
+ AND listing.region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres" && requiredParams == [ data__Identifier ]
+ ddl: |-
+ SELECT
+ region,
+ data__Identifier,
+ json_extract_path_text(Properties, 'Status') as status,
+ json_extract_path_text(Properties, 'AccountId') as account_id,
+ json_extract_path_text(Properties, 'Region') as region
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::ARCZonalShift::AutoshiftObserverNotificationStatus'
+ AND data__Identifier = '|'
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres"
+ ddl: |-
+ SELECT
+ detail.region,
+ json_extract_path_text(detail.Properties, 'Status') as status,
+ json_extract_path_text(detail.Properties, 'AccountId') as account_id,
+ json_extract_path_text(detail.Properties, 'Region') as region
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ WHERE listing.data__TypeName = 'AWS::ARCZonalShift::AutoshiftObserverNotificationStatus'
+ AND detail.data__TypeName = 'AWS::ARCZonalShift::AutoshiftObserverNotificationStatus'
+ AND listing.region = 'us-east-1'
+ autoshift_observer_notification_statuses_list_only:
+ name: autoshift_observer_notification_statuses_list_only
+ id: aws.arczonalshift.autoshift_observer_notification_statuses_list_only
+ x-cfn-schema-name: AutoshiftObserverNotificationStatus
+ x-cfn-type-name: AWS::ARCZonalShift::AutoshiftObserverNotificationStatus
+ x-identifiers:
+ - AccountId
+ - Region
+ x-type: cloud_control_view
+ methods: {}
+ sqlVerbs:
+ insert: []
+ delete: []
+ update: []
+ config:
+ views:
+ select:
+ predicate: sqlDialect == "sqlite3"
+ ddl: |-
+ SELECT
+ region,
+ JSON_EXTRACT(Properties, '$.AccountId') as account_id,
+ JSON_EXTRACT(Properties, '$.Region') as region
+ FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::ARCZonalShift::AutoshiftObserverNotificationStatus'
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres"
+ ddl: |-
+ SELECT
+ region,
+ json_extract_path_text(Properties, 'AccountId') as account_id,
+ json_extract_path_text(Properties, 'Region') as region
+ FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::ARCZonalShift::AutoshiftObserverNotificationStatus'
+ AND region = 'us-east-1'
zonal_autoshift_configurations:
name: zonal_autoshift_configurations
id: aws.arczonalshift.zonal_autoshift_configurations
@@ -805,6 +1008,48 @@ paths:
schema:
$ref: '#/components/x-cloud-control-schemas/UpdateResourceOutput'
description: Success
+ /?Action=CreateResource&Version=2021-09-30&__AutoshiftObserverNotificationStatus&__detailTransformed=true:
+ parameters:
+ - $ref: '#/components/parameters/X-Amz-Content-Sha256'
+ - $ref: '#/components/parameters/X-Amz-Date'
+ - $ref: '#/components/parameters/X-Amz-Algorithm'
+ - $ref: '#/components/parameters/X-Amz-Credential'
+ - $ref: '#/components/parameters/X-Amz-Security-Token'
+ - $ref: '#/components/parameters/X-Amz-Signature'
+ - $ref: '#/components/parameters/X-Amz-SignedHeaders'
+ post:
+ operationId: CreateAutoshiftObserverNotificationStatus
+ parameters:
+ - description: Action Header
+ in: header
+ name: X-Amz-Target
+ required: false
+ schema:
+ default: CloudApiService.CreateResource
+ enum:
+ - CloudApiService.CreateResource
+ type: string
+ - in: header
+ name: Content-Type
+ required: false
+ schema:
+ default: application/x-amz-json-1.0
+ enum:
+ - application/x-amz-json-1.0
+ type: string
+ requestBody:
+ content:
+ application/x-amz-json-1.0:
+ schema:
+ $ref: '#/components/schemas/CreateAutoshiftObserverNotificationStatusRequest'
+ required: true
+ responses:
+ '200':
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/x-cloud-control-schemas/ProgressEvent'
+ description: Success
/?Action=CreateResource&Version=2021-09-30&__ZonalAutoshiftConfiguration&__detailTransformed=true:
parameters:
- $ref: '#/components/parameters/X-Amz-Content-Sha256'
diff --git a/providers/src/aws/v00.00.00000/services/auditmanager.yaml b/providers/src/aws/v00.00.00000/services/auditmanager.yaml
index 35a37052..0daa9da2 100644
--- a/providers/src/aws/v00.00.00000/services/auditmanager.yaml
+++ b/providers/src/aws/v00.00.00000/services/auditmanager.yaml
@@ -636,6 +636,16 @@ components:
- Arn
- CreationTime
x-required-properties: []
+ x-tagging:
+ taggable: true
+ tagOnCreate: true
+ tagUpdatable: false
+ cloudFormationSystemTags: false
+ tagProperty: /properties/Tags
+ permissions:
+ - auditmanager:TagResource
+ - auditmanager:ListTagsForResource
+ - auditmanager:UntagResource
x-required-permissions:
create:
- auditmanager:CreateAssessment
@@ -652,8 +662,10 @@ components:
- auditmanager:BatchDeleteDelegationByAssessment
delete:
- auditmanager:DeleteAssessment
+ - auditmanager:UntagResource
list:
- auditmanager:ListAssessments
+ - auditmanager:ListTagsForResource
CreateAssessmentRequest:
properties:
ClientToken:
diff --git a/providers/src/aws/v00.00.00000/services/autoscaling.yaml b/providers/src/aws/v00.00.00000/services/autoscaling.yaml
index fc14bcb4..1ce134e9 100644
--- a/providers/src/aws/v00.00.00000/services/autoscaling.yaml
+++ b/providers/src/aws/v00.00.00000/services/autoscaling.yaml
@@ -385,6 +385,237 @@ components:
$ref: '#/components/x-cloud-control-schemas/ProgressEvent'
type: object
schemas:
+ AvailabilityZoneImpairmentPolicy:
+ description: Describes an Availability Zone impairment policy.
+ additionalProperties: false
+ type: object
+ properties:
+ ZonalShiftEnabled:
+ description: If ``true``, enable zonal shift for your Auto Scaling group.
+ type: boolean
+ ImpairedZoneHealthCheckBehavior:
+ description: >-
+ Specifies the health check behavior for the impaired Availability Zone in an active zonal shift. If you select ``Replace unhealthy``, instances that appear unhealthy will be replaced in all Availability Zones. If you select ``Ignore unhealthy``, instances will not be replaced in the Availability Zone with the active zonal shift. For more information, see [Auto Scaling group zonal shift](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-zonal-shift.html) in the
+ *Amazon EC2 Auto Scaling User Guide*.
+ type: string
+ enum:
+ - IgnoreUnhealthy
+ - ReplaceUnhealthy
+ required:
+ - ImpairedZoneHealthCheckBehavior
+ - ZonalShiftEnabled
+ LifecycleHookSpecification:
+ description: |-
+ ``LifecycleHookSpecification`` specifies a lifecycle hook for the ``LifecycleHookSpecificationList`` property of the [AWS::AutoScaling::AutoScalingGroup](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscaling-autoscalinggroup.html) resource. A lifecycle hook specifies actions to perform when Amazon EC2 Auto Scaling launches or terminates instances.
+ For more information, see [Amazon EC2 Auto Scaling lifecycle hooks](https://docs.aws.amazon.com/autoscaling/ec2/userguide/lifecycle-hooks.html) in the *Amazon EC2 Auto Scaling User Guide*. You can find a sample template snippet in the [Examples](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-as-lifecyclehook.html#aws-resource-as-lifecyclehook--examples) section of the ``AWS::AutoScaling::LifecycleHook`` resource.
+ additionalProperties: false
+ type: object
+ properties:
+ LifecycleHookName:
+ description: The name of the lifecycle hook.
+ type: string
+ LifecycleTransition:
+ description: |-
+ The lifecycle transition. For Auto Scaling groups, there are two major lifecycle transitions.
+ + To create a lifecycle hook for scale-out events, specify ``autoscaling:EC2_INSTANCE_LAUNCHING``.
+ + To create a lifecycle hook for scale-in events, specify ``autoscaling:EC2_INSTANCE_TERMINATING``.
+ type: string
+ HeartbeatTimeout:
+ description: The maximum time, in seconds, that can elapse before the lifecycle hook times out. The range is from ``30`` to ``7200`` seconds. The default value is ``3600`` seconds (1 hour).
+ type: integer
+ NotificationMetadata:
+ description: Additional information that you want to include any time Amazon EC2 Auto Scaling sends a message to the notification target.
+ type: string
+ DefaultResult:
+ description: |-
+ The action the Auto Scaling group takes when the lifecycle hook timeout elapses or if an unexpected failure occurs. The default value is ``ABANDON``.
+ Valid values: ``CONTINUE`` | ``ABANDON``
+ type: string
+ NotificationTargetARN:
+ description: The Amazon Resource Name (ARN) of the notification target that Amazon EC2 Auto Scaling sends notifications to when an instance is in a wait state for the lifecycle hook. You can specify an Amazon SNS topic or an Amazon SQS queue.
+ type: string
+ RoleARN:
+ description: |-
+ The ARN of the IAM role that allows the Auto Scaling group to publish to the specified notification target. For information about creating this role, see [Prepare to add a lifecycle hook to your Auto Scaling group](https://docs.aws.amazon.com/autoscaling/ec2/userguide/prepare-for-lifecycle-notifications.html) in the *Amazon EC2 Auto Scaling User Guide*.
+ Valid only if the notification target is an Amazon SNS topic or an Amazon SQS queue.
+ type: string
+ required:
+ - LifecycleHookName
+ - LifecycleTransition
+ MemoryGiBPerVCpuRequest:
+ description: '``MemoryGiBPerVCpuRequest`` is a property of the ``InstanceRequirements`` property of the [AWS::AutoScaling::AutoScalingGroup LaunchTemplateOverrides](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-launchtemplateoverrides.html) property type that describes the minimum and maximum amount of memory per vCPU for an instance type, in GiB.'
+ additionalProperties: false
+ type: object
+ properties:
+ Min:
+ description: The memory minimum in GiB.
+ type: number
+ Max:
+ description: The memory maximum in GiB.
+ type: number
+ TotalLocalStorageGBRequest:
+ description: '``TotalLocalStorageGBRequest`` is a property of the ``InstanceRequirements`` property of the [AWS::AutoScaling::AutoScalingGroup LaunchTemplateOverrides](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-launchtemplateoverrides.html) property type that describes the minimum and maximum total local storage size for an instance type, in GB.'
+ additionalProperties: false
+ type: object
+ properties:
+ Min:
+ description: The storage minimum in GB.
+ type: number
+ Max:
+ description: The storage maximum in GB.
+ type: number
+ NetworkBandwidthGbpsRequest:
+ description: |-
+ ``NetworkBandwidthGbpsRequest`` is a property of the ``InstanceRequirements`` property of the [AWS::AutoScaling::AutoScalingGroup LaunchTemplateOverrides](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-launchtemplateoverrides.html) property type that describes the minimum and maximum network bandwidth for an instance type, in Gbps.
+ Setting the minimum bandwidth does not guarantee that your instance will achieve the minimum bandwidth. Amazon EC2 will identify instance types that support the specified minimum bandwidth, but the actual bandwidth of your instance might go below the specified minimum at times. For more information, see [Available instance bandwidth](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-network-bandwidth.html#available-instance-bandwidth) in the *Amazon EC2 User Guide for Linux Instances*.
+ additionalProperties: false
+ type: object
+ properties:
+ Min:
+ description: The minimum amount of network bandwidth, in gigabits per second (Gbps).
+ type: number
+ Max:
+ description: The maximum amount of network bandwidth, in gigabits per second (Gbps).
+ type: number
+ BaselineEbsBandwidthMbpsRequest:
+ description: '``BaselineEbsBandwidthMbpsRequest`` is a property of the ``InstanceRequirements`` property of the [AWS::AutoScaling::AutoScalingGroup LaunchTemplateOverrides](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-launchtemplateoverrides.html) property type that describes the minimum and maximum baseline bandwidth performance for an instance type, in Mbps.'
+ additionalProperties: false
+ type: object
+ properties:
+ Min:
+ description: The minimum value in Mbps.
+ type: integer
+ Max:
+ description: The maximum value in Mbps.
+ type: integer
+ NetworkInterfaceCountRequest:
+ description: '``NetworkInterfaceCountRequest`` is a property of the ``InstanceRequirements`` property of the [AWS::AutoScaling::AutoScalingGroup LaunchTemplateOverrides](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-launchtemplateoverrides.html) property type that describes the minimum and maximum number of network interfaces for an instance type.'
+ additionalProperties: false
+ type: object
+ properties:
+ Min:
+ description: The minimum number of network interfaces.
+ type: integer
+ Max:
+ description: The maximum number of network interfaces.
+ type: integer
+ VCpuCountRequest:
+ description: '``VCpuCountRequest`` is a property of the ``InstanceRequirements`` property of the [AWS::AutoScaling::AutoScalingGroup LaunchTemplateOverrides](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-launchtemplateoverrides.html) property type that describes the minimum and maximum number of vCPUs for an instance type.'
+ additionalProperties: false
+ type: object
+ properties:
+ Min:
+ description: The minimum number of vCPUs.
+ type: integer
+ Max:
+ description: The maximum number of vCPUs.
+ type: integer
+ PerformanceFactorReferenceRequest:
+ description: ''
+ additionalProperties: false
+ type: object
+ properties:
+ InstanceFamily:
+ description: ''
+ type: string
+ LaunchTemplate:
+ description: |-
+ Use this structure to specify the launch templates and instance types (overrides) for a mixed instances policy.
+ ``LaunchTemplate`` is a property of the [AWS::AutoScaling::AutoScalingGroup MixedInstancesPolicy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-mixedinstancespolicy.html) property type.
+ additionalProperties: false
+ type: object
+ properties:
+ LaunchTemplateSpecification:
+ description: The launch template.
+ $ref: '#/components/schemas/LaunchTemplateSpecification'
+ Overrides:
+ uniqueItems: false
+ description: Any properties that you specify override the same properties in the launch template.
+ x-insertionOrder: true
+ type: array
+ items:
+ $ref: '#/components/schemas/LaunchTemplateOverrides'
+ required:
+ - LaunchTemplateSpecification
+ LaunchTemplateOverrides:
+ description: |-
+ Use this structure to let Amazon EC2 Auto Scaling do the following when the Auto Scaling group has a mixed instances policy:
+ + Override the instance type that is specified in the launch template.
+ + Use multiple instance types.
+
+ Specify the instance types that you want, or define your instance requirements instead and let Amazon EC2 Auto Scaling provision the available instance types that meet your requirements. This can provide Amazon EC2 Auto Scaling with a larger selection of instance types to choose from when fulfilling Spot and On-Demand capacities. You can view which instance types are matched before you apply the instance requirements to your Auto Scaling group.
+ After you define your instance requirements, you don't have to keep updating these settings to get new EC2 instance types automatically. Amazon EC2 Auto Scaling uses the instance requirements of the Auto Scaling group to determine whether a new EC2 instance type can be used.
+ ``LaunchTemplateOverrides`` is a property of the [AWS::AutoScaling::AutoScalingGroup LaunchTemplate](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-launchtemplate.html) property type.
+ additionalProperties: false
+ type: object
+ properties:
+ LaunchTemplateSpecification:
+ description: >-
+ Provides a launch template for the specified instance type or set of instance requirements. For example, some instance types might require a launch template with a different AMI. If not provided, Amazon EC2 Auto Scaling uses the launch template that's specified in the ``LaunchTemplate`` definition. For more information, see [Specifying a different launch template for an instance
+ type](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-mixed-instances-groups-launch-template-overrides.html) in the *Amazon EC2 Auto Scaling User Guide*.
+ You can specify up to 20 launch templates per Auto Scaling group. The launch templates specified in the overrides and in the ``LaunchTemplate`` definition count towards this limit.
+ $ref: '#/components/schemas/LaunchTemplateSpecification'
+ WeightedCapacity:
+ description: >-
+ If you provide a list of instance types to use, you can specify the number of capacity units provided by each instance type in terms of virtual CPUs, memory, storage, throughput, or other relative performance characteristic. When a Spot or On-Demand Instance is launched, the capacity units count toward the desired capacity. Amazon EC2 Auto Scaling launches instances until the desired capacity is totally fulfilled, even if this results in an overage. For example, if there are two
+ units remaining to fulfill capacity, and Amazon EC2 Auto Scaling can only launch an instance with a ``WeightedCapacity`` of five units, the instance is launched, and the desired capacity is exceeded by three units. For more information, see [Configure instance weighting for Amazon EC2 Auto Scaling](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-mixed-instances-groups-instance-weighting.html) in the *Amazon EC2 Auto Scaling User Guide*. Value must be in the
+ range of 1-999.
+ If you specify a value for ``WeightedCapacity`` for one instance type, you must specify a value for ``WeightedCapacity`` for all of them.
+ Every Auto Scaling group has three size parameters (``DesiredCapacity``, ``MaxSize``, and ``MinSize``). Usually, you set these sizes based on a specific number of instances. However, if you configure a mixed instances policy that defines weights for the instance types, you must specify these sizes with the same units that you use for weighting instances.
+ type: string
+ InstanceRequirements:
+ description: |-
+ The instance requirements. Amazon EC2 Auto Scaling uses your specified requirements to identify instance types. Then, it uses your On-Demand and Spot allocation strategies to launch instances from these instance types.
+ You can specify up to four separate sets of instance requirements per Auto Scaling group. This is useful for provisioning instances from different Amazon Machine Images (AMIs) in the same Auto Scaling group. To do this, create the AMIs and create a new launch template for each AMI. Then, create a compatible set of instance requirements for each launch template.
+ If you specify ``InstanceRequirements``, you can't specify ``InstanceType``.
+ $ref: '#/components/schemas/InstanceRequirements'
+ InstanceType:
+ description: |-
+ The instance type, such as ``m3.xlarge``. You must specify an instance type that is supported in your requested Region and Availability Zones. For more information, see [Instance types](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html) in the *Amazon EC2 User Guide for Linux Instances*.
+ You can specify up to 40 instance types per Auto Scaling group.
+ type: string
+ CpuPerformanceFactorRequest:
+ description: ''
+ additionalProperties: false
+ type: object
+ properties:
+ References:
+ description: ''
+ $ref: '#/components/schemas/PerformanceFactorReferenceSetRequest'
+ MixedInstancesPolicy:
+ description: |-
+ Use this structure to launch multiple instance types and On-Demand Instances and Spot Instances within a single Auto Scaling group.
+ A mixed instances policy contains information that Amazon EC2 Auto Scaling can use to launch instances and help optimize your costs. For more information, see [Auto Scaling groups with multiple instance types and purchase options](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-mixed-instances-groups.html) in the *Amazon EC2 Auto Scaling User Guide*.
+ You can create a mixed instances policy for new and existing Auto Scaling groups. You must use a launch template to configure the policy. You cannot use a launch configuration.
+ There are key differences between Spot Instances and On-Demand Instances:
+ + The price for Spot Instances varies based on demand
+ + Amazon EC2 can terminate an individual Spot Instance as the availability of, or price for, Spot Instances changes
+
+ When a Spot Instance is terminated, Amazon EC2 Auto Scaling group attempts to launch a replacement instance to maintain the desired capacity for the group.
+ ``MixedInstancesPolicy`` is a property of the [AWS::AutoScaling::AutoScalingGroup](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscaling-autoscalinggroup.html) resource.
+ additionalProperties: false
+ type: object
+ properties:
+ InstancesDistribution:
+ description: The instances distribution.
+ $ref: '#/components/schemas/InstancesDistribution'
+ LaunchTemplate:
+ description: One or more launch templates and the instance types (overrides) that are used to launch EC2 instances to fulfill On-Demand and Spot capacities.
+ $ref: '#/components/schemas/LaunchTemplate'
+ required:
+ - LaunchTemplate
+ CapacityReservationIds:
+ uniqueItems: true
+ x-insertionOrder: true
+ type: array
+ items:
+ type: string
+ CapacityReservationResourceGroupArns:
+ uniqueItems: true
+ x-insertionOrder: true
+ type: array
+ items:
+ type: string
TagProperty:
description: |-
A structure that specifies a tag for the ``Tags`` property of [AWS::AutoScaling::AutoScalingGroup](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscaling-autoscalinggroup.html) resource.
@@ -495,55 +726,20 @@ components:
Max:
description: The maximum value.
type: integer
- LifecycleHookSpecification:
- description: |-
- ``LifecycleHookSpecification`` specifies a lifecycle hook for the ``LifecycleHookSpecificationList`` property of the [AWS::AutoScaling::AutoScalingGroup](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscaling-autoscalinggroup.html) resource. A lifecycle hook specifies actions to perform when Amazon EC2 Auto Scaling launches or terminates instances.
- For more information, see [Amazon EC2 Auto Scaling lifecycle hooks](https://docs.aws.amazon.com/autoscaling/ec2/userguide/lifecycle-hooks.html) in the *Amazon EC2 Auto Scaling User Guide*. You can find a sample template snippet in the [Examples](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-as-lifecyclehook.html#aws-resource-as-lifecyclehook--examples) section of the ``AWS::AutoScaling::LifecycleHook`` resource.
+ AvailabilityZoneDistribution:
+ description: '``AvailabilityZoneDistribution`` is a property of the [AWS::AutoScaling::AutoScalingGroup](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscaling-autoscalinggroup.html) resource.'
additionalProperties: false
type: object
properties:
- LifecycleHookName:
- description: The name of the lifecycle hook.
- type: string
- LifecycleTransition:
+ CapacityDistributionStrategy:
description: |-
- The lifecycle transition. For Auto Scaling groups, there are two major lifecycle transitions.
- + To create a lifecycle hook for scale-out events, specify ``autoscaling:EC2_INSTANCE_LAUNCHING``.
- + To create a lifecycle hook for scale-in events, specify ``autoscaling:EC2_INSTANCE_TERMINATING``.
+ If launches fail in an Availability Zone, the following strategies are available. The default is ``balanced-best-effort``.
+ + ``balanced-only`` - If launches fail in an Availability Zone, Auto Scaling will continue to attempt to launch in the unhealthy zone to preserve a balanced distribution.
+ + ``balanced-best-effort`` - If launches fail in an Availability Zone, Auto Scaling will attempt to launch in another healthy Availability Zone instead.
type: string
- HeartbeatTimeout:
- description: The maximum time, in seconds, that can elapse before the lifecycle hook times out. The range is from ``30`` to ``7200`` seconds. The default value is ``3600`` seconds (1 hour).
- type: integer
- NotificationMetadata:
- description: Additional information that you want to include any time Amazon EC2 Auto Scaling sends a message to the notification target.
- type: string
- DefaultResult:
- description: |-
- The action the Auto Scaling group takes when the lifecycle hook timeout elapses or if an unexpected failure occurs. The default value is ``ABANDON``.
- Valid values: ``CONTINUE`` | ``ABANDON``
- type: string
- NotificationTargetARN:
- description: The Amazon Resource Name (ARN) of the notification target that Amazon EC2 Auto Scaling sends notifications to when an instance is in a wait state for the lifecycle hook. You can specify an Amazon SNS topic or an Amazon SQS queue.
- type: string
- RoleARN:
- description: |-
- The ARN of the IAM role that allows the Auto Scaling group to publish to the specified notification target. For information about creating this role, see [Prepare to add a lifecycle hook to your Auto Scaling group](https://docs.aws.amazon.com/autoscaling/ec2/userguide/prepare-for-lifecycle-notifications.html) in the *Amazon EC2 Auto Scaling User Guide*.
- Valid only if the notification target is an Amazon SNS topic or an Amazon SQS queue.
- type: string
- required:
- - LifecycleHookName
- - LifecycleTransition
- MemoryGiBPerVCpuRequest:
- description: '``MemoryGiBPerVCpuRequest`` is a property of the ``InstanceRequirements`` property of the [AWS::AutoScaling::AutoScalingGroup LaunchTemplateOverrides](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-launchtemplateoverrides.html) property type that describes the minimum and maximum amount of memory per vCPU for an instance type, in GiB.'
- additionalProperties: false
- type: object
- properties:
- Min:
- description: The memory minimum in GiB.
- type: number
- Max:
- description: The memory maximum in GiB.
- type: number
+ enum:
+ - balanced-best-effort
+ - balanced-only
NotificationConfiguration:
description: |-
A structure that specifies an Amazon SNS notification configuration for the ``NotificationConfigurations`` property of the [AWS::AutoScaling::AutoScalingGroup](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscaling-autoscalinggroup.html) resource.
@@ -617,17 +813,6 @@ components:
type: string
required:
- Granularity
- TotalLocalStorageGBRequest:
- description: '``TotalLocalStorageGBRequest`` is a property of the ``InstanceRequirements`` property of the [AWS::AutoScaling::AutoScalingGroup LaunchTemplateOverrides](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-launchtemplateoverrides.html) property type that describes the minimum and maximum total local storage size for an instance type, in GB.'
- additionalProperties: false
- type: object
- properties:
- Min:
- description: The storage minimum in GB.
- type: number
- Max:
- description: The storage maximum in GB.
- type: number
MemoryMiBRequest:
description: '``MemoryMiBRequest`` is a property of the ``InstanceRequirements`` property of the [AWS::AutoScaling::AutoScalingGroup LaunchTemplateOverrides](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-launchtemplateoverrides.html) property type that describes the minimum and maximum instance memory size for an instance type, in MiB.'
additionalProperties: false
@@ -647,120 +832,32 @@ components:
type: object
properties:
MaxHealthyPercentage:
- description: |-
- 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. To clear a previously set value, specify a value of ``-1``.
- 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.
- type: integer
- MinHealthyPercentage:
- description: 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. To clear a previously set value, specify a value of ``-1``.
- type: integer
- x-dependencies:
- MaxHealthyPercentage:
- - MinHealthyPercentage
- MinHealthyPercentage:
- - MaxHealthyPercentage
- NetworkBandwidthGbpsRequest:
- description: |-
- ``NetworkBandwidthGbpsRequest`` is a property of the ``InstanceRequirements`` property of the [AWS::AutoScaling::AutoScalingGroup LaunchTemplateOverrides](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-launchtemplateoverrides.html) property type that describes the minimum and maximum network bandwidth for an instance type, in Gbps.
- Setting the minimum bandwidth does not guarantee that your instance will achieve the minimum bandwidth. Amazon EC2 will identify instance types that support the specified minimum bandwidth, but the actual bandwidth of your instance might go below the specified minimum at times. For more information, see [Available instance bandwidth](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-network-bandwidth.html#available-instance-bandwidth) in the *Amazon EC2 User Guide for Linux Instances*.
- additionalProperties: false
- type: object
- properties:
- Min:
- description: The minimum amount of network bandwidth, in gigabits per second (Gbps).
- type: number
- Max:
- description: The maximum amount of network bandwidth, in gigabits per second (Gbps).
- type: number
- BaselineEbsBandwidthMbpsRequest:
- description: '``BaselineEbsBandwidthMbpsRequest`` is a property of the ``InstanceRequirements`` property of the [AWS::AutoScaling::AutoScalingGroup LaunchTemplateOverrides](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-launchtemplateoverrides.html) property type that describes the minimum and maximum baseline bandwidth performance for an instance type, in Mbps.'
- additionalProperties: false
- type: object
- properties:
- Min:
- description: The minimum value in Mbps.
- type: integer
- Max:
- description: The maximum value in Mbps.
- type: integer
- NetworkInterfaceCountRequest:
- description: '``NetworkInterfaceCountRequest`` is a property of the ``InstanceRequirements`` property of the [AWS::AutoScaling::AutoScalingGroup LaunchTemplateOverrides](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-launchtemplateoverrides.html) property type that describes the minimum and maximum number of network interfaces for an instance type.'
- additionalProperties: false
- type: object
- properties:
- Min:
- description: The minimum number of network interfaces.
- type: integer
- Max:
- description: The maximum number of network interfaces.
- type: integer
- VCpuCountRequest:
- description: '``VCpuCountRequest`` is a property of the ``InstanceRequirements`` property of the [AWS::AutoScaling::AutoScalingGroup LaunchTemplateOverrides](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-launchtemplateoverrides.html) property type that describes the minimum and maximum number of vCPUs for an instance type.'
- additionalProperties: false
- type: object
- properties:
- Min:
- description: The minimum number of vCPUs.
- type: integer
- Max:
- description: The maximum number of vCPUs.
- type: integer
- LaunchTemplate:
- description: |-
- Use this structure to specify the launch templates and instance types (overrides) for a mixed instances policy.
- ``LaunchTemplate`` is a property of the [AWS::AutoScaling::AutoScalingGroup MixedInstancesPolicy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-mixedinstancespolicy.html) property type.
- additionalProperties: false
- type: object
- properties:
- LaunchTemplateSpecification:
- description: The launch template.
- $ref: '#/components/schemas/LaunchTemplateSpecification'
- Overrides:
- uniqueItems: false
- description: Any properties that you specify override the same properties in the launch template.
- x-insertionOrder: true
- type: array
- items:
- $ref: '#/components/schemas/LaunchTemplateOverrides'
- required:
- - LaunchTemplateSpecification
- LaunchTemplateOverrides:
- description: |-
- Use this structure to let Amazon EC2 Auto Scaling do the following when the Auto Scaling group has a mixed instances policy:
- + Override the instance type that is specified in the launch template.
- + Use multiple instance types.
-
- Specify the instance types that you want, or define your instance requirements instead and let Amazon EC2 Auto Scaling provision the available instance types that meet your requirements. This can provide Amazon EC2 Auto Scaling with a larger selection of instance types to choose from when fulfilling Spot and On-Demand capacities. You can view which instance types are matched before you apply the instance requirements to your Auto Scaling group.
- After you define your instance requirements, you don't have to keep updating these settings to get new EC2 instance types automatically. Amazon EC2 Auto Scaling uses the instance requirements of the Auto Scaling group to determine whether a new EC2 instance type can be used.
- ``LaunchTemplateOverrides`` is a property of the [AWS::AutoScaling::AutoScalingGroup LaunchTemplate](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-launchtemplate.html) property type.
+ description: |-
+ 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. To clear a previously set value, specify a value of ``-1``.
+ 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.
+ type: integer
+ MinHealthyPercentage:
+ description: 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. To clear a previously set value, specify a value of ``-1``.
+ type: integer
+ x-dependencies:
+ MaxHealthyPercentage:
+ - MinHealthyPercentage
+ MinHealthyPercentage:
+ - MaxHealthyPercentage
+ BaselinePerformanceFactorsRequest:
+ description: ''
additionalProperties: false
type: object
properties:
- LaunchTemplateSpecification:
- description: >-
- Provides a launch template for the specified instance type or set of instance requirements. For example, some instance types might require a launch template with a different AMI. If not provided, Amazon EC2 Auto Scaling uses the launch template that's specified in the ``LaunchTemplate`` definition. For more information, see [Specifying a different launch template for an instance
- type](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-mixed-instances-groups-launch-template-overrides.html) in the *Amazon EC2 Auto Scaling User Guide*.
- You can specify up to 20 launch templates per Auto Scaling group. The launch templates specified in the overrides and in the ``LaunchTemplate`` definition count towards this limit.
- $ref: '#/components/schemas/LaunchTemplateSpecification'
- WeightedCapacity:
- description: >-
- If you provide a list of instance types to use, you can specify the number of capacity units provided by each instance type in terms of virtual CPUs, memory, storage, throughput, or other relative performance characteristic. When a Spot or On-Demand Instance is launched, the capacity units count toward the desired capacity. Amazon EC2 Auto Scaling launches instances until the desired capacity is totally fulfilled, even if this results in an overage. For example, if there are two
- units remaining to fulfill capacity, and Amazon EC2 Auto Scaling can only launch an instance with a ``WeightedCapacity`` of five units, the instance is launched, and the desired capacity is exceeded by three units. For more information, see [Configure instance weighting for Amazon EC2 Auto Scaling](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-mixed-instances-groups-instance-weighting.html) in the *Amazon EC2 Auto Scaling User Guide*. Value must be in the
- range of 1-999.
- If you specify a value for ``WeightedCapacity`` for one instance type, you must specify a value for ``WeightedCapacity`` for all of them.
- Every Auto Scaling group has three size parameters (``DesiredCapacity``, ``MaxSize``, and ``MinSize``). Usually, you set these sizes based on a specific number of instances. However, if you configure a mixed instances policy that defines weights for the instance types, you must specify these sizes with the same units that you use for weighting instances.
- type: string
- InstanceRequirements:
- description: |-
- The instance requirements. Amazon EC2 Auto Scaling uses your specified requirements to identify instance types. Then, it uses your On-Demand and Spot allocation strategies to launch instances from these instance types.
- You can specify up to four separate sets of instance requirements per Auto Scaling group. This is useful for provisioning instances from different Amazon Machine Images (AMIs) in the same Auto Scaling group. To do this, create the AMIs and create a new launch template for each AMI. Then, create a compatible set of instance requirements for each launch template.
- If you specify ``InstanceRequirements``, you can't specify ``InstanceType``.
- $ref: '#/components/schemas/InstanceRequirements'
- InstanceType:
- description: |-
- The instance type, such as ``m3.xlarge``. You must specify an instance type that is supported in your requested Region and Availability Zones. For more information, see [Instance types](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html) in the *Amazon EC2 User Guide for Linux Instances*.
- You can specify up to 40 instance types per Auto Scaling group.
- type: string
+ Cpu:
+ description: ''
+ $ref: '#/components/schemas/CpuPerformanceFactorRequest'
+ PerformanceFactorReferenceSetRequest:
+ uniqueItems: true
+ x-insertionOrder: true
+ type: array
+ items:
+ $ref: '#/components/schemas/PerformanceFactorReferenceRequest'
AcceleratorTotalMemoryMiBRequest:
description: '``AcceleratorTotalMemoryMiBRequest`` is a property of the ``InstanceRequirements`` property of the [AWS::AutoScaling::AutoScalingGroup LaunchTemplateOverrides](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-launchtemplateoverrides.html) property type that describes the minimum and maximum total memory size for the accelerators for an instance type, in MiB.'
additionalProperties: false
@@ -772,28 +869,36 @@ components:
Max:
description: The memory maximum in MiB.
type: integer
- MixedInstancesPolicy:
- description: |-
- Use this structure to launch multiple instance types and On-Demand Instances and Spot Instances within a single Auto Scaling group.
- A mixed instances policy contains information that Amazon EC2 Auto Scaling can use to launch instances and help optimize your costs. For more information, see [Auto Scaling groups with multiple instance types and purchase options](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-mixed-instances-groups.html) in the *Amazon EC2 Auto Scaling User Guide*.
- You can create a mixed instances policy for new and existing Auto Scaling groups. You must use a launch template to configure the policy. You cannot use a launch configuration.
- There are key differences between Spot Instances and On-Demand Instances:
- + The price for Spot Instances varies based on demand
- + Amazon EC2 can terminate an individual Spot Instance as the availability of, or price for, Spot Instances changes
-
- When a Spot Instance is terminated, Amazon EC2 Auto Scaling group attempts to launch a replacement instance to maintain the desired capacity for the group.
- ``MixedInstancesPolicy`` is a property of the [AWS::AutoScaling::AutoScalingGroup](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscaling-autoscalinggroup.html) resource.
+ TrafficSourceIdentifier:
+ description: Identifying information for a traffic source.
additionalProperties: false
type: object
properties:
- InstancesDistribution:
- description: The instances distribution.
- $ref: '#/components/schemas/InstancesDistribution'
- LaunchTemplate:
- description: One or more launch templates and the instance types (overrides) that are used to launch EC2 instances to fulfill On-Demand and Spot capacities.
- $ref: '#/components/schemas/LaunchTemplate'
+ Type:
+ description: |-
+ Provides additional context for the value of ``Identifier``.
+ The following lists the valid values:
+ + ``elb`` if ``Identifier`` is the name of a Classic Load Balancer.
+ + ``elbv2`` if ``Identifier`` is the ARN of an Application Load Balancer, Gateway Load Balancer, or Network Load Balancer target group.
+ + ``vpc-lattice`` if ``Identifier`` is the ARN of a VPC Lattice target group.
+
+ Required if the identifier is the name of a Classic Load Balancer.
+ type: string
+ Identifier:
+ description: |-
+ Identifies the traffic source.
+ For Application Load Balancers, Gateway Load Balancers, Network Load Balancers, and VPC Lattice, this will be the Amazon Resource Name (ARN) for a target group in this account and Region. For Classic Load Balancers, this will be the name of the Classic Load Balancer in this account and Region.
+ For example:
+ + Application Load Balancer ARN: ``arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-targets/1234567890123456``
+ + Classic Load Balancer name: ``my-classic-load-balancer``
+ + VPC Lattice ARN: ``arn:aws:vpc-lattice:us-west-2:123456789012:targetgroup/tg-1234567890123456``
+
+ To get the ARN of a target group for a Application Load Balancer, Gateway Load Balancer, or Network Load Balancer, or the name of a Classic Load Balancer, use the Elastic Load Balancing [DescribeTargetGroups](https://docs.aws.amazon.com/elasticloadbalancing/latest/APIReference/API_DescribeTargetGroups.html) and [DescribeLoadBalancers](https://docs.aws.amazon.com/elasticloadbalancing/latest/APIReference/API_DescribeLoadBalancers.html) API operations.
+ To get the ARN of a target group for VPC Lattice, use the VPC Lattice [GetTargetGroup](https://docs.aws.amazon.com/vpc-lattice/latest/APIReference/API_GetTargetGroup.html) API operation.
+ type: string
required:
- - LaunchTemplate
+ - Identifier
+ - Type
InstanceRequirements:
description: |-
The attributes for the instance types for a mixed instances policy. Amazon EC2 Auto Scaling uses your specified requirements to identify instance types. Then, it uses your On-Demand and Spot allocation strategies to launch instances from these instance types.
@@ -809,18 +914,6 @@ components:
additionalProperties: false
type: object
properties:
- LocalStorageTypes:
- uniqueItems: true
- description: |-
- Indicates the type of local storage that is required.
- + For instance types with hard disk drive (HDD) storage, specify ``hdd``.
- + For instance types with solid state drive (SSD) storage, specify ``ssd``.
-
- Default: Any local storage type
- x-insertionOrder: false
- type: array
- items:
- type: string
InstanceGenerations:
uniqueItems: true
description: |-
@@ -833,11 +926,6 @@ components:
type: array
items:
type: string
- NetworkInterfaceCount:
- description: |-
- The minimum and maximum number of network interfaces for an instance type.
- Default: No minimum or maximum limits
- $ref: '#/components/schemas/NetworkInterfaceCountRequest'
AcceleratorTypes:
uniqueItems: true
description: |-
@@ -870,32 +958,9 @@ components:
type: array
items:
type: string
- ExcludedInstanceTypes:
- uniqueItems: true
- description: |-
- The instance types to exclude. You can use strings with one or more wild cards, represented by an asterisk (``*``), to exclude an instance family, type, size, or generation. The following are examples: ``m5.8xlarge``, ``c5*.*``, ``m5a.*``, ``r*``, ``*3*``.
- For example, if you specify ``c5*``, you are excluding the entire C5 instance family, which includes all C5a and C5n instance types. If you specify ``m5a.*``, Amazon EC2 Auto Scaling will exclude all the M5a instance types, but not the M5n instance types.
- If you specify ``ExcludedInstanceTypes``, you can't specify ``AllowedInstanceTypes``.
- Default: No excluded instance types
- x-insertionOrder: true
- type: array
- items:
- type: string
VCpuCount:
description: The minimum and maximum number of vCPUs for an instance type.
$ref: '#/components/schemas/VCpuCountRequest'
- AllowedInstanceTypes:
- uniqueItems: true
- description: |-
- The instance types to apply your specified attributes against. All other instance types are ignored, even if they match your specified attributes.
- You can use strings with one or more wild cards, represented by an asterisk (``*``), to allow an instance type, size, or generation. The following are examples: ``m5.8xlarge``, ``c5*.*``, ``m5a.*``, ``r*``, ``*3*``.
- For example, if you specify ``c5*``, Amazon EC2 Auto Scaling will allow the entire C5 instance family, which includes all C5a and C5n instance types. If you specify ``m5a.*``, Amazon EC2 Auto Scaling will allow all the M5a instance types, but not the M5n instance types.
- If you specify ``AllowedInstanceTypes``, you can't specify ``ExcludedInstanceTypes``.
- Default: All instance types
- x-insertionOrder: true
- type: array
- items:
- type: string
LocalStorage:
description: |-
Indicates whether instance types with instance store volumes are included, excluded, or required. For more information, see [Amazon EC2 instance store](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/InstanceStorage.html) in the *Amazon EC2 User Guide for Linux Instances*.
@@ -915,17 +980,6 @@ components:
type: array
items:
type: string
- AcceleratorCount:
- description: |-
- The minimum and maximum number of accelerators (GPUs, FPGAs, or AWS Inferentia chips) for an instance type.
- To exclude accelerator-enabled instance types, set ``Max`` to ``0``.
- Default: No minimum or maximum limits
- $ref: '#/components/schemas/AcceleratorCountRequest'
- NetworkBandwidthGbps:
- description: |-
- The minimum and maximum amount of network bandwidth, in gigabits per second (Gbps).
- Default: No minimum or maximum limits
- $ref: '#/components/schemas/NetworkBandwidthGbpsRequest'
BareMetal:
description: |-
Indicates whether bare metal instance types are included, excluded, or required.
@@ -944,6 +998,72 @@ components:
If you set ``DesiredCapacityType`` to ``vcpu`` or ``memory-mib``, the price protection threshold is based on the per-vCPU or per-memory price instead of the per instance price.
Only one of ``SpotMaxPricePercentageOverLowestPrice`` or ``MaxSpotPriceAsPercentageOfOptimalOnDemandPrice`` can be specified. If you don't specify either, Amazon EC2 Auto Scaling will automatically apply optimal price protection to consistently select from a wide range of instance types. To indicate no price protection threshold for Spot Instances, meaning you want to consider all instance types that match your attributes, include one of these parameters and specify a high value, such as ``999999``.
type: integer
+ OnDemandMaxPricePercentageOverLowestPrice:
+ description: >-
+ [Price protection] The price protection threshold for On-Demand Instances, as a percentage higher than an identified On-Demand price. The identified On-Demand price is the price of the lowest priced current generation C, M, or R instance type with your specified attributes. If no current generation C, M, or R instance type matches your attributes, then the identified price is from either the lowest priced current generation instance types or, failing that, the lowest priced previous
+ generation instance types that match your attributes. When Amazon EC2 Auto Scaling selects instance types with your attributes, we will exclude instance types whose price exceeds your specified threshold.
+ The parameter accepts an integer, which Amazon EC2 Auto Scaling interprets as a percentage.
+ To turn off price protection, specify a high value, such as ``999999``.
+ If you set ``DesiredCapacityType`` to ``vcpu`` or ``memory-mib``, the price protection threshold is applied based on the per-vCPU or per-memory price instead of the per instance price.
+ Default: ``20``
+ type: integer
+ MemoryMiB:
+ description: The minimum and maximum instance memory size for an instance type, in MiB.
+ $ref: '#/components/schemas/MemoryMiBRequest'
+ LocalStorageTypes:
+ uniqueItems: true
+ description: |-
+ Indicates the type of local storage that is required.
+ + For instance types with hard disk drive (HDD) storage, specify ``hdd``.
+ + For instance types with solid state drive (SSD) storage, specify ``ssd``.
+
+ Default: Any local storage type
+ x-insertionOrder: false
+ type: array
+ items:
+ type: string
+ NetworkInterfaceCount:
+ description: |-
+ The minimum and maximum number of network interfaces for an instance type.
+ Default: No minimum or maximum limits
+ $ref: '#/components/schemas/NetworkInterfaceCountRequest'
+ ExcludedInstanceTypes:
+ uniqueItems: true
+ description: |-
+ The instance types to exclude. You can use strings with one or more wild cards, represented by an asterisk (``*``), to exclude an instance family, type, size, or generation. The following are examples: ``m5.8xlarge``, ``c5*.*``, ``m5a.*``, ``r*``, ``*3*``.
+ For example, if you specify ``c5*``, you are excluding the entire C5 instance family, which includes all C5a and C5n instance types. If you specify ``m5a.*``, Amazon EC2 Auto Scaling will exclude all the M5a instance types, but not the M5n instance types.
+ If you specify ``ExcludedInstanceTypes``, you can't specify ``AllowedInstanceTypes``.
+ Default: No excluded instance types
+ x-insertionOrder: true
+ type: array
+ items:
+ type: string
+ AllowedInstanceTypes:
+ uniqueItems: true
+ description: |-
+ The instance types to apply your specified attributes against. All other instance types are ignored, even if they match your specified attributes.
+ You can use strings with one or more wild cards, represented by an asterisk (``*``), to allow an instance type, size, or generation. The following are examples: ``m5.8xlarge``, ``c5*.*``, ``m5a.*``, ``r*``, ``*3*``.
+ For example, if you specify ``c5*``, Amazon EC2 Auto Scaling will allow the entire C5 instance family, which includes all C5a and C5n instance types. If you specify ``m5a.*``, Amazon EC2 Auto Scaling will allow all the M5a instance types, but not the M5n instance types.
+ If you specify ``AllowedInstanceTypes``, you can't specify ``ExcludedInstanceTypes``.
+ Default: All instance types
+ x-insertionOrder: true
+ type: array
+ items:
+ type: string
+ AcceleratorCount:
+ description: |-
+ The minimum and maximum number of accelerators (GPUs, FPGAs, or AWS Inferentia chips) for an instance type.
+ To exclude accelerator-enabled instance types, set ``Max`` to ``0``.
+ Default: No minimum or maximum limits
+ $ref: '#/components/schemas/AcceleratorCountRequest'
+ NetworkBandwidthGbps:
+ description: |-
+ The minimum and maximum amount of network bandwidth, in gigabits per second (Gbps).
+ Default: No minimum or maximum limits
+ $ref: '#/components/schemas/NetworkBandwidthGbpsRequest'
+ BaselinePerformanceFactors:
+ description: ''
+ $ref: '#/components/schemas/BaselinePerformanceFactorsRequest'
BaselineEbsBandwidthMbps:
description: |-
The minimum and maximum baseline bandwidth performance for an instance type, in Mbps. For more information, see [Amazon EBS–optimized instances](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-optimized.html) in the *Amazon EC2 User Guide for Linux Instances*.
@@ -979,23 +1099,11 @@ components:
The minimum and maximum total memory size for the accelerators on an instance type, in MiB.
Default: No minimum or maximum limits
$ref: '#/components/schemas/AcceleratorTotalMemoryMiBRequest'
- OnDemandMaxPricePercentageOverLowestPrice:
- description: >-
- [Price protection] The price protection threshold for On-Demand Instances, as a percentage higher than an identified On-Demand price. The identified On-Demand price is the price of the lowest priced current generation C, M, or R instance type with your specified attributes. If no current generation C, M, or R instance type matches your attributes, then the identified price is from either the lowest priced current generation instance types or, failing that, the lowest priced previous
- generation instance types that match your attributes. When Amazon EC2 Auto Scaling selects instance types with your attributes, we will exclude instance types whose price exceeds your specified threshold.
- The parameter accepts an integer, which Amazon EC2 Auto Scaling interprets as a percentage.
- To turn off price protection, specify a high value, such as ``999999``.
- If you set ``DesiredCapacityType`` to ``vcpu`` or ``memory-mib``, the price protection threshold is applied based on the per-vCPU or per-memory price instead of the per instance price.
- Default: ``20``
- type: integer
BurstablePerformance:
description: |-
Indicates whether burstable performance instance types are included, excluded, or required. For more information, see [Burstable performance instances](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/burstable-performance-instances.html) in the *Amazon EC2 User Guide for Linux Instances*.
Default: ``excluded``
type: string
- MemoryMiB:
- description: The minimum and maximum instance memory size for an instance type, in MiB.
- $ref: '#/components/schemas/MemoryMiBRequest'
TotalLocalStorageGB:
description: |-
The minimum and maximum total local storage size for an instance type, in GB.
@@ -1004,6 +1112,26 @@ components:
required:
- MemoryMiB
- VCpuCount
+ CapacityReservationTarget:
+ description: ''
+ additionalProperties: false
+ type: object
+ properties:
+ CapacityReservationIds:
+ $ref: '#/components/schemas/CapacityReservationIds'
+ CapacityReservationResourceGroupArns:
+ $ref: '#/components/schemas/CapacityReservationResourceGroupArns'
+ CapacityReservationSpecification:
+ description: ''
+ additionalProperties: false
+ type: object
+ properties:
+ CapacityReservationPreference:
+ type: string
+ CapacityReservationTarget:
+ $ref: '#/components/schemas/CapacityReservationTarget'
+ required:
+ - CapacityReservationPreference
AutoScalingGroup:
type: object
properties:
@@ -1029,6 +1157,9 @@ components:
ServiceLinkedRoleARN:
description: The Amazon Resource Name (ARN) of the service-linked role that the Auto Scaling group uses to call other AWS service on your behalf. By default, Amazon EC2 Auto Scaling uses a service-linked role named ``AWSServiceRoleForAutoScaling``, which it creates if it does not exist. For more information, see [Service-linked roles](https://docs.aws.amazon.com/autoscaling/ec2/userguide/autoscaling-service-linked-role.html) in the *Amazon EC2 Auto Scaling User Guide*.
type: string
+ AvailabilityZoneImpairmentPolicy:
+ description: The Availability Zone impairment policy.
+ $ref: '#/components/schemas/AvailabilityZoneImpairmentPolicy'
TargetGroupARNs:
uniqueItems: false
description: >-
@@ -1071,6 +1202,9 @@ components:
To manage various warm-up settings at the group level, we recommend that you set the default instance warmup, *even if it is set to 0 seconds*. To remove a value that you previously set, include the property but specify ``-1`` for the value. However, we strongly recommend keeping the default instance warmup enabled by specifying a value of ``0`` or other nominal value.
Default: None
type: integer
+ SkipZonalShiftValidation:
+ description: ''
+ type: boolean
NewInstancesProtectedFromScaleIn:
description: Indicates whether newly launched instances are protected from termination by Amazon EC2 Auto Scaling when scaling in. For more information about preventing instances from terminating on scale in, see [Use instance scale-in protection](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-instance-protection.html) in the *Amazon EC2 Auto Scaling User Guide*.
type: boolean
@@ -1127,6 +1261,9 @@ components:
NotificationConfiguration:
description: ''
$ref: '#/components/schemas/NotificationConfiguration'
+ AvailabilityZoneDistribution:
+ description: The instance capacity distribution across Availability Zones.
+ $ref: '#/components/schemas/AvailabilityZoneDistribution'
MetricsCollection:
uniqueItems: false
description: Enables the monitoring of group metrics of an Auto Scaling group. By default, these metrics are disabled.
@@ -1162,6 +1299,13 @@ components:
The name can contain any ASCII character 33 to 126 including most punctuation characters, digits, and upper and lowercased letters.
You cannot use a colon (:) in the name.
type: string
+ TrafficSources:
+ uniqueItems: true
+ description: The traffic sources associated with this Auto Scaling group.
+ x-insertionOrder: false
+ type: array
+ items:
+ $ref: '#/components/schemas/TrafficSourceIdentifier'
DesiredCapacityType:
description: |-
The unit of measurement for the value specified for desired capacity. Amazon EC2 Auto Scaling supports ``DesiredCapacityType`` for attribute-based instance type selection only. 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*.
@@ -1173,10 +1317,13 @@ components:
The name of the placement group into which to launch your instances. For more information, see [Placement groups](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/placement-groups.html) in the *Amazon EC2 User Guide for Linux Instances*.
A *cluster* placement group is a logical grouping of instances within a single Availability Zone. You cannot specify multiple Availability Zones and a cluster placement group.
type: string
+ CapacityReservationSpecification:
+ description: ''
+ $ref: '#/components/schemas/CapacityReservationSpecification'
HealthCheckType:
description: |-
A comma-separated value string of one or more health check types.
- The valid values are ``EC2``, ``ELB``, and ``VPC_LATTICE``. ``EC2`` is the default health check and cannot be disabled. For more information, see [Health checks for instances in an Auto Scaling group](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-health-checks.html) in the *Amazon EC2 Auto Scaling User Guide*.
+ The valid values are ``EC2``, ``EBS``, ``ELB``, and ``VPC_LATTICE``. ``EC2`` is the default health check and cannot be disabled. For more information, see [Health checks for instances in an Auto Scaling group](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-health-checks.html) in the *Amazon EC2 Auto Scaling User Guide*.
Only specify ``EC2`` if you must clear a value that was previously set.
type: string
MaxInstanceLifetime:
@@ -1200,10 +1347,10 @@ components:
x-conditional-create-only-properties:
- LaunchConfigurationName
- VPCZoneIdentifier
- - PlacementGroup
- LaunchTemplate
- MixedInstancesPolicy
x-write-only-properties:
+ - SkipZonalShiftValidation
- InstanceId
x-required-properties:
- MinSize
@@ -1236,6 +1383,10 @@ components:
- managed-fleets:CreateAutoScalingGroup
- managed-fleets:UpdateAutoScalingGroup
- ssm:Get*
+ - vpc-lattice:DeregisterTargets
+ - vpc-lattice:GetTargetGroup
+ - vpc-lattice:ListTargets
+ - vpc-lattice:RegisterTargets
update:
- autoscaling:UpdateAutoScalingGroup
- autoscaling:CreateOrUpdateTags
@@ -1265,6 +1416,10 @@ components:
- managed-fleets:DeregisterAutoScalingGroup
- managed-fleets:UpdateAutoScalingGroup
- ssm:Get*
+ - vpc-lattice:DeregisterTargets
+ - vpc-lattice:GetTargetGroup
+ - vpc-lattice:ListTargets
+ - vpc-lattice:RegisterTargets
list:
- autoscaling:Describe*
delete:
@@ -1575,16 +1730,21 @@ components:
uniqueItems: true
items:
$ref: '#/components/schemas/MetricDimension'
+ Metrics:
+ type: array
+ x-insertionOrder: false
+ uniqueItems: true
+ items:
+ $ref: '#/components/schemas/TargetTrackingMetricDataQuery'
Statistic:
type: string
Unit:
type: string
Namespace:
type: string
- required:
- - MetricName
- - Statistic
- - Namespace
+ Period:
+ type: integer
+ required: []
TargetTrackingConfiguration:
type: object
additionalProperties: false
@@ -1716,6 +1876,21 @@ components:
required:
- MetricName
- Namespace
+ TargetTrackingMetricStat:
+ type: object
+ additionalProperties: false
+ properties:
+ Metric:
+ $ref: '#/components/schemas/Metric'
+ Stat:
+ type: string
+ Unit:
+ type: string
+ Period:
+ type: integer
+ required:
+ - Stat
+ - Metric
MetricStat:
type: object
additionalProperties: false
@@ -1729,6 +1904,24 @@ components:
required:
- Stat
- Metric
+ TargetTrackingMetricDataQuery:
+ type: object
+ additionalProperties: false
+ properties:
+ Label:
+ type: string
+ MetricStat:
+ $ref: '#/components/schemas/TargetTrackingMetricStat'
+ Id:
+ type: string
+ ReturnData:
+ type: boolean
+ Expression:
+ type: string
+ Period:
+ type: integer
+ required:
+ - Id
MetricDataQuery:
type: object
additionalProperties: false
@@ -1914,6 +2107,8 @@ components:
- AutoScalingGroupName
x-required-properties:
- AutoScalingGroupName
+ x-tagging:
+ taggable: false
x-required-permissions:
create:
- autoscaling:PutWarmPool
@@ -1963,6 +2158,9 @@ components:
ServiceLinkedRoleARN:
description: The Amazon Resource Name (ARN) of the service-linked role that the Auto Scaling group uses to call other AWS service on your behalf. By default, Amazon EC2 Auto Scaling uses a service-linked role named ``AWSServiceRoleForAutoScaling``, which it creates if it does not exist. For more information, see [Service-linked roles](https://docs.aws.amazon.com/autoscaling/ec2/userguide/autoscaling-service-linked-role.html) in the *Amazon EC2 Auto Scaling User Guide*.
type: string
+ AvailabilityZoneImpairmentPolicy:
+ description: The Availability Zone impairment policy.
+ $ref: '#/components/schemas/AvailabilityZoneImpairmentPolicy'
TargetGroupARNs:
uniqueItems: false
description: >-
@@ -2005,6 +2203,9 @@ components:
To manage various warm-up settings at the group level, we recommend that you set the default instance warmup, *even if it is set to 0 seconds*. To remove a value that you previously set, include the property but specify ``-1`` for the value. However, we strongly recommend keeping the default instance warmup enabled by specifying a value of ``0`` or other nominal value.
Default: None
type: integer
+ SkipZonalShiftValidation:
+ description: ''
+ type: boolean
NewInstancesProtectedFromScaleIn:
description: Indicates whether newly launched instances are protected from termination by Amazon EC2 Auto Scaling when scaling in. For more information about preventing instances from terminating on scale in, see [Use instance scale-in protection](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-instance-protection.html) in the *Amazon EC2 Auto Scaling User Guide*.
type: boolean
@@ -2061,6 +2262,9 @@ components:
NotificationConfiguration:
description: ''
$ref: '#/components/schemas/NotificationConfiguration'
+ AvailabilityZoneDistribution:
+ description: The instance capacity distribution across Availability Zones.
+ $ref: '#/components/schemas/AvailabilityZoneDistribution'
MetricsCollection:
uniqueItems: false
description: Enables the monitoring of group metrics of an Auto Scaling group. By default, these metrics are disabled.
@@ -2096,6 +2300,13 @@ components:
The name can contain any ASCII character 33 to 126 including most punctuation characters, digits, and upper and lowercased letters.
You cannot use a colon (:) in the name.
type: string
+ TrafficSources:
+ uniqueItems: true
+ description: The traffic sources associated with this Auto Scaling group.
+ x-insertionOrder: false
+ type: array
+ items:
+ $ref: '#/components/schemas/TrafficSourceIdentifier'
DesiredCapacityType:
description: |-
The unit of measurement for the value specified for desired capacity. Amazon EC2 Auto Scaling supports ``DesiredCapacityType`` for attribute-based instance type selection only. 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*.
@@ -2107,10 +2318,13 @@ components:
The name of the placement group into which to launch your instances. For more information, see [Placement groups](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/placement-groups.html) in the *Amazon EC2 User Guide for Linux Instances*.
A *cluster* placement group is a logical grouping of instances within a single Availability Zone. You cannot specify multiple Availability Zones and a cluster placement group.
type: string
+ CapacityReservationSpecification:
+ description: ''
+ $ref: '#/components/schemas/CapacityReservationSpecification'
HealthCheckType:
description: |-
A comma-separated value string of one or more health check types.
- The valid values are ``EC2``, ``ELB``, and ``VPC_LATTICE``. ``EC2`` is the default health check and cannot be disabled. For more information, see [Health checks for instances in an Auto Scaling group](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-health-checks.html) in the *Amazon EC2 Auto Scaling User Guide*.
+ The valid values are ``EC2``, ``EBS``, ``ELB``, and ``VPC_LATTICE``. ``EC2`` is the default health check and cannot be disabled. For more information, see [Health checks for instances in an Auto Scaling group](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-health-checks.html) in the *Amazon EC2 Auto Scaling User Guide*.
Only specify ``EC2`` if you must clear a value that was previously set.
type: string
MaxInstanceLifetime:
@@ -2464,12 +2678,14 @@ components:
JSON_EXTRACT(Properties, '$.LoadBalancerNames') as load_balancer_names,
JSON_EXTRACT(Properties, '$.LaunchConfigurationName') as launch_configuration_name,
JSON_EXTRACT(Properties, '$.ServiceLinkedRoleARN') as service_linked_role_arn,
+ JSON_EXTRACT(Properties, '$.AvailabilityZoneImpairmentPolicy') as availability_zone_impairment_policy,
JSON_EXTRACT(Properties, '$.TargetGroupARNs') as target_group_arns,
JSON_EXTRACT(Properties, '$.Cooldown') as cooldown,
JSON_EXTRACT(Properties, '$.NotificationConfigurations') as notification_configurations,
JSON_EXTRACT(Properties, '$.DesiredCapacity') as desired_capacity,
JSON_EXTRACT(Properties, '$.HealthCheckGracePeriod') as health_check_grace_period,
JSON_EXTRACT(Properties, '$.DefaultInstanceWarmup') as default_instance_warmup,
+ JSON_EXTRACT(Properties, '$.SkipZonalShiftValidation') as skip_zonal_shift_validation,
JSON_EXTRACT(Properties, '$.NewInstancesProtectedFromScaleIn') as new_instances_protected_from_scale_in,
JSON_EXTRACT(Properties, '$.LaunchTemplate') as launch_template,
JSON_EXTRACT(Properties, '$.MixedInstancesPolicy') as mixed_instances_policy,
@@ -2480,14 +2696,17 @@ components:
JSON_EXTRACT(Properties, '$.InstanceId') as instance_id,
JSON_EXTRACT(Properties, '$.AvailabilityZones') as availability_zones,
JSON_EXTRACT(Properties, '$.NotificationConfiguration') as notification_configuration,
+ JSON_EXTRACT(Properties, '$.AvailabilityZoneDistribution') as availability_zone_distribution,
JSON_EXTRACT(Properties, '$.MetricsCollection') as metrics_collection,
JSON_EXTRACT(Properties, '$.InstanceMaintenancePolicy') as instance_maintenance_policy,
JSON_EXTRACT(Properties, '$.MaxSize') as max_size,
JSON_EXTRACT(Properties, '$.MinSize') as min_size,
JSON_EXTRACT(Properties, '$.TerminationPolicies') as termination_policies,
JSON_EXTRACT(Properties, '$.AutoScalingGroupName') as auto_scaling_group_name,
+ JSON_EXTRACT(Properties, '$.TrafficSources') as traffic_sources,
JSON_EXTRACT(Properties, '$.DesiredCapacityType') as desired_capacity_type,
JSON_EXTRACT(Properties, '$.PlacementGroup') as placement_group,
+ JSON_EXTRACT(Properties, '$.CapacityReservationSpecification') as capacity_reservation_specification,
JSON_EXTRACT(Properties, '$.HealthCheckType') as health_check_type,
JSON_EXTRACT(Properties, '$.MaxInstanceLifetime') as max_instance_lifetime
FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::AutoScaling::AutoScalingGroup'
@@ -2502,12 +2721,14 @@ components:
JSON_EXTRACT(detail.Properties, '$.LoadBalancerNames') as load_balancer_names,
JSON_EXTRACT(detail.Properties, '$.LaunchConfigurationName') as launch_configuration_name,
JSON_EXTRACT(detail.Properties, '$.ServiceLinkedRoleARN') as service_linked_role_arn,
+ JSON_EXTRACT(detail.Properties, '$.AvailabilityZoneImpairmentPolicy') as availability_zone_impairment_policy,
JSON_EXTRACT(detail.Properties, '$.TargetGroupARNs') as target_group_arns,
JSON_EXTRACT(detail.Properties, '$.Cooldown') as cooldown,
JSON_EXTRACT(detail.Properties, '$.NotificationConfigurations') as notification_configurations,
JSON_EXTRACT(detail.Properties, '$.DesiredCapacity') as desired_capacity,
JSON_EXTRACT(detail.Properties, '$.HealthCheckGracePeriod') as health_check_grace_period,
JSON_EXTRACT(detail.Properties, '$.DefaultInstanceWarmup') as default_instance_warmup,
+ JSON_EXTRACT(detail.Properties, '$.SkipZonalShiftValidation') as skip_zonal_shift_validation,
JSON_EXTRACT(detail.Properties, '$.NewInstancesProtectedFromScaleIn') as new_instances_protected_from_scale_in,
JSON_EXTRACT(detail.Properties, '$.LaunchTemplate') as launch_template,
JSON_EXTRACT(detail.Properties, '$.MixedInstancesPolicy') as mixed_instances_policy,
@@ -2518,14 +2739,17 @@ components:
JSON_EXTRACT(detail.Properties, '$.InstanceId') as instance_id,
JSON_EXTRACT(detail.Properties, '$.AvailabilityZones') as availability_zones,
JSON_EXTRACT(detail.Properties, '$.NotificationConfiguration') as notification_configuration,
+ JSON_EXTRACT(detail.Properties, '$.AvailabilityZoneDistribution') as availability_zone_distribution,
JSON_EXTRACT(detail.Properties, '$.MetricsCollection') as metrics_collection,
JSON_EXTRACT(detail.Properties, '$.InstanceMaintenancePolicy') as instance_maintenance_policy,
JSON_EXTRACT(detail.Properties, '$.MaxSize') as max_size,
JSON_EXTRACT(detail.Properties, '$.MinSize') as min_size,
JSON_EXTRACT(detail.Properties, '$.TerminationPolicies') as termination_policies,
JSON_EXTRACT(detail.Properties, '$.AutoScalingGroupName') as auto_scaling_group_name,
+ JSON_EXTRACT(detail.Properties, '$.TrafficSources') as traffic_sources,
JSON_EXTRACT(detail.Properties, '$.DesiredCapacityType') as desired_capacity_type,
JSON_EXTRACT(detail.Properties, '$.PlacementGroup') as placement_group,
+ JSON_EXTRACT(detail.Properties, '$.CapacityReservationSpecification') as capacity_reservation_specification,
JSON_EXTRACT(detail.Properties, '$.HealthCheckType') as health_check_type,
JSON_EXTRACT(detail.Properties, '$.MaxInstanceLifetime') as max_instance_lifetime
FROM aws.cloud_control.resources listing
@@ -2545,12 +2769,14 @@ components:
json_extract_path_text(Properties, 'LoadBalancerNames') as load_balancer_names,
json_extract_path_text(Properties, 'LaunchConfigurationName') as launch_configuration_name,
json_extract_path_text(Properties, 'ServiceLinkedRoleARN') as service_linked_role_arn,
+ json_extract_path_text(Properties, 'AvailabilityZoneImpairmentPolicy') as availability_zone_impairment_policy,
json_extract_path_text(Properties, 'TargetGroupARNs') as target_group_arns,
json_extract_path_text(Properties, 'Cooldown') as cooldown,
json_extract_path_text(Properties, 'NotificationConfigurations') as notification_configurations,
json_extract_path_text(Properties, 'DesiredCapacity') as desired_capacity,
json_extract_path_text(Properties, 'HealthCheckGracePeriod') as health_check_grace_period,
json_extract_path_text(Properties, 'DefaultInstanceWarmup') as default_instance_warmup,
+ json_extract_path_text(Properties, 'SkipZonalShiftValidation') as skip_zonal_shift_validation,
json_extract_path_text(Properties, 'NewInstancesProtectedFromScaleIn') as new_instances_protected_from_scale_in,
json_extract_path_text(Properties, 'LaunchTemplate') as launch_template,
json_extract_path_text(Properties, 'MixedInstancesPolicy') as mixed_instances_policy,
@@ -2561,14 +2787,17 @@ components:
json_extract_path_text(Properties, 'InstanceId') as instance_id,
json_extract_path_text(Properties, 'AvailabilityZones') as availability_zones,
json_extract_path_text(Properties, 'NotificationConfiguration') as notification_configuration,
+ json_extract_path_text(Properties, 'AvailabilityZoneDistribution') as availability_zone_distribution,
json_extract_path_text(Properties, 'MetricsCollection') as metrics_collection,
json_extract_path_text(Properties, 'InstanceMaintenancePolicy') as instance_maintenance_policy,
json_extract_path_text(Properties, 'MaxSize') as max_size,
json_extract_path_text(Properties, 'MinSize') as min_size,
json_extract_path_text(Properties, 'TerminationPolicies') as termination_policies,
json_extract_path_text(Properties, 'AutoScalingGroupName') as auto_scaling_group_name,
+ json_extract_path_text(Properties, 'TrafficSources') as traffic_sources,
json_extract_path_text(Properties, 'DesiredCapacityType') as desired_capacity_type,
json_extract_path_text(Properties, 'PlacementGroup') as placement_group,
+ json_extract_path_text(Properties, 'CapacityReservationSpecification') as capacity_reservation_specification,
json_extract_path_text(Properties, 'HealthCheckType') as health_check_type,
json_extract_path_text(Properties, 'MaxInstanceLifetime') as max_instance_lifetime
FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::AutoScaling::AutoScalingGroup'
@@ -2583,12 +2812,14 @@ components:
json_extract_path_text(detail.Properties, 'LoadBalancerNames') as load_balancer_names,
json_extract_path_text(detail.Properties, 'LaunchConfigurationName') as launch_configuration_name,
json_extract_path_text(detail.Properties, 'ServiceLinkedRoleARN') as service_linked_role_arn,
+ json_extract_path_text(detail.Properties, 'AvailabilityZoneImpairmentPolicy') as availability_zone_impairment_policy,
json_extract_path_text(detail.Properties, 'TargetGroupARNs') as target_group_arns,
json_extract_path_text(detail.Properties, 'Cooldown') as cooldown,
json_extract_path_text(detail.Properties, 'NotificationConfigurations') as notification_configurations,
json_extract_path_text(detail.Properties, 'DesiredCapacity') as desired_capacity,
json_extract_path_text(detail.Properties, 'HealthCheckGracePeriod') as health_check_grace_period,
json_extract_path_text(detail.Properties, 'DefaultInstanceWarmup') as default_instance_warmup,
+ json_extract_path_text(detail.Properties, 'SkipZonalShiftValidation') as skip_zonal_shift_validation,
json_extract_path_text(detail.Properties, 'NewInstancesProtectedFromScaleIn') as new_instances_protected_from_scale_in,
json_extract_path_text(detail.Properties, 'LaunchTemplate') as launch_template,
json_extract_path_text(detail.Properties, 'MixedInstancesPolicy') as mixed_instances_policy,
@@ -2599,14 +2830,17 @@ components:
json_extract_path_text(detail.Properties, 'InstanceId') as instance_id,
json_extract_path_text(detail.Properties, 'AvailabilityZones') as availability_zones,
json_extract_path_text(detail.Properties, 'NotificationConfiguration') as notification_configuration,
+ json_extract_path_text(detail.Properties, 'AvailabilityZoneDistribution') as availability_zone_distribution,
json_extract_path_text(detail.Properties, 'MetricsCollection') as metrics_collection,
json_extract_path_text(detail.Properties, 'InstanceMaintenancePolicy') as instance_maintenance_policy,
json_extract_path_text(detail.Properties, 'MaxSize') as max_size,
json_extract_path_text(detail.Properties, 'MinSize') as min_size,
json_extract_path_text(detail.Properties, 'TerminationPolicies') as termination_policies,
json_extract_path_text(detail.Properties, 'AutoScalingGroupName') as auto_scaling_group_name,
+ json_extract_path_text(detail.Properties, 'TrafficSources') as traffic_sources,
json_extract_path_text(detail.Properties, 'DesiredCapacityType') as desired_capacity_type,
json_extract_path_text(detail.Properties, 'PlacementGroup') as placement_group,
+ json_extract_path_text(detail.Properties, 'CapacityReservationSpecification') as capacity_reservation_specification,
json_extract_path_text(detail.Properties, 'HealthCheckType') as health_check_type,
json_extract_path_text(detail.Properties, 'MaxInstanceLifetime') as max_instance_lifetime
FROM aws.cloud_control.resources listing
@@ -2671,12 +2905,14 @@ components:
JSON_EXTRACT(detail.Properties, '$.LoadBalancerNames') as load_balancer_names,
JSON_EXTRACT(detail.Properties, '$.LaunchConfigurationName') as launch_configuration_name,
JSON_EXTRACT(detail.Properties, '$.ServiceLinkedRoleARN') as service_linked_role_arn,
+ JSON_EXTRACT(detail.Properties, '$.AvailabilityZoneImpairmentPolicy') as availability_zone_impairment_policy,
JSON_EXTRACT(detail.Properties, '$.TargetGroupARNs') as target_group_arns,
JSON_EXTRACT(detail.Properties, '$.Cooldown') as cooldown,
JSON_EXTRACT(detail.Properties, '$.NotificationConfigurations') as notification_configurations,
JSON_EXTRACT(detail.Properties, '$.DesiredCapacity') as desired_capacity,
JSON_EXTRACT(detail.Properties, '$.HealthCheckGracePeriod') as health_check_grace_period,
JSON_EXTRACT(detail.Properties, '$.DefaultInstanceWarmup') as default_instance_warmup,
+ JSON_EXTRACT(detail.Properties, '$.SkipZonalShiftValidation') as skip_zonal_shift_validation,
JSON_EXTRACT(detail.Properties, '$.NewInstancesProtectedFromScaleIn') as new_instances_protected_from_scale_in,
JSON_EXTRACT(detail.Properties, '$.LaunchTemplate') as launch_template,
JSON_EXTRACT(detail.Properties, '$.MixedInstancesPolicy') as mixed_instances_policy,
@@ -2686,14 +2922,17 @@ components:
JSON_EXTRACT(detail.Properties, '$.InstanceId') as instance_id,
JSON_EXTRACT(detail.Properties, '$.AvailabilityZones') as availability_zones,
JSON_EXTRACT(detail.Properties, '$.NotificationConfiguration') as notification_configuration,
+ JSON_EXTRACT(detail.Properties, '$.AvailabilityZoneDistribution') as availability_zone_distribution,
JSON_EXTRACT(detail.Properties, '$.MetricsCollection') as metrics_collection,
JSON_EXTRACT(detail.Properties, '$.InstanceMaintenancePolicy') as instance_maintenance_policy,
JSON_EXTRACT(detail.Properties, '$.MaxSize') as max_size,
JSON_EXTRACT(detail.Properties, '$.MinSize') as min_size,
JSON_EXTRACT(detail.Properties, '$.TerminationPolicies') as termination_policies,
JSON_EXTRACT(detail.Properties, '$.AutoScalingGroupName') as auto_scaling_group_name,
+ JSON_EXTRACT(detail.Properties, '$.TrafficSources') as traffic_sources,
JSON_EXTRACT(detail.Properties, '$.DesiredCapacityType') as desired_capacity_type,
JSON_EXTRACT(detail.Properties, '$.PlacementGroup') as placement_group,
+ JSON_EXTRACT(detail.Properties, '$.CapacityReservationSpecification') as capacity_reservation_specification,
JSON_EXTRACT(detail.Properties, '$.HealthCheckType') as health_check_type,
JSON_EXTRACT(detail.Properties, '$.MaxInstanceLifetime') as max_instance_lifetime
FROM aws.cloud_control.resources listing
@@ -2715,12 +2954,14 @@ components:
json_extract_path_text(detail.Properties, 'LoadBalancerNames') as load_balancer_names,
json_extract_path_text(detail.Properties, 'LaunchConfigurationName') as launch_configuration_name,
json_extract_path_text(detail.Properties, 'ServiceLinkedRoleARN') as service_linked_role_arn,
+ json_extract_path_text(detail.Properties, 'AvailabilityZoneImpairmentPolicy') as availability_zone_impairment_policy,
json_extract_path_text(detail.Properties, 'TargetGroupARNs') as target_group_arns,
json_extract_path_text(detail.Properties, 'Cooldown') as cooldown,
json_extract_path_text(detail.Properties, 'NotificationConfigurations') as notification_configurations,
json_extract_path_text(detail.Properties, 'DesiredCapacity') as desired_capacity,
json_extract_path_text(detail.Properties, 'HealthCheckGracePeriod') as health_check_grace_period,
json_extract_path_text(detail.Properties, 'DefaultInstanceWarmup') as default_instance_warmup,
+ json_extract_path_text(detail.Properties, 'SkipZonalShiftValidation') as skip_zonal_shift_validation,
json_extract_path_text(detail.Properties, 'NewInstancesProtectedFromScaleIn') as new_instances_protected_from_scale_in,
json_extract_path_text(detail.Properties, 'LaunchTemplate') as launch_template,
json_extract_path_text(detail.Properties, 'MixedInstancesPolicy') as mixed_instances_policy,
@@ -2730,14 +2971,17 @@ components:
json_extract_path_text(detail.Properties, 'InstanceId') as instance_id,
json_extract_path_text(detail.Properties, 'AvailabilityZones') as availability_zones,
json_extract_path_text(detail.Properties, 'NotificationConfiguration') as notification_configuration,
+ json_extract_path_text(detail.Properties, 'AvailabilityZoneDistribution') as availability_zone_distribution,
json_extract_path_text(detail.Properties, 'MetricsCollection') as metrics_collection,
json_extract_path_text(detail.Properties, 'InstanceMaintenancePolicy') as instance_maintenance_policy,
json_extract_path_text(detail.Properties, 'MaxSize') as max_size,
json_extract_path_text(detail.Properties, 'MinSize') as min_size,
json_extract_path_text(detail.Properties, 'TerminationPolicies') as termination_policies,
json_extract_path_text(detail.Properties, 'AutoScalingGroupName') as auto_scaling_group_name,
+ json_extract_path_text(detail.Properties, 'TrafficSources') as traffic_sources,
json_extract_path_text(detail.Properties, 'DesiredCapacityType') as desired_capacity_type,
json_extract_path_text(detail.Properties, 'PlacementGroup') as placement_group,
+ json_extract_path_text(detail.Properties, 'CapacityReservationSpecification') as capacity_reservation_specification,
json_extract_path_text(detail.Properties, 'HealthCheckType') as health_check_type,
json_extract_path_text(detail.Properties, 'MaxInstanceLifetime') as max_instance_lifetime
FROM aws.cloud_control.resources listing
diff --git a/providers/src/aws/v00.00.00000/services/b2bi.yaml b/providers/src/aws/v00.00.00000/services/b2bi.yaml
index ea6eadae..68dc7b24 100644
--- a/providers/src/aws/v00.00.00000/services/b2bi.yaml
+++ b/providers/src/aws/v00.00.00000/services/b2bi.yaml
@@ -395,6 +395,11 @@ components:
required:
- Edi
additionalProperties: false
+ CapabilityDirection:
+ type: string
+ enum:
+ - INBOUND
+ - OUTBOUND
CapabilityType:
type: string
enum:
@@ -402,6 +407,8 @@ components:
EdiConfiguration:
type: object
properties:
+ CapabilityDirection:
+ $ref: '#/components/schemas/CapabilityDirection'
Type:
$ref: '#/components/schemas/EdiType'
InputLocation:
@@ -467,57 +474,324 @@ components:
X12TransactionSet:
type: string
enum:
+ - X12_100
+ - X12_101
+ - X12_102
+ - X12_103
+ - X12_104
+ - X12_105
+ - X12_106
+ - X12_107
+ - X12_108
+ - X12_109
- X12_110
+ - X12_111
+ - X12_112
+ - X12_113
+ - X12_120
+ - X12_121
+ - X12_124
+ - X12_125
+ - X12_126
+ - X12_127
+ - X12_128
+ - X12_129
+ - X12_130
+ - X12_131
+ - X12_132
+ - X12_133
+ - X12_135
+ - X12_138
+ - X12_139
+ - X12_140
+ - X12_141
+ - X12_142
+ - X12_143
+ - X12_144
+ - X12_146
+ - X12_147
+ - X12_148
+ - X12_149
+ - X12_150
+ - X12_151
+ - X12_152
+ - X12_153
+ - X12_154
+ - X12_155
+ - X12_157
+ - X12_158
+ - X12_159
+ - X12_160
+ - X12_161
+ - X12_163
+ - X12_170
+ - X12_175
+ - X12_176
+ - X12_179
- X12_180
+ - X12_185
+ - X12_186
+ - X12_187
+ - X12_188
+ - X12_189
+ - X12_190
+ - X12_191
+ - X12_194
+ - X12_195
+ - X12_196
+ - X12_197
+ - X12_198
+ - X12_199
+ - X12_200
+ - X12_201
+ - X12_202
+ - X12_203
- X12_204
+ - X12_205
+ - X12_206
- X12_210
- X12_211
+ - X12_212
+ - X12_213
- X12_214
- X12_215
+ - X12_216
+ - X12_217
+ - X12_218
+ - X12_219
+ - X12_220
+ - X12_222
+ - X12_223
+ - X12_224
+ - X12_225
+ - X12_227
+ - X12_228
+ - X12_240
+ - X12_242
+ - X12_244
+ - X12_245
+ - X12_248
+ - X12_249
+ - X12_250
+ - X12_251
+ - X12_252
+ - X12_255
+ - X12_256
- X12_259
- X12_260
+ - X12_261
+ - X12_262
+ - X12_263
+ - X12_264
+ - X12_265
- X12_266
+ - X12_267
+ - X12_268
- X12_269
- X12_270
- X12_271
+ - X12_272
+ - X12_273
- X12_274
- X12_275
- X12_276
- X12_277
- X12_278
+ - X12_280
+ - X12_283
+ - X12_284
+ - X12_285
+ - X12_286
+ - X12_288
+ - X12_290
+ - X12_300
+ - X12_301
+ - X12_303
+ - X12_304
+ - X12_309
- X12_310
+ - X12_311
+ - X12_312
+ - X12_313
- X12_315
+ - X12_317
+ - X12_319
- X12_322
+ - X12_323
+ - X12_324
+ - X12_325
+ - X12_326
+ - X12_350
+ - X12_352
+ - X12_353
+ - X12_354
+ - X12_355
+ - X12_356
+ - X12_357
+ - X12_358
+ - X12_361
+ - X12_362
- X12_404
- X12_410
+ - X12_412
+ - X12_414
- X12_417
+ - X12_418
+ - X12_419
+ - X12_420
- X12_421
+ - X12_422
+ - X12_423
+ - X12_424
+ - X12_425
- X12_426
+ - X12_429
+ - X12_431
+ - X12_432
+ - X12_433
+ - X12_434
+ - X12_435
+ - X12_436
+ - X12_437
+ - X12_440
+ - X12_451
+ - X12_452
+ - X12_453
+ - X12_455
+ - X12_456
+ - X12_460
+ - X12_463
+ - X12_466
+ - X12_468
+ - X12_470
+ - X12_475
+ - X12_485
+ - X12_486
+ - X12_490
+ - X12_492
+ - X12_494
+ - X12_500
+ - X12_501
+ - X12_503
+ - X12_504
+ - X12_511
+ - X12_517
+ - X12_521
+ - X12_527
+ - X12_536
+ - X12_540
+ - X12_561
+ - X12_567
+ - X12_568
+ - X12_601
+ - X12_602
+ - X12_620
+ - X12_625
+ - X12_650
+ - X12_715
+ - X12_753
+ - X12_754
+ - X12_805
+ - X12_806
- X12_810
+ - X12_811
+ - X12_812
+ - X12_813
+ - X12_814
+ - X12_815
+ - X12_816
+ - X12_818
+ - X12_819
- X12_820
+ - X12_821
+ - X12_822
+ - X12_823
- X12_824
+ - X12_826
+ - X12_827
+ - X12_828
+ - X12_829
- X12_830
+ - X12_831
- X12_832
+ - X12_833
- X12_834
- X12_835
+ - X12_836
- X12_837
+ - X12_838
+ - X12_839
+ - X12_840
+ - X12_841
+ - X12_842
+ - X12_843
- X12_844
+ - X12_845
- X12_846
+ - X12_847
+ - X12_848
- X12_849
- X12_850
+ - X12_851
- X12_852
+ - X12_853
+ - X12_854
- X12_855
- X12_856
+ - X12_857
+ - X12_858
+ - X12_859
- X12_860
- X12_861
+ - X12_862
+ - X12_863
- X12_864
- X12_865
+ - X12_866
+ - X12_867
+ - X12_868
- X12_869
- X12_870
+ - X12_871
+ - X12_872
+ - X12_873
+ - X12_874
+ - X12_875
+ - X12_876
+ - X12_877
+ - X12_878
+ - X12_879
+ - X12_880
+ - X12_881
+ - X12_882
+ - X12_883
+ - X12_884
+ - X12_885
+ - X12_886
+ - X12_887
+ - X12_888
+ - X12_889
+ - X12_891
+ - X12_893
+ - X12_894
+ - X12_895
+ - X12_896
+ - X12_920
+ - X12_924
+ - X12_925
+ - X12_926
+ - X12_928
- X12_940
+ - X12_943
+ - X12_944
- X12_945
+ - X12_947
+ - X12_980
- X12_990
+ - X12_993
+ - X12_996
- X12_997
+ - X12_998
- X12_999
- X12_270_X279
- X12_271_X279
@@ -547,6 +821,8 @@ components:
enum:
- VERSION_4010
- VERSION_4030
+ - VERSION_4050
+ - VERSION_4060
- VERSION_5010
- VERSION_5010_HIPAA
Capability:
@@ -613,6 +889,10 @@ components:
tagProperty: /properties/Tags
tagUpdatable: true
taggable: true
+ permissions:
+ - b2bi:ListTagsForResource
+ - b2bi:TagResource
+ - b2bi:UntagResource
x-required-permissions:
create:
- b2bi:CreateCapability
@@ -642,6 +922,116 @@ components:
- b2bi:DeleteCapability
list:
- b2bi:ListCapabilities
+ CapabilityOptions:
+ type: object
+ properties:
+ OutboundEdi:
+ $ref: '#/components/schemas/OutboundEdiOptions'
+ additionalProperties: false
+ OutboundEdiOptions:
+ oneOf:
+ - type: object
+ title: X12
+ properties:
+ X12:
+ $ref: '#/components/schemas/X12Envelope'
+ required:
+ - X12
+ additionalProperties: false
+ X12Delimiters:
+ type: object
+ properties:
+ ComponentSeparator:
+ type: string
+ maxLength: 1
+ minLength: 1
+ pattern: ^[!&'()*+,\-./:;?=%@\[\]_{}|<>~^`"]$
+ DataElementSeparator:
+ type: string
+ maxLength: 1
+ minLength: 1
+ pattern: ^[!&'()*+,\-./:;?=%@\[\]_{}|<>~^`"]$
+ SegmentTerminator:
+ type: string
+ maxLength: 1
+ minLength: 1
+ pattern: ^[!&'()*+,\-./:;?=%@\[\]_{}|<>~^`"]$
+ additionalProperties: false
+ X12Envelope:
+ type: object
+ properties:
+ Common:
+ $ref: '#/components/schemas/X12OutboundEdiHeaders'
+ additionalProperties: false
+ X12FunctionalGroupHeaders:
+ type: object
+ properties:
+ ApplicationSenderCode:
+ type: string
+ maxLength: 15
+ minLength: 2
+ pattern: ^[a-zA-Z0-9]*$
+ ApplicationReceiverCode:
+ type: string
+ maxLength: 15
+ minLength: 2
+ pattern: ^[a-zA-Z0-9]*$
+ ResponsibleAgencyCode:
+ type: string
+ maxLength: 2
+ minLength: 1
+ pattern: ^[a-zA-Z0-9]*$
+ additionalProperties: false
+ X12InterchangeControlHeaders:
+ type: object
+ properties:
+ SenderIdQualifier:
+ type: string
+ maxLength: 2
+ minLength: 2
+ pattern: ^[a-zA-Z0-9]*$
+ SenderId:
+ type: string
+ maxLength: 15
+ minLength: 15
+ pattern: ^[a-zA-Z0-9]*$
+ ReceiverIdQualifier:
+ type: string
+ maxLength: 2
+ minLength: 2
+ pattern: ^[a-zA-Z0-9]*$
+ ReceiverId:
+ type: string
+ maxLength: 15
+ minLength: 15
+ pattern: ^[a-zA-Z0-9]*$
+ RepetitionSeparator:
+ type: string
+ maxLength: 1
+ minLength: 1
+ AcknowledgmentRequestedCode:
+ type: string
+ maxLength: 1
+ minLength: 1
+ pattern: ^[a-zA-Z0-9]*$
+ UsageIndicatorCode:
+ type: string
+ maxLength: 1
+ minLength: 1
+ pattern: ^[a-zA-Z0-9]*$
+ additionalProperties: false
+ X12OutboundEdiHeaders:
+ type: object
+ properties:
+ InterchangeControlHeaders:
+ $ref: '#/components/schemas/X12InterchangeControlHeaders'
+ FunctionalGroupHeaders:
+ $ref: '#/components/schemas/X12FunctionalGroupHeaders'
+ Delimiters:
+ $ref: '#/components/schemas/X12Delimiters'
+ ValidateEdi:
+ type: boolean
+ additionalProperties: false
Partnership:
type: object
properties:
@@ -652,6 +1042,8 @@ components:
maxLength: 64
minLength: 1
pattern: ^[a-zA-Z0-9_-]+$
+ CapabilityOptions:
+ $ref: '#/components/schemas/CapabilityOptions'
CreatedAt:
type: string
format: date-time
@@ -698,6 +1090,7 @@ components:
minLength: 1
pattern: ^[a-zA-Z0-9_-]+$
required:
+ - Capabilities
- Email
- Name
- ProfileId
@@ -717,6 +1110,7 @@ components:
- PartnershipId
- TradingPartnerId
x-required-properties:
+ - Capabilities
- Email
- Name
- ProfileId
@@ -726,6 +1120,10 @@ components:
tagProperty: /properties/Tags
tagUpdatable: true
taggable: true
+ permissions:
+ - b2bi:ListTagsForResource
+ - b2bi:TagResource
+ - b2bi:UntagResource
x-required-permissions:
create:
- b2bi:CreatePartnership
@@ -824,6 +1222,10 @@ components:
tagProperty: /properties/Tags
tagUpdatable: true
taggable: true
+ permissions:
+ - b2bi:ListTagsForResource
+ - b2bi:TagResource
+ - b2bi:UntagResource
x-required-permissions:
create:
- b2bi:CreateProfile
@@ -855,6 +1257,89 @@ components:
enum:
- XML
- JSON
+ - NOT_USED
+ FormatOptions:
+ oneOf:
+ - type: object
+ title: X12
+ properties:
+ X12:
+ $ref: '#/components/schemas/X12Details'
+ required:
+ - X12
+ additionalProperties: false
+ FromFormat:
+ type: string
+ enum:
+ - X12
+ InputConversion:
+ type: object
+ properties:
+ FromFormat:
+ $ref: '#/components/schemas/FromFormat'
+ FormatOptions:
+ $ref: '#/components/schemas/FormatOptions'
+ required:
+ - FromFormat
+ additionalProperties: false
+ Mapping:
+ type: object
+ properties:
+ TemplateLanguage:
+ $ref: '#/components/schemas/MappingTemplateLanguage'
+ Template:
+ type: string
+ maxLength: 350000
+ minLength: 0
+ required:
+ - TemplateLanguage
+ additionalProperties: false
+ MappingTemplateLanguage:
+ type: string
+ enum:
+ - XSLT
+ - JSONATA
+ OutputConversion:
+ type: object
+ properties:
+ ToFormat:
+ $ref: '#/components/schemas/ToFormat'
+ FormatOptions:
+ $ref: '#/components/schemas/FormatOptions'
+ required:
+ - ToFormat
+ additionalProperties: false
+ SampleDocumentKeys:
+ type: object
+ properties:
+ Input:
+ type: string
+ maxLength: 1024
+ minLength: 0
+ Output:
+ type: string
+ maxLength: 1024
+ minLength: 0
+ additionalProperties: false
+ SampleDocuments:
+ type: object
+ properties:
+ BucketName:
+ type: string
+ maxLength: 63
+ minLength: 3
+ Keys:
+ type: array
+ items:
+ $ref: '#/components/schemas/SampleDocumentKeys'
+ required:
+ - BucketName
+ - Keys
+ additionalProperties: false
+ ToFormat:
+ type: string
+ enum:
+ - X12
TransformerStatus:
type: string
enum:
@@ -870,10 +1355,15 @@ components:
$ref: '#/components/schemas/EdiType'
FileFormat:
$ref: '#/components/schemas/FileFormat'
+ InputConversion:
+ $ref: '#/components/schemas/InputConversion'
+ Mapping:
+ $ref: '#/components/schemas/Mapping'
MappingTemplate:
type: string
maxLength: 350000
minLength: 0
+ description: 'This shape is deprecated: This is a legacy trait. Please use input-conversion or output-conversion.'
ModifiedAt:
type: string
format: date-time
@@ -881,10 +1371,16 @@ components:
type: string
maxLength: 254
minLength: 1
+ pattern: ^[a-zA-Z0-9_-]{1,512}$
+ OutputConversion:
+ $ref: '#/components/schemas/OutputConversion'
SampleDocument:
type: string
maxLength: 1024
minLength: 0
+ description: 'This shape is deprecated: This is a legacy trait. Please use input-conversion or output-conversion.'
+ SampleDocuments:
+ $ref: '#/components/schemas/SampleDocuments'
Status:
$ref: '#/components/schemas/TransformerStatus'
Tags:
@@ -903,9 +1399,6 @@ components:
minLength: 1
pattern: ^[a-zA-Z0-9_-]+$
required:
- - EdiType
- - FileFormat
- - MappingTemplate
- Name
- Status
x-stackql-resource-name: transformer
@@ -919,9 +1412,6 @@ components:
- TransformerArn
- TransformerId
x-required-properties:
- - EdiType
- - FileFormat
- - MappingTemplate
- Name
- Status
x-tagging:
@@ -930,6 +1420,10 @@ components:
tagProperty: /properties/Tags
tagUpdatable: true
taggable: true
+ permissions:
+ - b2bi:ListTagsForResource
+ - b2bi:TagResource
+ - b2bi:UntagResource
x-required-permissions:
create:
- b2bi:CreateTransformer
@@ -1029,6 +1523,8 @@ components:
maxLength: 64
minLength: 1
pattern: ^[a-zA-Z0-9_-]+$
+ CapabilityOptions:
+ $ref: '#/components/schemas/CapabilityOptions'
CreatedAt:
type: string
format: date-time
@@ -1160,10 +1656,15 @@ components:
$ref: '#/components/schemas/EdiType'
FileFormat:
$ref: '#/components/schemas/FileFormat'
+ InputConversion:
+ $ref: '#/components/schemas/InputConversion'
+ Mapping:
+ $ref: '#/components/schemas/Mapping'
MappingTemplate:
type: string
maxLength: 350000
minLength: 0
+ description: 'This shape is deprecated: This is a legacy trait. Please use input-conversion or output-conversion.'
ModifiedAt:
type: string
format: date-time
@@ -1171,10 +1672,16 @@ components:
type: string
maxLength: 254
minLength: 1
+ pattern: ^[a-zA-Z0-9_-]{1,512}$
+ OutputConversion:
+ $ref: '#/components/schemas/OutputConversion'
SampleDocument:
type: string
maxLength: 1024
minLength: 0
+ description: 'This shape is deprecated: This is a legacy trait. Please use input-conversion or output-conversion.'
+ SampleDocuments:
+ $ref: '#/components/schemas/SampleDocuments'
Status:
$ref: '#/components/schemas/TransformerStatus'
Tags:
@@ -1493,6 +2000,7 @@ components:
region,
data__Identifier,
JSON_EXTRACT(Properties, '$.Capabilities') as capabilities,
+ JSON_EXTRACT(Properties, '$.CapabilityOptions') as capability_options,
JSON_EXTRACT(Properties, '$.CreatedAt') as created_at,
JSON_EXTRACT(Properties, '$.Email') as email,
JSON_EXTRACT(Properties, '$.ModifiedAt') as modified_at,
@@ -1512,6 +2020,7 @@ components:
SELECT
detail.region,
JSON_EXTRACT(detail.Properties, '$.Capabilities') as capabilities,
+ JSON_EXTRACT(detail.Properties, '$.CapabilityOptions') as capability_options,
JSON_EXTRACT(detail.Properties, '$.CreatedAt') as created_at,
JSON_EXTRACT(detail.Properties, '$.Email') as email,
JSON_EXTRACT(detail.Properties, '$.ModifiedAt') as modified_at,
@@ -1536,6 +2045,7 @@ components:
region,
data__Identifier,
json_extract_path_text(Properties, 'Capabilities') as capabilities,
+ json_extract_path_text(Properties, 'CapabilityOptions') as capability_options,
json_extract_path_text(Properties, 'CreatedAt') as created_at,
json_extract_path_text(Properties, 'Email') as email,
json_extract_path_text(Properties, 'ModifiedAt') as modified_at,
@@ -1555,6 +2065,7 @@ components:
SELECT
detail.region,
json_extract_path_text(detail.Properties, 'Capabilities') as capabilities,
+ json_extract_path_text(detail.Properties, 'CapabilityOptions') as capability_options,
json_extract_path_text(detail.Properties, 'CreatedAt') as created_at,
json_extract_path_text(detail.Properties, 'Email') as email,
json_extract_path_text(detail.Properties, 'ModifiedAt') as modified_at,
@@ -1624,6 +2135,7 @@ components:
JSON_EXTRACT(json_each.value, '$.Key') as tag_key,
JSON_EXTRACT(json_each.value, '$.Value') as tag_value,
JSON_EXTRACT(detail.Properties, '$.Capabilities') as capabilities,
+ JSON_EXTRACT(detail.Properties, '$.CapabilityOptions') as capability_options,
JSON_EXTRACT(detail.Properties, '$.CreatedAt') as created_at,
JSON_EXTRACT(detail.Properties, '$.Email') as email,
JSON_EXTRACT(detail.Properties, '$.ModifiedAt') as modified_at,
@@ -1649,6 +2161,7 @@ components:
json_extract_path_text(json_each.value, 'Key') as tag_key,
json_extract_path_text(json_each.value, 'Value') as tag_value,
json_extract_path_text(detail.Properties, 'Capabilities') as capabilities,
+ json_extract_path_text(detail.Properties, 'CapabilityOptions') as capability_options,
json_extract_path_text(detail.Properties, 'CreatedAt') as created_at,
json_extract_path_text(detail.Properties, 'Email') as email,
json_extract_path_text(detail.Properties, 'ModifiedAt') as modified_at,
@@ -1969,10 +2482,14 @@ components:
JSON_EXTRACT(Properties, '$.CreatedAt') as created_at,
JSON_EXTRACT(Properties, '$.EdiType') as edi_type,
JSON_EXTRACT(Properties, '$.FileFormat') as file_format,
+ JSON_EXTRACT(Properties, '$.InputConversion') as input_conversion,
+ JSON_EXTRACT(Properties, '$.Mapping') as mapping,
JSON_EXTRACT(Properties, '$.MappingTemplate') as mapping_template,
JSON_EXTRACT(Properties, '$.ModifiedAt') as modified_at,
JSON_EXTRACT(Properties, '$.Name') as name,
+ JSON_EXTRACT(Properties, '$.OutputConversion') as output_conversion,
JSON_EXTRACT(Properties, '$.SampleDocument') as sample_document,
+ JSON_EXTRACT(Properties, '$.SampleDocuments') as sample_documents,
JSON_EXTRACT(Properties, '$.Status') as status,
JSON_EXTRACT(Properties, '$.Tags') as tags,
JSON_EXTRACT(Properties, '$.TransformerArn') as transformer_arn,
@@ -1988,10 +2505,14 @@ components:
JSON_EXTRACT(detail.Properties, '$.CreatedAt') as created_at,
JSON_EXTRACT(detail.Properties, '$.EdiType') as edi_type,
JSON_EXTRACT(detail.Properties, '$.FileFormat') as file_format,
+ JSON_EXTRACT(detail.Properties, '$.InputConversion') as input_conversion,
+ JSON_EXTRACT(detail.Properties, '$.Mapping') as mapping,
JSON_EXTRACT(detail.Properties, '$.MappingTemplate') as mapping_template,
JSON_EXTRACT(detail.Properties, '$.ModifiedAt') as modified_at,
JSON_EXTRACT(detail.Properties, '$.Name') as name,
+ JSON_EXTRACT(detail.Properties, '$.OutputConversion') as output_conversion,
JSON_EXTRACT(detail.Properties, '$.SampleDocument') as sample_document,
+ JSON_EXTRACT(detail.Properties, '$.SampleDocuments') as sample_documents,
JSON_EXTRACT(detail.Properties, '$.Status') as status,
JSON_EXTRACT(detail.Properties, '$.Tags') as tags,
JSON_EXTRACT(detail.Properties, '$.TransformerArn') as transformer_arn,
@@ -2012,10 +2533,14 @@ components:
json_extract_path_text(Properties, 'CreatedAt') as created_at,
json_extract_path_text(Properties, 'EdiType') as edi_type,
json_extract_path_text(Properties, 'FileFormat') as file_format,
+ json_extract_path_text(Properties, 'InputConversion') as input_conversion,
+ json_extract_path_text(Properties, 'Mapping') as mapping,
json_extract_path_text(Properties, 'MappingTemplate') as mapping_template,
json_extract_path_text(Properties, 'ModifiedAt') as modified_at,
json_extract_path_text(Properties, 'Name') as name,
+ json_extract_path_text(Properties, 'OutputConversion') as output_conversion,
json_extract_path_text(Properties, 'SampleDocument') as sample_document,
+ json_extract_path_text(Properties, 'SampleDocuments') as sample_documents,
json_extract_path_text(Properties, 'Status') as status,
json_extract_path_text(Properties, 'Tags') as tags,
json_extract_path_text(Properties, 'TransformerArn') as transformer_arn,
@@ -2031,10 +2556,14 @@ components:
json_extract_path_text(detail.Properties, 'CreatedAt') as created_at,
json_extract_path_text(detail.Properties, 'EdiType') as edi_type,
json_extract_path_text(detail.Properties, 'FileFormat') as file_format,
+ json_extract_path_text(detail.Properties, 'InputConversion') as input_conversion,
+ json_extract_path_text(detail.Properties, 'Mapping') as mapping,
json_extract_path_text(detail.Properties, 'MappingTemplate') as mapping_template,
json_extract_path_text(detail.Properties, 'ModifiedAt') as modified_at,
json_extract_path_text(detail.Properties, 'Name') as name,
+ json_extract_path_text(detail.Properties, 'OutputConversion') as output_conversion,
json_extract_path_text(detail.Properties, 'SampleDocument') as sample_document,
+ json_extract_path_text(detail.Properties, 'SampleDocuments') as sample_documents,
json_extract_path_text(detail.Properties, 'Status') as status,
json_extract_path_text(detail.Properties, 'Tags') as tags,
json_extract_path_text(detail.Properties, 'TransformerArn') as transformer_arn,
@@ -2100,10 +2629,14 @@ components:
JSON_EXTRACT(detail.Properties, '$.CreatedAt') as created_at,
JSON_EXTRACT(detail.Properties, '$.EdiType') as edi_type,
JSON_EXTRACT(detail.Properties, '$.FileFormat') as file_format,
+ JSON_EXTRACT(detail.Properties, '$.InputConversion') as input_conversion,
+ JSON_EXTRACT(detail.Properties, '$.Mapping') as mapping,
JSON_EXTRACT(detail.Properties, '$.MappingTemplate') as mapping_template,
JSON_EXTRACT(detail.Properties, '$.ModifiedAt') as modified_at,
JSON_EXTRACT(detail.Properties, '$.Name') as name,
+ JSON_EXTRACT(detail.Properties, '$.OutputConversion') as output_conversion,
JSON_EXTRACT(detail.Properties, '$.SampleDocument') as sample_document,
+ JSON_EXTRACT(detail.Properties, '$.SampleDocuments') as sample_documents,
JSON_EXTRACT(detail.Properties, '$.Status') as status,
JSON_EXTRACT(detail.Properties, '$.TransformerArn') as transformer_arn,
JSON_EXTRACT(detail.Properties, '$.TransformerId') as transformer_id
@@ -2125,10 +2658,14 @@ components:
json_extract_path_text(detail.Properties, 'CreatedAt') as created_at,
json_extract_path_text(detail.Properties, 'EdiType') as edi_type,
json_extract_path_text(detail.Properties, 'FileFormat') as file_format,
+ json_extract_path_text(detail.Properties, 'InputConversion') as input_conversion,
+ json_extract_path_text(detail.Properties, 'Mapping') as mapping,
json_extract_path_text(detail.Properties, 'MappingTemplate') as mapping_template,
json_extract_path_text(detail.Properties, 'ModifiedAt') as modified_at,
json_extract_path_text(detail.Properties, 'Name') as name,
+ json_extract_path_text(detail.Properties, 'OutputConversion') as output_conversion,
json_extract_path_text(detail.Properties, 'SampleDocument') as sample_document,
+ json_extract_path_text(detail.Properties, 'SampleDocuments') as sample_documents,
json_extract_path_text(detail.Properties, 'Status') as status,
json_extract_path_text(detail.Properties, 'TransformerArn') as transformer_arn,
json_extract_path_text(detail.Properties, 'TransformerId') as transformer_id
diff --git a/providers/src/aws/v00.00.00000/services/backup.yaml b/providers/src/aws/v00.00.00000/services/backup.yaml
index 2233a1e6..c3e0183b 100644
--- a/providers/src/aws/v00.00.00000/services/backup.yaml
+++ b/providers/src/aws/v00.00.00000/services/backup.yaml
@@ -508,6 +508,10 @@ components:
tagUpdatable: true
cloudFormationSystemTags: true
tagProperty: /properties/BackupPlanTags
+ permissions:
+ - backup:TagResource
+ - backup:UntagResource
+ - backup:ListTags
x-required-permissions:
read:
- backup:GetBackupPlan
@@ -651,6 +655,7 @@ components:
- iam:CreateServiceLinkedRole
list:
- backup:ListBackupSelections
+ - backup:ListBackupPlans
NotificationObjectType:
type: object
additionalProperties: false
@@ -724,6 +729,10 @@ components:
tagUpdatable: true
cloudFormationSystemTags: true
tagProperty: /properties/BackupVaultTags
+ permissions:
+ - backup:TagResource
+ - backup:UntagResource
+ - backup:ListTags
x-required-permissions:
create:
- backup:TagResource
@@ -895,6 +904,10 @@ components:
tagUpdatable: true
cloudFormationSystemTags: false
tagProperty: /properties/FrameworkTags
+ permissions:
+ - backup:TagResource
+ - backup:UntagResource
+ - backup:ListTags
x-required-permissions:
create:
- backup:CreateFramework
@@ -916,6 +929,95 @@ components:
- backup:DescribeFramework
list:
- backup:ListFrameworks
+ LogicallyAirGappedBackupVault:
+ type: object
+ properties:
+ AccessPolicy:
+ type: object
+ BackupVaultName:
+ $ref: '#/components/schemas/BackupVaultNamePattern'
+ MinRetentionDays:
+ type: integer
+ MaxRetentionDays:
+ type: integer
+ BackupVaultTags:
+ type: object
+ additionalProperties: false
+ x-patternProperties:
+ ^.{1,128}$:
+ type: string
+ Notifications:
+ $ref: '#/components/schemas/NotificationObjectType'
+ EncryptionKeyArn:
+ type: string
+ BackupVaultArn:
+ type: string
+ VaultState:
+ type: string
+ VaultType:
+ type: string
+ required:
+ - BackupVaultName
+ - MinRetentionDays
+ - MaxRetentionDays
+ x-stackql-resource-name: logically_air_gapped_backup_vault
+ description: Resource Type definition for AWS::Backup::LogicallyAirGappedBackupVault
+ x-type-name: AWS::Backup::LogicallyAirGappedBackupVault
+ x-stackql-primary-identifier:
+ - BackupVaultName
+ x-create-only-properties:
+ - BackupVaultName
+ - MinRetentionDays
+ - MaxRetentionDays
+ x-read-only-properties:
+ - BackupVaultArn
+ - EncryptionKeyArn
+ - VaultState
+ - VaultType
+ x-required-properties:
+ - BackupVaultName
+ - MinRetentionDays
+ - MaxRetentionDays
+ x-tagging:
+ taggable: true
+ tagOnCreate: true
+ tagUpdatable: true
+ cloudFormationSystemTags: true
+ tagProperty: /properties/BackupVaultTags
+ permissions:
+ - backup:TagResource
+ - backup:UntagResource
+ - backup:ListTags
+ x-required-permissions:
+ create:
+ - backup:TagResource
+ - backup:CreateLogicallyAirGappedBackupVault
+ - backup:PutBackupVaultAccessPolicy
+ - backup:PutBackupVaultNotifications
+ - backup-storage:Mount
+ - backup-storage:MountCapsule
+ - backup:DescribeBackupVault
+ read:
+ - backup:DescribeBackupVault
+ - backup:GetBackupVaultNotifications
+ - backup:GetBackupVaultAccessPolicy
+ - backup:ListTags
+ update:
+ - backup:DescribeBackupVault
+ - backup:DeleteBackupVaultAccessPolicy
+ - backup:DeleteBackupVaultNotifications
+ - backup:DeleteBackupVaultLockConfiguration
+ - backup:GetBackupVaultAccessPolicy
+ - backup:ListTags
+ - backup:TagResource
+ - backup:UntagResource
+ - backup:PutBackupVaultAccessPolicy
+ - backup:PutBackupVaultNotifications
+ - backup:PutBackupVaultLockConfiguration
+ delete:
+ - backup:DeleteBackupVault
+ list:
+ - backup:ListBackupVaults
ReportPlan:
type: object
properties:
@@ -1019,6 +1121,10 @@ components:
tagUpdatable: true
cloudFormationSystemTags: false
tagProperty: /properties/ReportPlanTags
+ permissions:
+ - backup:TagResource
+ - backup:UntagResource
+ - backup:ListTags
x-required-permissions:
create:
- backup:CreateReportPlan
@@ -1077,6 +1183,11 @@ components:
enum:
- SNAPSHOT
- CONTINUOUS
+ RestoreTestingScheduleStatus:
+ type: string
+ enum:
+ - ACTIVE
+ - SUSPENDED
RestoreTestingPlan:
type: object
properties:
@@ -1090,6 +1201,8 @@ components:
type: string
ScheduleExpressionTimezone:
type: string
+ ScheduleStatus:
+ $ref: '#/components/schemas/RestoreTestingScheduleStatus'
StartWindowHours:
type: integer
Tags:
@@ -1121,9 +1234,14 @@ components:
tagUpdatable: true
cloudFormationSystemTags: true
tagProperty: /properties/Tags
+ permissions:
+ - backup:TagResource
+ - backup:UntagResource
+ - backup:ListTags
x-required-permissions:
create:
- backup:CreateRestoreTestingPlan
+ - backup:UpdateRestoreTestingPlanScheduleStatus
- backup:TagResource
- backup:GetRestoreTestingPlan
- backup:ListTags
@@ -1132,6 +1250,7 @@ components:
- backup:ListTags
update:
- backup:UpdateRestoreTestingPlan
+ - backup:UpdateRestoreTestingPlanScheduleStatus
- backup:TagResource
- backup:UntagResource
- backup:GetRestoreTestingPlan
@@ -1236,6 +1355,7 @@ components:
- backup:GetRestoreTestingSelection
list:
- backup:ListRestoreTestingSelections
+ - backup:ListRestoreTestingPlans
CreateBackupPlanRequest:
properties:
ClientToken:
@@ -1389,6 +1509,47 @@ components:
x-title: CreateFrameworkRequest
type: object
required: []
+ CreateLogicallyAirGappedBackupVaultRequest:
+ properties:
+ ClientToken:
+ type: string
+ RoleArn:
+ type: string
+ TypeName:
+ type: string
+ TypeVersionId:
+ type: string
+ DesiredState:
+ type: object
+ properties:
+ AccessPolicy:
+ type: object
+ BackupVaultName:
+ $ref: '#/components/schemas/BackupVaultNamePattern'
+ MinRetentionDays:
+ type: integer
+ MaxRetentionDays:
+ type: integer
+ BackupVaultTags:
+ type: object
+ additionalProperties: false
+ x-patternProperties:
+ ^.{1,128}$:
+ type: string
+ Notifications:
+ $ref: '#/components/schemas/NotificationObjectType'
+ EncryptionKeyArn:
+ type: string
+ BackupVaultArn:
+ type: string
+ VaultState:
+ type: string
+ VaultType:
+ type: string
+ x-stackQL-stringOnly: true
+ x-title: CreateLogicallyAirGappedBackupVaultRequest
+ type: object
+ required: []
CreateReportPlanRequest:
properties:
ClientToken:
@@ -1508,6 +1669,8 @@ components:
type: string
ScheduleExpressionTimezone:
type: string
+ ScheduleStatus:
+ $ref: '#/components/schemas/RestoreTestingScheduleStatus'
StartWindowHours:
type: integer
Tags:
@@ -2167,6 +2330,176 @@ components:
json_extract_path_text(Properties, 'FrameworkArn') as framework_arn
FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::Backup::Framework'
AND region = 'us-east-1'
+ logically_air_gapped_backup_vaults:
+ name: logically_air_gapped_backup_vaults
+ id: aws.backup.logically_air_gapped_backup_vaults
+ x-cfn-schema-name: LogicallyAirGappedBackupVault
+ x-cfn-type-name: AWS::Backup::LogicallyAirGappedBackupVault
+ x-identifiers:
+ - BackupVaultName
+ x-type: cloud_control
+ methods:
+ create_resource:
+ config:
+ requestBodyTranslate:
+ algorithm: naive_DesiredState
+ operation:
+ $ref: '#/paths/~1?Action=CreateResource&Version=2021-09-30&__LogicallyAirGappedBackupVault&__detailTransformed=true/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::Backup::LogicallyAirGappedBackupVault"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ update_resource:
+ operation:
+ $ref: '#/paths/~1?Action=UpdateResource&Version=2021-09-30/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::Backup::LogicallyAirGappedBackupVault"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ delete_resource:
+ operation:
+ $ref: '#/paths/~1?Action=DeleteResource&Version=2021-09-30/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::Backup::LogicallyAirGappedBackupVault"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ sqlVerbs:
+ insert:
+ - $ref: '#/components/x-stackQL-resources/logically_air_gapped_backup_vaults/methods/create_resource'
+ delete:
+ - $ref: '#/components/x-stackQL-resources/logically_air_gapped_backup_vaults/methods/delete_resource'
+ update:
+ - $ref: '#/components/x-stackQL-resources/logically_air_gapped_backup_vaults/methods/update_resource'
+ config:
+ views:
+ select:
+ predicate: sqlDialect == "sqlite3" && requiredParams == [ data__Identifier ]
+ ddl: |-
+ SELECT
+ region,
+ data__Identifier,
+ JSON_EXTRACT(Properties, '$.AccessPolicy') as access_policy,
+ JSON_EXTRACT(Properties, '$.BackupVaultName') as backup_vault_name,
+ JSON_EXTRACT(Properties, '$.MinRetentionDays') as min_retention_days,
+ JSON_EXTRACT(Properties, '$.MaxRetentionDays') as max_retention_days,
+ JSON_EXTRACT(Properties, '$.BackupVaultTags') as backup_vault_tags,
+ JSON_EXTRACT(Properties, '$.Notifications') as notifications,
+ JSON_EXTRACT(Properties, '$.EncryptionKeyArn') as encryption_key_arn,
+ JSON_EXTRACT(Properties, '$.BackupVaultArn') as backup_vault_arn,
+ JSON_EXTRACT(Properties, '$.VaultState') as vault_state,
+ JSON_EXTRACT(Properties, '$.VaultType') as vault_type
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::Backup::LogicallyAirGappedBackupVault'
+ AND data__Identifier = ''
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "sqlite3"
+ ddl: |-
+ SELECT
+ detail.region,
+ JSON_EXTRACT(detail.Properties, '$.AccessPolicy') as access_policy,
+ JSON_EXTRACT(detail.Properties, '$.BackupVaultName') as backup_vault_name,
+ JSON_EXTRACT(detail.Properties, '$.MinRetentionDays') as min_retention_days,
+ JSON_EXTRACT(detail.Properties, '$.MaxRetentionDays') as max_retention_days,
+ JSON_EXTRACT(detail.Properties, '$.BackupVaultTags') as backup_vault_tags,
+ JSON_EXTRACT(detail.Properties, '$.Notifications') as notifications,
+ JSON_EXTRACT(detail.Properties, '$.EncryptionKeyArn') as encryption_key_arn,
+ JSON_EXTRACT(detail.Properties, '$.BackupVaultArn') as backup_vault_arn,
+ JSON_EXTRACT(detail.Properties, '$.VaultState') as vault_state,
+ JSON_EXTRACT(detail.Properties, '$.VaultType') as vault_type
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ WHERE listing.data__TypeName = 'AWS::Backup::LogicallyAirGappedBackupVault'
+ AND detail.data__TypeName = 'AWS::Backup::LogicallyAirGappedBackupVault'
+ AND listing.region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres" && requiredParams == [ data__Identifier ]
+ ddl: |-
+ SELECT
+ region,
+ data__Identifier,
+ json_extract_path_text(Properties, 'AccessPolicy') as access_policy,
+ json_extract_path_text(Properties, 'BackupVaultName') as backup_vault_name,
+ json_extract_path_text(Properties, 'MinRetentionDays') as min_retention_days,
+ json_extract_path_text(Properties, 'MaxRetentionDays') as max_retention_days,
+ json_extract_path_text(Properties, 'BackupVaultTags') as backup_vault_tags,
+ json_extract_path_text(Properties, 'Notifications') as notifications,
+ json_extract_path_text(Properties, 'EncryptionKeyArn') as encryption_key_arn,
+ json_extract_path_text(Properties, 'BackupVaultArn') as backup_vault_arn,
+ json_extract_path_text(Properties, 'VaultState') as vault_state,
+ json_extract_path_text(Properties, 'VaultType') as vault_type
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::Backup::LogicallyAirGappedBackupVault'
+ AND data__Identifier = ''
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres"
+ ddl: |-
+ SELECT
+ detail.region,
+ json_extract_path_text(detail.Properties, 'AccessPolicy') as access_policy,
+ json_extract_path_text(detail.Properties, 'BackupVaultName') as backup_vault_name,
+ json_extract_path_text(detail.Properties, 'MinRetentionDays') as min_retention_days,
+ json_extract_path_text(detail.Properties, 'MaxRetentionDays') as max_retention_days,
+ json_extract_path_text(detail.Properties, 'BackupVaultTags') as backup_vault_tags,
+ json_extract_path_text(detail.Properties, 'Notifications') as notifications,
+ json_extract_path_text(detail.Properties, 'EncryptionKeyArn') as encryption_key_arn,
+ json_extract_path_text(detail.Properties, 'BackupVaultArn') as backup_vault_arn,
+ json_extract_path_text(detail.Properties, 'VaultState') as vault_state,
+ json_extract_path_text(detail.Properties, 'VaultType') as vault_type
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ WHERE listing.data__TypeName = 'AWS::Backup::LogicallyAirGappedBackupVault'
+ AND detail.data__TypeName = 'AWS::Backup::LogicallyAirGappedBackupVault'
+ AND listing.region = 'us-east-1'
+ logically_air_gapped_backup_vaults_list_only:
+ name: logically_air_gapped_backup_vaults_list_only
+ id: aws.backup.logically_air_gapped_backup_vaults_list_only
+ x-cfn-schema-name: LogicallyAirGappedBackupVault
+ x-cfn-type-name: AWS::Backup::LogicallyAirGappedBackupVault
+ x-identifiers:
+ - BackupVaultName
+ x-type: cloud_control_view
+ methods: {}
+ sqlVerbs:
+ insert: []
+ delete: []
+ update: []
+ config:
+ views:
+ select:
+ predicate: sqlDialect == "sqlite3"
+ ddl: |-
+ SELECT
+ region,
+ JSON_EXTRACT(Properties, '$.BackupVaultName') as backup_vault_name
+ FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::Backup::LogicallyAirGappedBackupVault'
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres"
+ ddl: |-
+ SELECT
+ region,
+ json_extract_path_text(Properties, 'BackupVaultName') as backup_vault_name
+ FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::Backup::LogicallyAirGappedBackupVault'
+ AND region = 'us-east-1'
report_plans:
name: report_plans
id: aws.backup.report_plans
@@ -2389,6 +2722,7 @@ components:
JSON_EXTRACT(Properties, '$.RestoreTestingPlanName') as restore_testing_plan_name,
JSON_EXTRACT(Properties, '$.ScheduleExpression') as schedule_expression,
JSON_EXTRACT(Properties, '$.ScheduleExpressionTimezone') as schedule_expression_timezone,
+ JSON_EXTRACT(Properties, '$.ScheduleStatus') as schedule_status,
JSON_EXTRACT(Properties, '$.StartWindowHours') as start_window_hours,
JSON_EXTRACT(Properties, '$.Tags') as tags
FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::Backup::RestoreTestingPlan'
@@ -2404,6 +2738,7 @@ components:
JSON_EXTRACT(detail.Properties, '$.RestoreTestingPlanName') as restore_testing_plan_name,
JSON_EXTRACT(detail.Properties, '$.ScheduleExpression') as schedule_expression,
JSON_EXTRACT(detail.Properties, '$.ScheduleExpressionTimezone') as schedule_expression_timezone,
+ JSON_EXTRACT(detail.Properties, '$.ScheduleStatus') as schedule_status,
JSON_EXTRACT(detail.Properties, '$.StartWindowHours') as start_window_hours,
JSON_EXTRACT(detail.Properties, '$.Tags') as tags
FROM aws.cloud_control.resources listing
@@ -2424,6 +2759,7 @@ components:
json_extract_path_text(Properties, 'RestoreTestingPlanName') as restore_testing_plan_name,
json_extract_path_text(Properties, 'ScheduleExpression') as schedule_expression,
json_extract_path_text(Properties, 'ScheduleExpressionTimezone') as schedule_expression_timezone,
+ json_extract_path_text(Properties, 'ScheduleStatus') as schedule_status,
json_extract_path_text(Properties, 'StartWindowHours') as start_window_hours,
json_extract_path_text(Properties, 'Tags') as tags
FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::Backup::RestoreTestingPlan'
@@ -2439,6 +2775,7 @@ components:
json_extract_path_text(detail.Properties, 'RestoreTestingPlanName') as restore_testing_plan_name,
json_extract_path_text(detail.Properties, 'ScheduleExpression') as schedule_expression,
json_extract_path_text(detail.Properties, 'ScheduleExpressionTimezone') as schedule_expression_timezone,
+ json_extract_path_text(detail.Properties, 'ScheduleStatus') as schedule_status,
json_extract_path_text(detail.Properties, 'StartWindowHours') as start_window_hours,
json_extract_path_text(detail.Properties, 'Tags') as tags
FROM aws.cloud_control.resources listing
@@ -2504,6 +2841,7 @@ components:
JSON_EXTRACT(detail.Properties, '$.RestoreTestingPlanName') as restore_testing_plan_name,
JSON_EXTRACT(detail.Properties, '$.ScheduleExpression') as schedule_expression,
JSON_EXTRACT(detail.Properties, '$.ScheduleExpressionTimezone') as schedule_expression_timezone,
+ JSON_EXTRACT(detail.Properties, '$.ScheduleStatus') as schedule_status,
JSON_EXTRACT(detail.Properties, '$.StartWindowHours') as start_window_hours
FROM aws.cloud_control.resources listing
LEFT OUTER JOIN aws.cloud_control.resource detail
@@ -2525,6 +2863,7 @@ components:
json_extract_path_text(detail.Properties, 'RestoreTestingPlanName') as restore_testing_plan_name,
json_extract_path_text(detail.Properties, 'ScheduleExpression') as schedule_expression,
json_extract_path_text(detail.Properties, 'ScheduleExpressionTimezone') as schedule_expression_timezone,
+ json_extract_path_text(detail.Properties, 'ScheduleStatus') as schedule_status,
json_extract_path_text(detail.Properties, 'StartWindowHours') as start_window_hours
FROM aws.cloud_control.resources listing
LEFT OUTER JOIN aws.cloud_control.resource detail
@@ -3011,6 +3350,48 @@ paths:
schema:
$ref: '#/components/x-cloud-control-schemas/ProgressEvent'
description: Success
+ /?Action=CreateResource&Version=2021-09-30&__LogicallyAirGappedBackupVault&__detailTransformed=true:
+ parameters:
+ - $ref: '#/components/parameters/X-Amz-Content-Sha256'
+ - $ref: '#/components/parameters/X-Amz-Date'
+ - $ref: '#/components/parameters/X-Amz-Algorithm'
+ - $ref: '#/components/parameters/X-Amz-Credential'
+ - $ref: '#/components/parameters/X-Amz-Security-Token'
+ - $ref: '#/components/parameters/X-Amz-Signature'
+ - $ref: '#/components/parameters/X-Amz-SignedHeaders'
+ post:
+ operationId: CreateLogicallyAirGappedBackupVault
+ parameters:
+ - description: Action Header
+ in: header
+ name: X-Amz-Target
+ required: false
+ schema:
+ default: CloudApiService.CreateResource
+ enum:
+ - CloudApiService.CreateResource
+ type: string
+ - in: header
+ name: Content-Type
+ required: false
+ schema:
+ default: application/x-amz-json-1.0
+ enum:
+ - application/x-amz-json-1.0
+ type: string
+ requestBody:
+ content:
+ application/x-amz-json-1.0:
+ schema:
+ $ref: '#/components/schemas/CreateLogicallyAirGappedBackupVaultRequest'
+ required: true
+ responses:
+ '200':
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/x-cloud-control-schemas/ProgressEvent'
+ description: Success
/?Action=CreateResource&Version=2021-09-30&__ReportPlan&__detailTransformed=true:
parameters:
- $ref: '#/components/parameters/X-Amz-Content-Sha256'
diff --git a/providers/src/aws/v00.00.00000/services/batch.yaml b/providers/src/aws/v00.00.00000/services/batch.yaml
index eb1158ea..2ec81407 100644
--- a/providers/src/aws/v00.00.00000/services/batch.yaml
+++ b/providers/src/aws/v00.00.00000/services/batch.yaml
@@ -473,6 +473,28 @@ components:
type: string
Version:
type: string
+ Overrides:
+ type: array
+ uniqueItems: false
+ x-insertionOrder: false
+ items:
+ $ref: '#/components/schemas/LaunchTemplateSpecificationOverride'
+ LaunchTemplateSpecificationOverride:
+ type: object
+ additionalProperties: false
+ properties:
+ LaunchTemplateId:
+ type: string
+ LaunchTemplateName:
+ type: string
+ Version:
+ type: string
+ TargetInstanceTypes:
+ type: array
+ uniqueItems: false
+ x-insertionOrder: false
+ items:
+ type: string
UpdatePolicy:
type: object
additionalProperties: false
@@ -527,6 +549,8 @@ components:
type: integer
EksConfiguration:
$ref: '#/components/schemas/EksConfiguration'
+ Context:
+ type: string
required:
- Type
x-stackql-resource-name: compute_environment
@@ -567,34 +591,892 @@ components:
x-tagging:
taggable: true
tagOnCreate: true
- tagUpdatable: false
- cloudFormationSystemTags: false
+ tagUpdatable: false
+ cloudFormationSystemTags: false
+ tagProperty: /properties/Tags
+ permissions:
+ - Batch:TagResource
+ - Batch:UntagResource
+ x-required-permissions:
+ create:
+ - Batch:CreateComputeEnvironment
+ - Batch:TagResource
+ - Batch:DescribeComputeEnvironments
+ - iam:CreateServiceLinkedRole
+ - Iam:PassRole
+ - Eks:DescribeCluster
+ read:
+ - Batch:DescribeComputeEnvironments
+ update:
+ - Batch:UpdateComputeEnvironment
+ - Batch:DescribeComputeEnvironments
+ - Batch:TagResource
+ - Batch:UnTagResource
+ - Iam:PassRole
+ - Eks:DescribeCluster
+ delete:
+ - Batch:DeleteComputeEnvironment
+ - Batch:DescribeComputeEnvironments
+ - Batch:UpdateComputeEnvironment
+ - Iam:PassRole
+ - Eks:DescribeCluster
+ list:
+ - Batch:DescribeComputeEnvironments
+ JobTimeout:
+ additionalProperties: false
+ type: object
+ properties:
+ AttemptDurationSeconds:
+ type: integer
+ EksContainerEnvironmentVariable:
+ additionalProperties: false
+ type: object
+ properties:
+ Value:
+ type: string
+ Name:
+ type: string
+ required:
+ - Name
+ NodeRangeProperty:
+ additionalProperties: false
+ type: object
+ properties:
+ Container:
+ $ref: '#/components/schemas/MultiNodeContainerProperties'
+ TargetNodes:
+ type: string
+ EcsProperties:
+ $ref: '#/components/schemas/MultiNodeEcsProperties'
+ InstanceTypes:
+ uniqueItems: false
+ x-insertionOrder: false
+ type: array
+ items:
+ type: string
+ EksProperties:
+ $ref: '#/components/schemas/EksProperties'
+ required:
+ - TargetNodes
+ EksEmptyDir:
+ additionalProperties: false
+ type: object
+ properties:
+ Medium:
+ type: string
+ SizeLimit:
+ type: string
+ LogConfiguration:
+ additionalProperties: false
+ type: object
+ properties:
+ SecretOptions:
+ uniqueItems: false
+ x-insertionOrder: false
+ type: array
+ items:
+ $ref: '#/components/schemas/Secret'
+ Options:
+ x-patternProperties:
+ .*:
+ type: string
+ additionalProperties: false
+ type: object
+ LogDriver:
+ type: string
+ required:
+ - LogDriver
+ RuntimePlatform:
+ additionalProperties: false
+ type: object
+ properties:
+ OperatingSystemFamily:
+ type: string
+ CpuArchitecture:
+ type: string
+ MultiNodeEcsTaskProperties:
+ additionalProperties: false
+ type: object
+ properties:
+ ExecutionRoleArn:
+ type: string
+ TaskRoleArn:
+ type: string
+ IpcMode:
+ type: string
+ Volumes:
+ uniqueItems: false
+ x-insertionOrder: false
+ type: array
+ items:
+ $ref: '#/components/schemas/Volume'
+ Containers:
+ uniqueItems: false
+ x-insertionOrder: false
+ type: array
+ items:
+ $ref: '#/components/schemas/TaskContainerProperties'
+ PidMode:
+ type: string
+ NodeProperties:
+ additionalProperties: false
+ type: object
+ properties:
+ MainNode:
+ type: integer
+ NodeRangeProperties:
+ uniqueItems: false
+ x-insertionOrder: false
+ type: array
+ items:
+ $ref: '#/components/schemas/NodeRangeProperty'
+ NumNodes:
+ type: integer
+ required:
+ - NumNodes
+ - MainNode
+ - NodeRangeProperties
+ Tmpfs:
+ additionalProperties: false
+ type: object
+ properties:
+ Size:
+ type: integer
+ ContainerPath:
+ type: string
+ MountOptions:
+ uniqueItems: false
+ x-insertionOrder: false
+ type: array
+ items:
+ type: string
+ required:
+ - ContainerPath
+ - Size
+ TaskContainerDependency:
+ additionalProperties: false
+ type: object
+ properties:
+ Condition:
+ type: string
+ ContainerName:
+ type: string
+ required:
+ - ContainerName
+ - Condition
+ ContainerProperties:
+ additionalProperties: false
+ type: object
+ properties:
+ RepositoryCredentials:
+ $ref: '#/components/schemas/RepositoryCredentials'
+ User:
+ type: string
+ Secrets:
+ uniqueItems: false
+ x-insertionOrder: false
+ type: array
+ items:
+ $ref: '#/components/schemas/Secret'
+ Memory:
+ type: integer
+ Privileged:
+ type: boolean
+ LinuxParameters:
+ $ref: '#/components/schemas/LinuxParameters'
+ FargatePlatformConfiguration:
+ additionalProperties: false
+ type: object
+ properties:
+ PlatformVersion:
+ type: string
+ JobRoleArn:
+ type: string
+ ReadonlyRootFilesystem:
+ type: boolean
+ Vcpus:
+ type: integer
+ Image:
+ type: string
+ ResourceRequirements:
+ uniqueItems: false
+ x-insertionOrder: false
+ type: array
+ items:
+ $ref: '#/components/schemas/ResourceRequirement'
+ LogConfiguration:
+ $ref: '#/components/schemas/LogConfiguration'
+ MountPoints:
+ uniqueItems: false
+ x-insertionOrder: false
+ type: array
+ items:
+ $ref: '#/components/schemas/MountPoint'
+ ExecutionRoleArn:
+ type: string
+ RuntimePlatform:
+ $ref: '#/components/schemas/RuntimePlatform'
+ Volumes:
+ uniqueItems: false
+ x-insertionOrder: false
+ type: array
+ items:
+ $ref: '#/components/schemas/Volume'
+ Command:
+ uniqueItems: false
+ x-insertionOrder: true
+ type: array
+ items:
+ type: string
+ Environment:
+ uniqueItems: false
+ x-insertionOrder: true
+ type: array
+ items:
+ $ref: '#/components/schemas/Environment'
+ Ulimits:
+ uniqueItems: false
+ x-insertionOrder: false
+ type: array
+ items:
+ $ref: '#/components/schemas/Ulimit'
+ NetworkConfiguration:
+ $ref: '#/components/schemas/NetworkConfiguration'
+ EphemeralStorage:
+ $ref: '#/components/schemas/EphemeralStorage'
+ required:
+ - Image
+ EcsProperties:
+ additionalProperties: false
+ type: object
+ properties:
+ TaskProperties:
+ uniqueItems: false
+ x-insertionOrder: false
+ type: array
+ items:
+ $ref: '#/components/schemas/EcsTaskProperties'
+ required:
+ - TaskProperties
+ EksContainerResourceRequirements:
+ additionalProperties: false
+ type: object
+ properties:
+ Limits:
+ x-patternProperties:
+ .*:
+ type: string
+ additionalProperties: false
+ type: object
+ Requests:
+ x-patternProperties:
+ .*:
+ type: string
+ additionalProperties: false
+ type: object
+ NetworkConfiguration:
+ additionalProperties: false
+ type: object
+ properties:
+ AssignPublicIp:
+ type: string
+ EcsTaskProperties:
+ additionalProperties: false
+ type: object
+ properties:
+ PlatformVersion:
+ type: string
+ ExecutionRoleArn:
+ type: string
+ RuntimePlatform:
+ $ref: '#/components/schemas/RuntimePlatform'
+ TaskRoleArn:
+ type: string
+ IpcMode:
+ type: string
+ Volumes:
+ uniqueItems: false
+ x-insertionOrder: false
+ type: array
+ items:
+ $ref: '#/components/schemas/Volume'
+ Containers:
+ uniqueItems: false
+ x-insertionOrder: false
+ type: array
+ items:
+ $ref: '#/components/schemas/TaskContainerProperties'
+ NetworkConfiguration:
+ $ref: '#/components/schemas/NetworkConfiguration'
+ PidMode:
+ type: string
+ EphemeralStorage:
+ $ref: '#/components/schemas/EphemeralStorage'
+ EksContainerSecurityContext:
+ additionalProperties: false
+ type: object
+ properties:
+ RunAsUser:
+ type: integer
+ AllowPrivilegeEscalation:
+ type: boolean
+ RunAsNonRoot:
+ type: boolean
+ Privileged:
+ type: boolean
+ ReadOnlyRootFilesystem:
+ type: boolean
+ RunAsGroup:
+ type: integer
+ TaskContainerProperties:
+ additionalProperties: false
+ type: object
+ properties:
+ RepositoryCredentials:
+ $ref: '#/components/schemas/RepositoryCredentials'
+ User:
+ type: string
+ Secrets:
+ uniqueItems: false
+ x-insertionOrder: false
+ type: array
+ items:
+ $ref: '#/components/schemas/Secret'
+ Privileged:
+ type: boolean
+ LinuxParameters:
+ $ref: '#/components/schemas/LinuxParameters'
+ ReadonlyRootFilesystem:
+ type: boolean
+ Image:
+ type: string
+ LogConfiguration:
+ $ref: '#/components/schemas/LogConfiguration'
+ Essential:
+ type: boolean
+ ResourceRequirements:
+ uniqueItems: false
+ x-insertionOrder: false
+ type: array
+ items:
+ $ref: '#/components/schemas/ResourceRequirement'
+ Name:
+ type: string
+ MountPoints:
+ uniqueItems: false
+ x-insertionOrder: false
+ type: array
+ items:
+ $ref: '#/components/schemas/MountPoint'
+ DependsOn:
+ uniqueItems: false
+ x-insertionOrder: false
+ type: array
+ items:
+ $ref: '#/components/schemas/TaskContainerDependency'
+ Command:
+ uniqueItems: false
+ x-insertionOrder: true
+ type: array
+ items:
+ type: string
+ Environment:
+ uniqueItems: false
+ x-insertionOrder: true
+ type: array
+ items:
+ $ref: '#/components/schemas/Environment'
+ Ulimits:
+ uniqueItems: false
+ x-insertionOrder: false
+ type: array
+ items:
+ $ref: '#/components/schemas/Ulimit'
+ required:
+ - Image
+ EksMetadata:
+ additionalProperties: false
+ type: object
+ properties:
+ Labels:
+ x-patternProperties:
+ .*:
+ type: string
+ additionalProperties: false
+ type: object
+ EksSecret:
+ additionalProperties: false
+ type: object
+ properties:
+ SecretName:
+ type: string
+ Optional:
+ type: boolean
+ required:
+ - SecretName
+ RepositoryCredentials:
+ additionalProperties: false
+ type: object
+ properties:
+ CredentialsParameter:
+ type: string
+ required:
+ - CredentialsParameter
+ EFSVolumeConfiguration:
+ additionalProperties: false
+ type: object
+ properties:
+ TransitEncryption:
+ type: string
+ AuthorizationConfig:
+ $ref: '#/components/schemas/EFSAuthorizationConfig'
+ FileSystemId:
+ type: string
+ RootDirectory:
+ type: string
+ TransitEncryptionPort:
+ type: integer
+ required:
+ - FileSystemId
+ ImagePullSecret:
+ additionalProperties: false
+ type: object
+ properties:
+ Name:
+ type: string
+ EvaluateOnExit:
+ additionalProperties: false
+ type: object
+ properties:
+ Action:
+ type: string
+ OnExitCode:
+ type: string
+ OnReason:
+ type: string
+ OnStatusReason:
+ type: string
+ required:
+ - Action
+ MultiNodeEcsProperties:
+ additionalProperties: false
+ type: object
+ properties:
+ TaskProperties:
+ uniqueItems: false
+ x-insertionOrder: false
+ type: array
+ items:
+ $ref: '#/components/schemas/MultiNodeEcsTaskProperties'
+ required:
+ - TaskProperties
+ Device:
+ additionalProperties: false
+ type: object
+ properties:
+ HostPath:
+ type: string
+ Permissions:
+ uniqueItems: false
+ x-insertionOrder: false
+ type: array
+ items:
+ type: string
+ ContainerPath:
+ type: string
+ LinuxParameters:
+ additionalProperties: false
+ type: object
+ properties:
+ Swappiness:
+ type: integer
+ Tmpfs:
+ uniqueItems: false
+ x-insertionOrder: false
+ type: array
+ items:
+ $ref: '#/components/schemas/Tmpfs'
+ SharedMemorySize:
+ type: integer
+ Devices:
+ uniqueItems: false
+ x-insertionOrder: false
+ type: array
+ items:
+ $ref: '#/components/schemas/Device'
+ InitProcessEnabled:
+ type: boolean
+ MaxSwap:
+ type: integer
+ Ulimit:
+ additionalProperties: false
+ type: object
+ properties:
+ SoftLimit:
+ type: integer
+ HardLimit:
+ type: integer
+ Name:
+ type: string
+ required:
+ - HardLimit
+ - Name
+ - SoftLimit
+ Host:
+ additionalProperties: false
+ type: object
+ properties:
+ SourcePath:
+ type: string
+ EFSAuthorizationConfig:
+ additionalProperties: false
+ type: object
+ properties:
+ Iam:
+ type: string
+ AccessPointId:
+ type: string
+ EksVolume:
+ additionalProperties: false
+ type: object
+ properties:
+ Secret:
+ $ref: '#/components/schemas/EksSecret'
+ EmptyDir:
+ $ref: '#/components/schemas/EksEmptyDir'
+ HostPath:
+ $ref: '#/components/schemas/EksHostPath'
+ Name:
+ type: string
+ required:
+ - Name
+ EksContainerVolumeMount:
+ additionalProperties: false
+ type: object
+ properties:
+ MountPath:
+ type: string
+ ReadOnly:
+ type: boolean
+ Name:
+ type: string
+ EksProperties:
+ additionalProperties: false
+ type: object
+ properties:
+ PodProperties:
+ $ref: '#/components/schemas/EksPodProperties'
+ MultiNodeContainerProperties:
+ additionalProperties: false
+ type: object
+ properties:
+ RepositoryCredentials:
+ $ref: '#/components/schemas/RepositoryCredentials'
+ User:
+ type: string
+ Secrets:
+ uniqueItems: false
+ x-insertionOrder: false
+ type: array
+ items:
+ $ref: '#/components/schemas/Secret'
+ Memory:
+ type: integer
+ Privileged:
+ type: boolean
+ LinuxParameters:
+ $ref: '#/components/schemas/LinuxParameters'
+ JobRoleArn:
+ type: string
+ ReadonlyRootFilesystem:
+ type: boolean
+ Vcpus:
+ type: integer
+ Image:
+ type: string
+ ResourceRequirements:
+ uniqueItems: false
+ x-insertionOrder: false
+ type: array
+ items:
+ $ref: '#/components/schemas/ResourceRequirement'
+ LogConfiguration:
+ $ref: '#/components/schemas/LogConfiguration'
+ MountPoints:
+ uniqueItems: false
+ x-insertionOrder: false
+ type: array
+ items:
+ $ref: '#/components/schemas/MountPoint'
+ ExecutionRoleArn:
+ type: string
+ RuntimePlatform:
+ $ref: '#/components/schemas/RuntimePlatform'
+ Volumes:
+ uniqueItems: false
+ x-insertionOrder: false
+ type: array
+ items:
+ $ref: '#/components/schemas/Volume'
+ Command:
+ uniqueItems: false
+ x-insertionOrder: true
+ type: array
+ items:
+ type: string
+ Environment:
+ uniqueItems: false
+ x-insertionOrder: true
+ type: array
+ items:
+ $ref: '#/components/schemas/Environment'
+ Ulimits:
+ uniqueItems: false
+ x-insertionOrder: false
+ type: array
+ items:
+ $ref: '#/components/schemas/Ulimit'
+ InstanceType:
+ type: string
+ EphemeralStorage:
+ $ref: '#/components/schemas/EphemeralStorage'
+ required:
+ - Image
+ MountPoint:
+ additionalProperties: false
+ type: object
+ properties:
+ ReadOnly:
+ type: boolean
+ SourceVolume:
+ type: string
+ ContainerPath:
+ type: string
+ Secret:
+ additionalProperties: false
+ type: object
+ properties:
+ ValueFrom:
+ type: string
+ Name:
+ type: string
+ required:
+ - Name
+ - ValueFrom
+ Volume:
+ additionalProperties: false
+ type: object
+ properties:
+ Host:
+ $ref: '#/components/schemas/Host'
+ EfsVolumeConfiguration:
+ $ref: '#/components/schemas/EFSVolumeConfiguration'
+ Name:
+ type: string
+ EksHostPath:
+ additionalProperties: false
+ type: object
+ properties:
+ Path:
+ type: string
+ Environment:
+ additionalProperties: false
+ type: object
+ properties:
+ Value:
+ type: string
+ Name:
+ type: string
+ ResourceRequirement:
+ additionalProperties: false
+ type: object
+ properties:
+ Type:
+ type: string
+ Value:
+ type: string
+ EphemeralStorage:
+ additionalProperties: false
+ type: object
+ properties:
+ SizeInGiB:
+ type: integer
+ required:
+ - SizeInGiB
+ EksContainer:
+ additionalProperties: false
+ type: object
+ properties:
+ Args:
+ uniqueItems: false
+ x-insertionOrder: true
+ type: array
+ items:
+ type: string
+ VolumeMounts:
+ uniqueItems: false
+ x-insertionOrder: false
+ type: array
+ items:
+ $ref: '#/components/schemas/EksContainerVolumeMount'
+ ImagePullPolicy:
+ type: string
+ Command:
+ uniqueItems: false
+ x-insertionOrder: true
+ type: array
+ items:
+ type: string
+ SecurityContext:
+ $ref: '#/components/schemas/EksContainerSecurityContext'
+ Resources:
+ $ref: '#/components/schemas/EksContainerResourceRequirements'
+ Image:
+ type: string
+ Env:
+ uniqueItems: false
+ x-insertionOrder: false
+ type: array
+ items:
+ $ref: '#/components/schemas/EksContainerEnvironmentVariable'
+ Name:
+ type: string
+ required:
+ - Image
+ RetryStrategy:
+ additionalProperties: false
+ type: object
+ properties:
+ EvaluateOnExit:
+ uniqueItems: false
+ x-insertionOrder: false
+ type: array
+ items:
+ $ref: '#/components/schemas/EvaluateOnExit'
+ Attempts:
+ type: integer
+ EksPodProperties:
+ additionalProperties: false
+ type: object
+ properties:
+ InitContainers:
+ uniqueItems: false
+ x-insertionOrder: false
+ type: array
+ items:
+ $ref: '#/components/schemas/EksContainer'
+ Volumes:
+ uniqueItems: false
+ x-insertionOrder: false
+ type: array
+ items:
+ $ref: '#/components/schemas/EksVolume'
+ DnsPolicy:
+ type: string
+ Containers:
+ uniqueItems: false
+ x-insertionOrder: false
+ type: array
+ items:
+ $ref: '#/components/schemas/EksContainer'
+ Metadata:
+ $ref: '#/components/schemas/EksMetadata'
+ ServiceAccountName:
+ type: string
+ ImagePullSecrets:
+ uniqueItems: false
+ x-insertionOrder: false
+ type: array
+ items:
+ $ref: '#/components/schemas/ImagePullSecret'
+ HostNetwork:
+ type: boolean
+ ShareProcessNamespace:
+ type: boolean
+ JobDefinition:
+ type: object
+ properties:
+ Parameters:
+ x-patternProperties:
+ .*:
+ type: string
+ additionalProperties: false
+ type: object
+ Timeout:
+ $ref: '#/components/schemas/JobTimeout'
+ JobDefinitionName:
+ type: string
+ maxLength: 128
+ PropagateTags:
+ type: boolean
+ PlatformCapabilities:
+ uniqueItems: false
+ x-insertionOrder: true
+ type: array
+ items:
+ type: string
+ EksProperties:
+ $ref: '#/components/schemas/EksProperties'
+ Type:
+ type: string
+ NodeProperties:
+ $ref: '#/components/schemas/NodeProperties'
+ SchedulingPriority:
+ type: integer
+ ContainerProperties:
+ $ref: '#/components/schemas/ContainerProperties'
+ EcsProperties:
+ $ref: '#/components/schemas/EcsProperties'
+ RetryStrategy:
+ $ref: '#/components/schemas/RetryStrategy'
+ Tags:
+ x-patternProperties:
+ .*:
+ type: string
+ description: A key-value pair to associate with a resource.
+ additionalProperties: false
+ type: object
+ required:
+ - Type
+ x-stackql-resource-name: job_definition
+ description: Resource Type definition for AWS::Batch::JobDefinition
+ x-type-name: AWS::Batch::JobDefinition
+ x-stackql-primary-identifier:
+ - JobDefinitionName
+ x-create-only-properties:
+ - JobDefinitionName
+ x-required-properties:
+ - Type
+ x-tagging:
+ permissions:
+ - Batch:TagResource
+ - Batch:UntagResource
+ taggable: true
+ tagOnCreate: true
+ tagUpdatable: true
tagProperty: /properties/Tags
+ cloudFormationSystemTags: true
x-required-permissions:
+ read:
+ - Batch:DescribeJobDefinitions
create:
- - Batch:CreateComputeEnvironment
+ - Batch:RegisterJobDefinition
- Batch:TagResource
- - Batch:DescribeComputeEnvironments
- - iam:CreateServiceLinkedRole
+ - Batch:DescribeJobDefinitions
- Iam:PassRole
- - Eks:DescribeCluster
- read:
- - Batch:DescribeComputeEnvironments
update:
- - Batch:UpdateComputeEnvironment
- - Batch:DescribeComputeEnvironments
+ - Batch:DescribeJobDefinitions
+ - Batch:RegisterJobDefinition
+ - Batch:DeregisterJobDefinition
- Batch:TagResource
- - Batch:UnTagResource
+ - Batch:UntagResource
- Iam:PassRole
- - Eks:DescribeCluster
+ list:
+ - Batch:DescribeJobDefinitions
delete:
- - Batch:DeleteComputeEnvironment
- - Batch:DescribeComputeEnvironments
- - Batch:UpdateComputeEnvironment
+ - Batch:DescribeJobDefinitions
+ - Batch:DeregisterJobDefinition
- Iam:PassRole
- - Eks:DescribeCluster
- list:
- - Batch:DescribeComputeEnvironments
ResourceArn:
description: ARN of the Scheduling Policy.
type: string
@@ -693,6 +1575,9 @@ components:
tagUpdatable: false
cloudFormationSystemTags: false
tagProperty: /properties/Tags
+ permissions:
+ - Batch:TagResource
+ - Batch:UntagResource
x-required-permissions:
create:
- Batch:CreateJobQueue
@@ -833,10 +1718,69 @@ components:
type: integer
EksConfiguration:
$ref: '#/components/schemas/EksConfiguration'
+ Context:
+ type: string
x-stackQL-stringOnly: true
x-title: CreateComputeEnvironmentRequest
type: object
required: []
+ CreateJobDefinitionRequest:
+ properties:
+ ClientToken:
+ type: string
+ RoleArn:
+ type: string
+ TypeName:
+ type: string
+ TypeVersionId:
+ type: string
+ DesiredState:
+ type: object
+ properties:
+ Parameters:
+ x-patternProperties:
+ .*:
+ type: string
+ additionalProperties: false
+ type: object
+ Timeout:
+ $ref: '#/components/schemas/JobTimeout'
+ JobDefinitionName:
+ type: string
+ maxLength: 128
+ PropagateTags:
+ type: boolean
+ PlatformCapabilities:
+ uniqueItems: false
+ x-insertionOrder: true
+ type: array
+ items:
+ type: string
+ EksProperties:
+ $ref: '#/components/schemas/EksProperties'
+ Type:
+ type: string
+ NodeProperties:
+ $ref: '#/components/schemas/NodeProperties'
+ SchedulingPriority:
+ type: integer
+ ContainerProperties:
+ $ref: '#/components/schemas/ContainerProperties'
+ EcsProperties:
+ $ref: '#/components/schemas/EcsProperties'
+ RetryStrategy:
+ $ref: '#/components/schemas/RetryStrategy'
+ Tags:
+ x-patternProperties:
+ .*:
+ type: string
+ description: A key-value pair to associate with a resource.
+ additionalProperties: false
+ type: object
+ x-stackQL-stringOnly: true
+ x-title: CreateJobDefinitionRequest
+ type: object
+ required: []
CreateJobQueueRequest:
properties:
ClientToken:
@@ -1003,7 +1947,8 @@ components:
JSON_EXTRACT(Properties, '$.Type') as type,
JSON_EXTRACT(Properties, '$.UpdatePolicy') as update_policy,
JSON_EXTRACT(Properties, '$.UnmanagedvCpus') as unmanagedv_cpus,
- JSON_EXTRACT(Properties, '$.EksConfiguration') as eks_configuration
+ JSON_EXTRACT(Properties, '$.EksConfiguration') as eks_configuration,
+ JSON_EXTRACT(Properties, '$.Context') as context
FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::Batch::ComputeEnvironment'
AND data__Identifier = ''
AND region = 'us-east-1'
@@ -1022,7 +1967,8 @@ components:
JSON_EXTRACT(detail.Properties, '$.Type') as type,
JSON_EXTRACT(detail.Properties, '$.UpdatePolicy') as update_policy,
JSON_EXTRACT(detail.Properties, '$.UnmanagedvCpus') as unmanagedv_cpus,
- JSON_EXTRACT(detail.Properties, '$.EksConfiguration') as eks_configuration
+ JSON_EXTRACT(detail.Properties, '$.EksConfiguration') as eks_configuration,
+ JSON_EXTRACT(detail.Properties, '$.Context') as context
FROM aws.cloud_control.resources listing
LEFT OUTER JOIN aws.cloud_control.resource detail
ON detail.data__Identifier = listing.Identifier
@@ -1046,7 +1992,8 @@ components:
json_extract_path_text(Properties, 'Type') as type,
json_extract_path_text(Properties, 'UpdatePolicy') as update_policy,
json_extract_path_text(Properties, 'UnmanagedvCpus') as unmanagedv_cpus,
- json_extract_path_text(Properties, 'EksConfiguration') as eks_configuration
+ json_extract_path_text(Properties, 'EksConfiguration') as eks_configuration,
+ json_extract_path_text(Properties, 'Context') as context
FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::Batch::ComputeEnvironment'
AND data__Identifier = ''
AND region = 'us-east-1'
@@ -1065,7 +2012,8 @@ components:
json_extract_path_text(detail.Properties, 'Type') as type,
json_extract_path_text(detail.Properties, 'UpdatePolicy') as update_policy,
json_extract_path_text(detail.Properties, 'UnmanagedvCpus') as unmanagedv_cpus,
- json_extract_path_text(detail.Properties, 'EksConfiguration') as eks_configuration
+ json_extract_path_text(detail.Properties, 'EksConfiguration') as eks_configuration,
+ json_extract_path_text(detail.Properties, 'Context') as context
FROM aws.cloud_control.resources listing
LEFT OUTER JOIN aws.cloud_control.resource detail
ON detail.data__Identifier = listing.Identifier
@@ -1133,7 +2081,8 @@ components:
JSON_EXTRACT(detail.Properties, '$.Type') as type,
JSON_EXTRACT(detail.Properties, '$.UpdatePolicy') as update_policy,
JSON_EXTRACT(detail.Properties, '$.UnmanagedvCpus') as unmanagedv_cpus,
- JSON_EXTRACT(detail.Properties, '$.EksConfiguration') as eks_configuration
+ JSON_EXTRACT(detail.Properties, '$.EksConfiguration') as eks_configuration,
+ JSON_EXTRACT(detail.Properties, '$.Context') as context
FROM aws.cloud_control.resources listing
LEFT OUTER JOIN aws.cloud_control.resource detail
ON detail.data__Identifier = listing.Identifier
@@ -1158,7 +2107,8 @@ components:
json_extract_path_text(detail.Properties, 'Type') as type,
json_extract_path_text(detail.Properties, 'UpdatePolicy') as update_policy,
json_extract_path_text(detail.Properties, 'UnmanagedvCpus') as unmanagedv_cpus,
- json_extract_path_text(detail.Properties, 'EksConfiguration') as eks_configuration
+ json_extract_path_text(detail.Properties, 'EksConfiguration') as eks_configuration,
+ json_extract_path_text(detail.Properties, 'Context') as context
FROM aws.cloud_control.resources listing
LEFT OUTER JOIN aws.cloud_control.resource detail
ON detail.data__Identifier = listing.Identifier
@@ -1167,6 +2117,255 @@ components:
WHERE listing.data__TypeName = 'AWS::Batch::ComputeEnvironment'
AND detail.data__TypeName = 'AWS::Batch::ComputeEnvironment'
AND listing.region = 'us-east-1'
+ job_definitions:
+ name: job_definitions
+ id: aws.batch.job_definitions
+ x-cfn-schema-name: JobDefinition
+ x-cfn-type-name: AWS::Batch::JobDefinition
+ x-identifiers:
+ - JobDefinitionName
+ x-type: cloud_control
+ methods:
+ create_resource:
+ config:
+ requestBodyTranslate:
+ algorithm: naive_DesiredState
+ operation:
+ $ref: '#/paths/~1?Action=CreateResource&Version=2021-09-30&__JobDefinition&__detailTransformed=true/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::Batch::JobDefinition"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ update_resource:
+ operation:
+ $ref: '#/paths/~1?Action=UpdateResource&Version=2021-09-30/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::Batch::JobDefinition"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ delete_resource:
+ operation:
+ $ref: '#/paths/~1?Action=DeleteResource&Version=2021-09-30/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::Batch::JobDefinition"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ sqlVerbs:
+ insert:
+ - $ref: '#/components/x-stackQL-resources/job_definitions/methods/create_resource'
+ delete:
+ - $ref: '#/components/x-stackQL-resources/job_definitions/methods/delete_resource'
+ update:
+ - $ref: '#/components/x-stackQL-resources/job_definitions/methods/update_resource'
+ config:
+ views:
+ select:
+ predicate: sqlDialect == "sqlite3" && requiredParams == [ data__Identifier ]
+ ddl: |-
+ SELECT
+ region,
+ data__Identifier,
+ JSON_EXTRACT(Properties, '$.Parameters') as parameters,
+ JSON_EXTRACT(Properties, '$.Timeout') as timeout,
+ JSON_EXTRACT(Properties, '$.JobDefinitionName') as job_definition_name,
+ JSON_EXTRACT(Properties, '$.PropagateTags') as propagate_tags,
+ JSON_EXTRACT(Properties, '$.PlatformCapabilities') as platform_capabilities,
+ JSON_EXTRACT(Properties, '$.EksProperties') as eks_properties,
+ JSON_EXTRACT(Properties, '$.Type') as type,
+ JSON_EXTRACT(Properties, '$.NodeProperties') as node_properties,
+ JSON_EXTRACT(Properties, '$.SchedulingPriority') as scheduling_priority,
+ JSON_EXTRACT(Properties, '$.ContainerProperties') as container_properties,
+ JSON_EXTRACT(Properties, '$.EcsProperties') as ecs_properties,
+ JSON_EXTRACT(Properties, '$.RetryStrategy') as retry_strategy,
+ JSON_EXTRACT(Properties, '$.Tags') as tags
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::Batch::JobDefinition'
+ AND data__Identifier = ''
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "sqlite3"
+ ddl: |-
+ SELECT
+ detail.region,
+ JSON_EXTRACT(detail.Properties, '$.Parameters') as parameters,
+ JSON_EXTRACT(detail.Properties, '$.Timeout') as timeout,
+ JSON_EXTRACT(detail.Properties, '$.JobDefinitionName') as job_definition_name,
+ JSON_EXTRACT(detail.Properties, '$.PropagateTags') as propagate_tags,
+ JSON_EXTRACT(detail.Properties, '$.PlatformCapabilities') as platform_capabilities,
+ JSON_EXTRACT(detail.Properties, '$.EksProperties') as eks_properties,
+ JSON_EXTRACT(detail.Properties, '$.Type') as type,
+ JSON_EXTRACT(detail.Properties, '$.NodeProperties') as node_properties,
+ JSON_EXTRACT(detail.Properties, '$.SchedulingPriority') as scheduling_priority,
+ JSON_EXTRACT(detail.Properties, '$.ContainerProperties') as container_properties,
+ JSON_EXTRACT(detail.Properties, '$.EcsProperties') as ecs_properties,
+ JSON_EXTRACT(detail.Properties, '$.RetryStrategy') as retry_strategy,
+ JSON_EXTRACT(detail.Properties, '$.Tags') as tags
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ WHERE listing.data__TypeName = 'AWS::Batch::JobDefinition'
+ AND detail.data__TypeName = 'AWS::Batch::JobDefinition'
+ AND listing.region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres" && requiredParams == [ data__Identifier ]
+ ddl: |-
+ SELECT
+ region,
+ data__Identifier,
+ json_extract_path_text(Properties, 'Parameters') as parameters,
+ json_extract_path_text(Properties, 'Timeout') as timeout,
+ json_extract_path_text(Properties, 'JobDefinitionName') as job_definition_name,
+ json_extract_path_text(Properties, 'PropagateTags') as propagate_tags,
+ json_extract_path_text(Properties, 'PlatformCapabilities') as platform_capabilities,
+ json_extract_path_text(Properties, 'EksProperties') as eks_properties,
+ json_extract_path_text(Properties, 'Type') as type,
+ json_extract_path_text(Properties, 'NodeProperties') as node_properties,
+ json_extract_path_text(Properties, 'SchedulingPriority') as scheduling_priority,
+ json_extract_path_text(Properties, 'ContainerProperties') as container_properties,
+ json_extract_path_text(Properties, 'EcsProperties') as ecs_properties,
+ json_extract_path_text(Properties, 'RetryStrategy') as retry_strategy,
+ json_extract_path_text(Properties, 'Tags') as tags
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::Batch::JobDefinition'
+ AND data__Identifier = ''
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres"
+ ddl: |-
+ SELECT
+ detail.region,
+ json_extract_path_text(detail.Properties, 'Parameters') as parameters,
+ json_extract_path_text(detail.Properties, 'Timeout') as timeout,
+ json_extract_path_text(detail.Properties, 'JobDefinitionName') as job_definition_name,
+ json_extract_path_text(detail.Properties, 'PropagateTags') as propagate_tags,
+ json_extract_path_text(detail.Properties, 'PlatformCapabilities') as platform_capabilities,
+ json_extract_path_text(detail.Properties, 'EksProperties') as eks_properties,
+ json_extract_path_text(detail.Properties, 'Type') as type,
+ json_extract_path_text(detail.Properties, 'NodeProperties') as node_properties,
+ json_extract_path_text(detail.Properties, 'SchedulingPriority') as scheduling_priority,
+ json_extract_path_text(detail.Properties, 'ContainerProperties') as container_properties,
+ json_extract_path_text(detail.Properties, 'EcsProperties') as ecs_properties,
+ json_extract_path_text(detail.Properties, 'RetryStrategy') as retry_strategy,
+ json_extract_path_text(detail.Properties, 'Tags') as tags
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ WHERE listing.data__TypeName = 'AWS::Batch::JobDefinition'
+ AND detail.data__TypeName = 'AWS::Batch::JobDefinition'
+ AND listing.region = 'us-east-1'
+ job_definitions_list_only:
+ name: job_definitions_list_only
+ id: aws.batch.job_definitions_list_only
+ x-cfn-schema-name: JobDefinition
+ x-cfn-type-name: AWS::Batch::JobDefinition
+ x-identifiers:
+ - JobDefinitionName
+ x-type: cloud_control_view
+ methods: {}
+ sqlVerbs:
+ insert: []
+ delete: []
+ update: []
+ config:
+ views:
+ select:
+ predicate: sqlDialect == "sqlite3"
+ ddl: |-
+ SELECT
+ region,
+ JSON_EXTRACT(Properties, '$.JobDefinitionName') as job_definition_name
+ FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::Batch::JobDefinition'
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres"
+ ddl: |-
+ SELECT
+ region,
+ json_extract_path_text(Properties, 'JobDefinitionName') as job_definition_name
+ FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::Batch::JobDefinition'
+ AND region = 'us-east-1'
+ job_definition_tags:
+ name: job_definition_tags
+ id: aws.batch.job_definition_tags
+ x-cfn-schema-name: JobDefinition
+ x-cfn-type-name: AWS::Batch::JobDefinition
+ x-type: cloud_control_view
+ methods: {}
+ sqlVerbs:
+ insert: []
+ delete: []
+ update: []
+ config:
+ views:
+ select:
+ predicate: sqlDialect == "sqlite3"
+ ddl: |-
+ SELECT
+ detail.region,
+ JSON_EXTRACT(json_each.value, '$.Key') as tag_key,
+ JSON_EXTRACT(json_each.value, '$.Value') as tag_value,
+ JSON_EXTRACT(detail.Properties, '$.Parameters') as parameters,
+ JSON_EXTRACT(detail.Properties, '$.Timeout') as timeout,
+ JSON_EXTRACT(detail.Properties, '$.JobDefinitionName') as job_definition_name,
+ JSON_EXTRACT(detail.Properties, '$.PropagateTags') as propagate_tags,
+ JSON_EXTRACT(detail.Properties, '$.PlatformCapabilities') as platform_capabilities,
+ JSON_EXTRACT(detail.Properties, '$.EksProperties') as eks_properties,
+ JSON_EXTRACT(detail.Properties, '$.Type') as type,
+ JSON_EXTRACT(detail.Properties, '$.NodeProperties') as node_properties,
+ JSON_EXTRACT(detail.Properties, '$.SchedulingPriority') as scheduling_priority,
+ JSON_EXTRACT(detail.Properties, '$.ContainerProperties') as container_properties,
+ JSON_EXTRACT(detail.Properties, '$.EcsProperties') as ecs_properties,
+ JSON_EXTRACT(detail.Properties, '$.RetryStrategy') as retry_strategy
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ ,json_each(JSON_EXTRACT(detail.Properties, '$.Tags'))
+ WHERE listing.data__TypeName = 'AWS::Batch::JobDefinition'
+ AND detail.data__TypeName = 'AWS::Batch::JobDefinition'
+ AND listing.region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres"
+ ddl: |-
+ SELECT
+ detail.region,
+ json_extract_path_text(json_each.value, 'Key') as tag_key,
+ json_extract_path_text(json_each.value, 'Value') as tag_value,
+ json_extract_path_text(detail.Properties, 'Parameters') as parameters,
+ json_extract_path_text(detail.Properties, 'Timeout') as timeout,
+ json_extract_path_text(detail.Properties, 'JobDefinitionName') as job_definition_name,
+ json_extract_path_text(detail.Properties, 'PropagateTags') as propagate_tags,
+ json_extract_path_text(detail.Properties, 'PlatformCapabilities') as platform_capabilities,
+ json_extract_path_text(detail.Properties, 'EksProperties') as eks_properties,
+ json_extract_path_text(detail.Properties, 'Type') as type,
+ json_extract_path_text(detail.Properties, 'NodeProperties') as node_properties,
+ json_extract_path_text(detail.Properties, 'SchedulingPriority') as scheduling_priority,
+ json_extract_path_text(detail.Properties, 'ContainerProperties') as container_properties,
+ json_extract_path_text(detail.Properties, 'EcsProperties') as ecs_properties,
+ json_extract_path_text(detail.Properties, 'RetryStrategy') as retry_strategy
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ ,json_array_elements_text(json_extract_path_text(detail.Properties, 'Tags'))
+ WHERE listing.data__TypeName = 'AWS::Batch::JobDefinition'
+ AND detail.data__TypeName = 'AWS::Batch::JobDefinition'
+ AND listing.region = 'us-east-1'
job_queues:
name: job_queues
id: aws.batch.job_queues
@@ -1766,6 +2965,48 @@ paths:
schema:
$ref: '#/components/x-cloud-control-schemas/ProgressEvent'
description: Success
+ /?Action=CreateResource&Version=2021-09-30&__JobDefinition&__detailTransformed=true:
+ parameters:
+ - $ref: '#/components/parameters/X-Amz-Content-Sha256'
+ - $ref: '#/components/parameters/X-Amz-Date'
+ - $ref: '#/components/parameters/X-Amz-Algorithm'
+ - $ref: '#/components/parameters/X-Amz-Credential'
+ - $ref: '#/components/parameters/X-Amz-Security-Token'
+ - $ref: '#/components/parameters/X-Amz-Signature'
+ - $ref: '#/components/parameters/X-Amz-SignedHeaders'
+ post:
+ operationId: CreateJobDefinition
+ parameters:
+ - description: Action Header
+ in: header
+ name: X-Amz-Target
+ required: false
+ schema:
+ default: CloudApiService.CreateResource
+ enum:
+ - CloudApiService.CreateResource
+ type: string
+ - in: header
+ name: Content-Type
+ required: false
+ schema:
+ default: application/x-amz-json-1.0
+ enum:
+ - application/x-amz-json-1.0
+ type: string
+ requestBody:
+ content:
+ application/x-amz-json-1.0:
+ schema:
+ $ref: '#/components/schemas/CreateJobDefinitionRequest'
+ required: true
+ responses:
+ '200':
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/x-cloud-control-schemas/ProgressEvent'
+ description: Success
/?Action=CreateResource&Version=2021-09-30&__JobQueue&__detailTransformed=true:
parameters:
- $ref: '#/components/parameters/X-Amz-Content-Sha256'
diff --git a/providers/src/aws/v00.00.00000/services/bedrock.yaml b/providers/src/aws/v00.00.00000/services/bedrock.yaml
index 6fc0b01d..f445a301 100644
--- a/providers/src/aws/v00.00.00000/services/bedrock.yaml
+++ b/providers/src/aws/v00.00.00000/services/bedrock.yaml
@@ -432,6 +432,7 @@ components:
description: Action Group Signature for a BuiltIn Action
enum:
- AMAZON.UserInput
+ - AMAZON.CodeInterpreter
ActionGroupState:
type: string
description: State of the action group
@@ -525,6 +526,8 @@ components:
description: Description of function
Parameters:
$ref: '#/components/schemas/ParameterMap'
+ RequireConfirmation:
+ $ref: '#/components/schemas/RequireConfirmation'
required:
- Name
additionalProperties: false
@@ -542,6 +545,20 @@ components:
required:
- Functions
additionalProperties: false
+ GuardrailConfiguration:
+ type: object
+ description: Configuration for a guardrail
+ properties:
+ GuardrailIdentifier:
+ type: string
+ maxLength: 2048
+ pattern: ^(([a-z0-9]+)|(arn:aws(-[^:]+)?:bedrock:[a-z0-9-]{1,20}:[0-9]{12}:guardrail/[a-z0-9]+))$
+ description: Identifier for the guardrail, could be the id or the arn
+ GuardrailVersion:
+ type: string
+ pattern: ^(([0-9]{1,8})|(DRAFT))$
+ description: Version of the guardrail
+ additionalProperties: false
InferenceConfiguration:
type: object
description: Configuration for inference in prompt configuration
@@ -658,6 +675,12 @@ components:
- ORCHESTRATION
- POST_PROCESSING
- KNOWLEDGE_BASE_RESPONSE_GENERATION
+ RequireConfirmation:
+ type: string
+ description: ENUM to check if action requires user confirmation
+ enum:
+ - ENABLED
+ - DISABLED
S3Identifier:
type: object
description: The identifier for the S3 resource.
@@ -765,8 +788,10 @@ components:
type: string
maxLength: 2048
minLength: 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][_-]?)+)$
+ 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}))|([0-9]{12}:(inference-profile|application-inference-profile)/[a-zA-Z0-9-:.]+))|(([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][_-]?)+)$
description: ARN or name of a Bedrock model.
+ GuardrailConfiguration:
+ $ref: '#/components/schemas/GuardrailConfiguration'
IdleSessionTTLInSeconds:
type: number
maximum: 3600
@@ -775,7 +800,6 @@ components:
Instruction:
type: string
minLength: 40
- maxLength: 4000
description: Instruction for the agent.
KnowledgeBases:
type: array
@@ -848,6 +872,9 @@ components:
- bedrock:ListAgentActionGroups
- bedrock:TagResource
- bedrock:ListTagsForResource
+ - bedrock:CreateGuardrail
+ - bedrock:CreateGuardrailVersion
+ - bedrock:GetGuardrail
- iam:PassRole
read:
- bedrock:GetAgent
@@ -856,6 +883,8 @@ components:
- bedrock:GetAgentKnowledgeBase
- bedrock:ListAgentKnowledgeBases
- bedrock:ListTagsForResource
+ - bedrock:GetGuardrail
+ - kms:Decrypt
update:
- bedrock:GetAgent
- bedrock:UpdateAgent
@@ -873,12 +902,18 @@ components:
- bedrock:TagResource
- bedrock:UntagResource
- bedrock:ListTagsForResource
+ - bedrock:UpdateGuardrail
+ - bedrock:GetGuardrail
+ - kms:Decrypt
- iam:PassRole
delete:
- bedrock:GetAgent
- bedrock:DeleteAgent
+ - bedrock:DeleteGuardrail
+ - bedrock:GetGuardrail
list:
- bedrock:ListAgents
+ - bedrock:ListGuardrails
AgentAliasHistoryEvent:
type: object
description: History event for an alias for an Agent.
@@ -1022,6 +1057,194 @@ components:
- bedrock:DeleteAgentAlias
list:
- bedrock:ListAgentAliases
+ InferenceProfileModelSource:
+ description: Various ways to encode a list of models in a CreateInferenceProfile request
+ oneOf:
+ - type: object
+ title: CopyFrom
+ properties:
+ CopyFrom:
+ type: string
+ maxLength: 2048
+ minLength: 1
+ pattern: ^arn:aws(|-us-gov|-cn|-iso|-iso-b):bedrock:(|[0-9a-z-]{0,20}):(|[0-9]{12}):(inference-profile|foundation-model)/[a-zA-Z0-9-:.]+$
+ description: |-
+ Source arns for a custom inference profile to copy its regional load balancing config from. This
+ can either be a foundation model or predefined inference profile ARN.
+ required:
+ - CopyFrom
+ additionalProperties: false
+ InferenceProfileStatus:
+ type: string
+ description: Status of the Inference Profile
+ enum:
+ - ACTIVE
+ InferenceProfileType:
+ type: string
+ description: Type of the Inference Profile
+ enum:
+ - APPLICATION
+ - SYSTEM_DEFINED
+ InferenceProfileModel:
+ type: object
+ description: Model configuration
+ properties:
+ ModelArn:
+ 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}$
+ description: ARN for Foundation Models in Bedrock. These models can be used as base models for model customization jobs
+ additionalProperties: false
+ Tag:
+ type: object
+ description: Definition of the key/value pair for a tag
+ properties:
+ Key:
+ type: string
+ maxLength: 128
+ minLength: 1
+ pattern: ^[a-zA-Z0-9\s._:/=+@-]*$
+ description: Tag Key
+ Value:
+ type: string
+ maxLength: 256
+ minLength: 0
+ pattern: ^[a-zA-Z0-9\s._:/=+@-]*$
+ description: Tag Value
+ required:
+ - Key
+ - Value
+ additionalProperties: false
+ Unit:
+ type: object
+ additionalProperties: false
+ ApplicationInferenceProfile:
+ type: object
+ properties:
+ CreatedAt:
+ type: string
+ description: Time Stamp
+ format: date-time
+ Description:
+ type: string
+ maxLength: 200
+ minLength: 1
+ pattern: ^([0-9a-zA-Z:.][ _-]?)+$
+ description: Description of the inference profile
+ InferenceProfileArn:
+ type: string
+ maxLength: 2048
+ minLength: 1
+ pattern: ^arn:aws(|-us-gov|-cn|-iso|-iso-b):bedrock:(|[0-9a-z-]{0,20}):(|[0-9]{12}):(inference-profile|application-inference-profile)/[a-zA-Z0-9-:.]+$
+ InferenceProfileId:
+ type: string
+ maxLength: 64
+ minLength: 1
+ pattern: ^[a-zA-Z0-9-:.]+$
+ InferenceProfileIdentifier:
+ type: string
+ maxLength: 2048
+ minLength: 1
+ pattern: ^(arn:aws(|-us-gov|-cn|-iso|-iso-b):bedrock:(|[0-9a-z-]{0,20}):(|[0-9]{12}):(inference-profile|application-inference-profile)/)?[a-zA-Z0-9-:.]+$
+ description: Inference profile identifier. Supports both system-defined inference profile ids, and inference profile ARNs.
+ InferenceProfileName:
+ type: string
+ maxLength: 64
+ minLength: 1
+ pattern: ^([0-9a-zA-Z][ _-]?)+$
+ ModelSource:
+ $ref: '#/components/schemas/InferenceProfileModelSource'
+ Models:
+ type: array
+ items:
+ $ref: '#/components/schemas/InferenceProfileModel'
+ maxItems: 5
+ minItems: 1
+ description: List of model configuration
+ Status:
+ $ref: '#/components/schemas/InferenceProfileStatus'
+ Tags:
+ type: array
+ items:
+ $ref: '#/components/schemas/Tag'
+ maxItems: 200
+ minItems: 0
+ description: List of Tags
+ Type:
+ $ref: '#/components/schemas/InferenceProfileType'
+ UpdatedAt:
+ type: string
+ description: Time Stamp
+ format: date-time
+ required:
+ - InferenceProfileName
+ x-stackql-resource-name: application_inference_profile
+ description: Definition of AWS::Bedrock::ApplicationInferenceProfile Resource Type
+ x-type-name: AWS::Bedrock::ApplicationInferenceProfile
+ x-stackql-primary-identifier:
+ - InferenceProfileIdentifier
+ x-create-only-properties:
+ - Description
+ - InferenceProfileName
+ - ModelSource
+ x-write-only-properties:
+ - ModelSource
+ x-read-only-properties:
+ - Models
+ - InferenceProfileArn
+ - InferenceProfileId
+ - InferenceProfileIdentifier
+ - Status
+ - Type
+ - CreatedAt
+ - UpdatedAt
+ x-required-properties:
+ - InferenceProfileName
+ x-tagging:
+ cloudFormationSystemTags: true
+ tagOnCreate: true
+ tagProperty: /properties/Tags
+ tagUpdatable: true
+ taggable: true
+ permissions:
+ - bedrock:TagResource
+ - bedrock:UntagResource
+ - bedrock:ListTagsForResource
+ x-required-permissions:
+ create:
+ - bedrock:CreateInferenceProfile
+ - bedrock:GetInferenceProfile
+ - bedrock:TagResource
+ - bedrock:ListTagsForResource
+ read:
+ - bedrock:GetInferenceProfile
+ - bedrock:ListTagsForResource
+ update:
+ - bedrock:GetInferenceProfile
+ - bedrock:ListTagsForResource
+ - bedrock:TagResource
+ - bedrock:UntagResource
+ delete:
+ - bedrock:DeleteInferenceProfile
+ - bedrock:GetInferenceProfile
+ list:
+ - bedrock:ListInferenceProfiles
+ BedrockFoundationModelConfiguration:
+ type: object
+ description: Settings for a foundation model used to parse documents for a data source.
+ properties:
+ ModelArn:
+ type: string
+ maxLength: 2048
+ minLength: 1
+ pattern: ^arn:aws(-[^:]+)?:bedrock:[a-z0-9-]{1,20}::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})|(arn:aws(|-us-gov|-cn|-iso|-iso-b):bedrock:(|[0-9a-z-]{1,20}):(|[0-9]{12}):(inference-profile|application-inference-profile)/[a-zA-Z0-9-:.]+)$
+ description: The model's ARN.
+ ParsingPrompt:
+ $ref: '#/components/schemas/ParsingPrompt'
+ ParsingModality:
+ $ref: '#/components/schemas/ParsingModality'
+ required:
+ - ModelArn
+ additionalProperties: false
ChunkingConfiguration:
type: object
description: Details about how to chunk the documents in the data source. A chunk refers to an excerpt from a data source that is returned when the knowledge base that it belongs to is queried.
@@ -1030,6 +1253,10 @@ components:
$ref: '#/components/schemas/ChunkingStrategy'
FixedSizeChunkingConfiguration:
$ref: '#/components/schemas/FixedSizeChunkingConfiguration'
+ HierarchicalChunkingConfiguration:
+ $ref: '#/components/schemas/HierarchicalChunkingConfiguration'
+ SemanticChunkingConfiguration:
+ $ref: '#/components/schemas/SemanticChunkingConfiguration'
required:
- ChunkingStrategy
additionalProperties: false
@@ -1039,6 +1266,26 @@ components:
enum:
- FIXED_SIZE
- NONE
+ - HIERARCHICAL
+ - SEMANTIC
+ CustomTransformationConfiguration:
+ type: object
+ description: Settings for customizing steps in the data source content ingestion pipeline.
+ properties:
+ IntermediateStorage:
+ $ref: '#/components/schemas/IntermediateStorage'
+ Transformations:
+ type: array
+ items:
+ $ref: '#/components/schemas/Transformation'
+ maxItems: 1
+ minItems: 1
+ description: A list of Lambda functions that process documents.
+ x-insertionOrder: false
+ required:
+ - IntermediateStorage
+ - Transformations
+ additionalProperties: false
DataSourceConfiguration:
type: object
description: Specifies a raw data source location to ingest.
@@ -1047,9 +1294,16 @@ components:
$ref: '#/components/schemas/DataSourceType'
S3Configuration:
$ref: '#/components/schemas/S3DataSourceConfiguration'
+ ConfluenceConfiguration:
+ $ref: '#/components/schemas/ConfluenceDataSourceConfiguration'
+ SalesforceConfiguration:
+ $ref: '#/components/schemas/SalesforceDataSourceConfiguration'
+ SharePointConfiguration:
+ $ref: '#/components/schemas/SharePointDataSourceConfiguration'
+ WebConfiguration:
+ $ref: '#/components/schemas/WebDataSourceConfiguration'
required:
- Type
- - S3Configuration
additionalProperties: false
DataSourceStatus:
type: string
@@ -1063,6 +1317,11 @@ components:
description: The type of the data source location.
enum:
- S3
+ - CONFLUENCE
+ - SALESFORCE
+ - SHAREPOINT
+ - WEB
+ - CUSTOM
DataDeletionPolicy:
type: string
description: The deletion policy for the data source.
@@ -1086,9 +1345,93 @@ components:
- MaxTokens
- OverlapPercentage
additionalProperties: false
+ HierarchicalChunkingConfiguration:
+ type: object
+ description: Configurations for when you choose hierarchical chunking. If you set the chunkingStrategy as NONE, exclude this field.
+ properties:
+ LevelConfigurations:
+ type: array
+ items:
+ $ref: '#/components/schemas/HierarchicalChunkingLevelConfiguration'
+ maxItems: 2
+ minItems: 2
+ description: Token settings for each layer.
+ x-insertionOrder: false
+ OverlapTokens:
+ type: integer
+ minimum: 1
+ description: The number of tokens to repeat across chunks in the same layer.
+ required:
+ - LevelConfigurations
+ - OverlapTokens
+ additionalProperties: false
+ HierarchicalChunkingLevelConfiguration:
+ type: object
+ description: Token settings for a layer in a hierarchical chunking configuration.
+ properties:
+ MaxTokens:
+ type: integer
+ minimum: 1
+ maximum: 8192
+ description: The maximum number of tokens that a chunk can contain in this layer.
+ required:
+ - MaxTokens
+ additionalProperties: false
+ IntermediateStorage:
+ type: object
+ description: A location for storing content from data sources temporarily as it is processed by custom components in the ingestion pipeline.
+ properties:
+ S3Location:
+ $ref: '#/components/schemas/S3Location'
+ required:
+ - S3Location
+ additionalProperties: false
+ ParsingConfiguration:
+ type: object
+ description: Settings for parsing document contents
+ properties:
+ ParsingStrategy:
+ $ref: '#/components/schemas/ParsingStrategy'
+ BedrockFoundationModelConfiguration:
+ $ref: '#/components/schemas/BedrockFoundationModelConfiguration'
+ BedrockDataAutomationConfiguration:
+ $ref: '#/components/schemas/BedrockDataAutomationConfiguration'
+ required:
+ - ParsingStrategy
+ additionalProperties: false
+ ParsingModality:
+ type: string
+ description: Determine how will parsed content be stored.
+ enum:
+ - MULTIMODAL
+ BedrockDataAutomationConfiguration:
+ type: object
+ description: Settings for a Bedrock Data Automation used to parse documents for a data source.
+ properties:
+ ParsingModality:
+ $ref: '#/components/schemas/ParsingModality'
+ additionalProperties: false
+ ParsingPrompt:
+ type: object
+ description: Instructions for interpreting the contents of a document.
+ properties:
+ ParsingPromptText:
+ type: string
+ maxLength: 10000
+ minLength: 1
+ description: Instructions for interpreting the contents of a document.
+ required:
+ - ParsingPromptText
+ additionalProperties: false
+ ParsingStrategy:
+ type: string
+ description: The parsing strategy for the data source.
+ enum:
+ - BEDROCK_FOUNDATION_MODEL
+ - BEDROCK_DATA_AUTOMATION
S3DataSourceConfiguration:
type: object
- description: Contains information about the S3 configuration of the data source.
+ description: The configuration information to connect to Amazon S3 as your data source.
properties:
BucketArn:
type: string
@@ -1116,6 +1459,86 @@ components:
required:
- BucketArn
additionalProperties: false
+ ConfluenceDataSourceConfiguration:
+ type: object
+ description: The configuration information to connect to Confluence as your data source.
+ properties:
+ SourceConfiguration:
+ $ref: '#/components/schemas/ConfluenceSourceConfiguration'
+ CrawlerConfiguration:
+ $ref: '#/components/schemas/ConfluenceCrawlerConfiguration'
+ required:
+ - SourceConfiguration
+ additionalProperties: false
+ SalesforceDataSourceConfiguration:
+ type: object
+ description: The configuration information to connect to Salesforce as your data source.
+ properties:
+ SourceConfiguration:
+ $ref: '#/components/schemas/SalesforceSourceConfiguration'
+ CrawlerConfiguration:
+ $ref: '#/components/schemas/SalesforceCrawlerConfiguration'
+ required:
+ - SourceConfiguration
+ additionalProperties: false
+ SharePointDataSourceConfiguration:
+ type: object
+ description: The configuration information to connect to SharePoint as your data source.
+ properties:
+ SourceConfiguration:
+ $ref: '#/components/schemas/SharePointSourceConfiguration'
+ CrawlerConfiguration:
+ $ref: '#/components/schemas/SharePointCrawlerConfiguration'
+ required:
+ - SourceConfiguration
+ additionalProperties: false
+ WebDataSourceConfiguration:
+ type: object
+ description: Configures a web data source location.
+ properties:
+ SourceConfiguration:
+ $ref: '#/components/schemas/WebSourceConfiguration'
+ CrawlerConfiguration:
+ $ref: '#/components/schemas/WebCrawlerConfiguration'
+ required:
+ - SourceConfiguration
+ additionalProperties: false
+ S3Location:
+ type: object
+ description: An Amazon S3 location.
+ properties:
+ URI:
+ type: string
+ maxLength: 2048
+ minLength: 1
+ pattern: ^s3://.{1,128}$
+ description: The location's URI
+ required:
+ - URI
+ additionalProperties: false
+ SemanticChunkingConfiguration:
+ type: object
+ description: Configurations for when you choose semantic chunking. If you set the chunkingStrategy as NONE, exclude this field.
+ properties:
+ BreakpointPercentileThreshold:
+ type: integer
+ minimum: 50
+ maximum: 99
+ description: The dissimilarity threshold for splitting chunks.
+ BufferSize:
+ type: integer
+ minimum: 0
+ maximum: 1
+ description: The buffer size.
+ MaxTokens:
+ type: integer
+ minimum: 1
+ description: The maximum number of tokens that a chunk can contain.
+ required:
+ - BreakpointPercentileThreshold
+ - BufferSize
+ - MaxTokens
+ additionalProperties: false
ServerSideEncryptionConfiguration:
type: object
description: Contains details about the server-side encryption for the data source.
@@ -1127,33 +1550,316 @@ components:
pattern: ^arn:aws(|-cn|-us-gov):kms:[a-zA-Z0-9-]*:[0-9]{12}:key/[a-zA-Z0-9-]{36}$
description: The ARN of the AWS KMS key used to encrypt the resource.
additionalProperties: false
+ Transformation:
+ type: object
+ description: A Lambda function that processes documents.
+ properties:
+ StepToApply:
+ type: string
+ description: When the service applies the transformation.
+ enum:
+ - POST_CHUNKING
+ TransformationFunction:
+ $ref: '#/components/schemas/TransformationFunction'
+ required:
+ - StepToApply
+ - TransformationFunction
+ additionalProperties: false
+ TransformationFunction:
+ type: object
+ description: A Lambda function that processes documents.
+ properties:
+ TransformationLambdaConfiguration:
+ $ref: '#/components/schemas/TransformationLambdaConfiguration'
+ required:
+ - TransformationLambdaConfiguration
+ additionalProperties: false
+ TransformationLambdaConfiguration:
+ type: object
+ description: A Lambda function that processes documents.
+ properties:
+ LambdaArn:
+ type: string
+ maxLength: 2048
+ minLength: 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-_]+))?$
+ description: The function's ARN identifier.
+ required:
+ - LambdaArn
+ additionalProperties: false
VectorIngestionConfiguration:
type: object
description: Details about how to chunk the documents in the data source. A chunk refers to an excerpt from a data source that is returned when the knowledge base that it belongs to is queried.
properties:
ChunkingConfiguration:
$ref: '#/components/schemas/ChunkingConfiguration'
+ CustomTransformationConfiguration:
+ $ref: '#/components/schemas/CustomTransformationConfiguration'
+ ParsingConfiguration:
+ $ref: '#/components/schemas/ParsingConfiguration'
additionalProperties: false
- DataSource:
+ ConfluenceSourceConfiguration:
type: object
+ description: The endpoint information to connect to your Confluence data source.
properties:
- DataSourceConfiguration:
- $ref: '#/components/schemas/DataSourceConfiguration'
- DataSourceId:
- type: string
- pattern: ^[0-9a-zA-Z]{10}$
- description: Identifier for a resource.
- Description:
+ HostUrl:
type: string
- maxLength: 200
+ maxLength: 2048
minLength: 1
- description: Description of the Resource.
- KnowledgeBaseId:
+ pattern: ^https://[A-Za-z0-9][^\s]*$
+ description: The Confluence host URL or instance URL.
+ HostType:
+ type: string
+ description: The supported host type, whether online/cloud or server/on-premises.
+ enum:
+ - SAAS
+ AuthType:
+ type: string
+ description: The supported authentication type to authenticate and connect to your Confluence instance.
+ enum:
+ - BASIC
+ - OAUTH2_CLIENT_CREDENTIALS
+ CredentialsSecretArn:
type: string
- pattern: ^[0-9a-zA-Z]{10}$
- description: The unique identifier of the knowledge base to which to add the data source.
- DataSourceStatus:
- $ref: '#/components/schemas/DataSourceStatus'
+ description: The Amazon Resource Name of an AWS Secrets Manager secret that stores your authentication credentials for your Confluence instance URL. For more information on the key-value pairs that must be included in your secret, depending on your authentication type, see Confluence connection configuration.
+ pattern: ^arn:aws(|-cn|-us-gov):secretsmanager:[a-z0-9-]{1,20}:([0-9]{12}|):secret:[a-zA-Z0-9!/_+=.@-]{1,512}$
+ required:
+ - HostUrl
+ - HostType
+ - AuthType
+ - CredentialsSecretArn
+ additionalProperties: false
+ ConfluenceCrawlerConfiguration:
+ type: object
+ description: The configuration of the Confluence content. For example, configuring specific types of Confluence content.
+ properties:
+ FilterConfiguration:
+ $ref: '#/components/schemas/CrawlFilterConfiguration'
+ additionalProperties: false
+ SalesforceSourceConfiguration:
+ type: object
+ description: The endpoint information to connect to your Salesforce data source.
+ properties:
+ HostUrl:
+ type: string
+ maxLength: 2048
+ minLength: 1
+ pattern: ^https://[A-Za-z0-9][^\s]*$
+ description: The Salesforce host URL or instance URL.
+ AuthType:
+ type: string
+ description: The supported authentication type to authenticate and connect to your Salesforce instance.
+ enum:
+ - OAUTH2_CLIENT_CREDENTIALS
+ CredentialsSecretArn:
+ type: string
+ description: The Amazon Resource Name of an AWS Secrets Manager secret that stores your authentication credentials for your Salesforce instance URL. For more information on the key-value pairs that must be included in your secret, depending on your authentication type, see Salesforce connection configuration.
+ pattern: ^arn:aws(|-cn|-us-gov):secretsmanager:[a-z0-9-]{1,20}:([0-9]{12}|):secret:[a-zA-Z0-9!/_+=.@-]{1,512}$
+ required:
+ - HostUrl
+ - AuthType
+ - CredentialsSecretArn
+ additionalProperties: false
+ SalesforceCrawlerConfiguration:
+ type: object
+ description: The configuration of filtering the Salesforce content. For example, configuring regular expression patterns to include or exclude certain content.
+ properties:
+ FilterConfiguration:
+ $ref: '#/components/schemas/CrawlFilterConfiguration'
+ additionalProperties: false
+ SharePointSourceConfiguration:
+ type: object
+ description: The endpoint information to connect to your SharePoint data source.
+ properties:
+ SiteUrls:
+ type: array
+ description: A list of one or more SharePoint site URLs.
+ items:
+ type: string
+ pattern: ^https://[A-Za-z0-9][^\s]*$
+ description: A forced-HTTPS web url.
+ maxItems: 100
+ minItems: 1
+ x-insertionOrder: false
+ HostType:
+ type: string
+ description: The supported host type, whether online/cloud or server/on-premises.
+ enum:
+ - ONLINE
+ AuthType:
+ type: string
+ description: The supported authentication type to authenticate and connect to your SharePoint site/sites.
+ enum:
+ - OAUTH2_CLIENT_CREDENTIALS
+ CredentialsSecretArn:
+ type: string
+ description: The Amazon Resource Name of an AWS Secrets Manager secret that stores your authentication credentials for your SharePoint site/sites. For more information on the key-value pairs that must be included in your secret, depending on your authentication type, see SharePoint connection configuration.
+ pattern: ^arn:aws(|-cn|-us-gov):secretsmanager:[a-z0-9-]{1,20}:([0-9]{12}|):secret:[a-zA-Z0-9!/_+=.@-]{1,512}$
+ TenantId:
+ type: string
+ description: The identifier of your Microsoft 365 tenant.
+ pattern: ^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$
+ Domain:
+ type: string
+ description: The domain of your SharePoint instance or site URL/URLs.
+ maxLength: 50
+ minLength: 1
+ required:
+ - Domain
+ - SiteUrls
+ - HostType
+ - AuthType
+ - CredentialsSecretArn
+ additionalProperties: false
+ SharePointCrawlerConfiguration:
+ type: object
+ description: The configuration of the SharePoint content. For example, configuring specific types of SharePoint content.
+ properties:
+ FilterConfiguration:
+ $ref: '#/components/schemas/CrawlFilterConfiguration'
+ additionalProperties: false
+ WebSourceConfiguration:
+ type: object
+ description: A web source configuration.
+ properties:
+ UrlConfiguration:
+ $ref: '#/components/schemas/UrlConfiguration'
+ required:
+ - UrlConfiguration
+ additionalProperties: false
+ UrlConfiguration:
+ type: object
+ description: A url configuration.
+ properties:
+ SeedUrls:
+ $ref: '#/components/schemas/SeedUrls'
+ required:
+ - SeedUrls
+ additionalProperties: false
+ SeedUrl:
+ type: object
+ description: A seed url object.
+ properties:
+ Url:
+ type: string
+ pattern: ^https?://[A-Za-z0-9][^\s]*$
+ description: A web url.
+ required:
+ - Url
+ additionalProperties: false
+ SeedUrls:
+ type: array
+ description: A list of web urls.
+ items:
+ $ref: '#/components/schemas/SeedUrl'
+ maxItems: 100
+ minItems: 1
+ x-insertionOrder: false
+ WebCrawlerConfiguration:
+ type: object
+ description: Configuration for the web crawler.
+ properties:
+ CrawlerLimits:
+ $ref: '#/components/schemas/WebCrawlerLimits'
+ InclusionFilters:
+ $ref: '#/components/schemas/FilterList'
+ ExclusionFilters:
+ $ref: '#/components/schemas/FilterList'
+ Scope:
+ $ref: '#/components/schemas/WebScopeType'
+ additionalProperties: false
+ WebCrawlerLimits:
+ type: object
+ description: Limit settings for the web crawler.
+ properties:
+ RateLimit:
+ type: integer
+ minimum: 1
+ maximum: 300
+ description: Rate of web URLs retrieved per minute.
+ additionalProperties: false
+ WebScopeType:
+ type: string
+ description: The scope that a web crawl job will be restricted to.
+ enum:
+ - HOST_ONLY
+ - SUBDOMAINS
+ CrawlFilterConfiguration:
+ type: object
+ description: The type of filtering that you want to apply to certain objects or content of the data source. For example, the PATTERN type is regular expression patterns you can apply to filter your content.
+ properties:
+ Type:
+ type: string
+ description: The crawl filter type.
+ enum:
+ - PATTERN
+ PatternObjectFilter:
+ $ref: '#/components/schemas/PatternObjectFilterConfiguration'
+ required:
+ - Type
+ additionalProperties: false
+ PatternObjectFilterConfiguration:
+ type: object
+ description: The configuration of specific filters applied to your data source content. You can filter out or include certain content.
+ properties:
+ Filters:
+ $ref: '#/components/schemas/PatternObjectFilterList'
+ required:
+ - Filters
+ additionalProperties: false
+ PatternObjectFilterList:
+ type: array
+ items:
+ $ref: '#/components/schemas/PatternObjectFilter'
+ maxItems: 25
+ minItems: 1
+ description: Contains information
+ PatternObjectFilter:
+ type: object
+ description: The specific filters applied to your data source content. You can filter out or include certain content.
+ properties:
+ ObjectType:
+ type: string
+ maxLength: 50
+ minLength: 1
+ description: The supported object type or content type of the data source.
+ InclusionFilters:
+ $ref: '#/components/schemas/FilterList'
+ ExclusionFilters:
+ $ref: '#/components/schemas/FilterList'
+ required:
+ - ObjectType
+ additionalProperties: false
+ FilterList:
+ type: array
+ description: A set of regular expression filter patterns for a type of object.
+ items:
+ type: string
+ maxLength: 1000
+ description: A list of one or more inclusion/exclusion regular expression patterns to include certain object types that adhere to the pattern. If you specify an inclusion and exclusion filter/pattern and both match a document, the exclusion filter takes precedence and the document isn't crawled.
+ maxItems: 25
+ minItems: 1
+ x-insertionOrder: false
+ DataSource:
+ type: object
+ properties:
+ DataSourceConfiguration:
+ $ref: '#/components/schemas/DataSourceConfiguration'
+ DataSourceId:
+ type: string
+ pattern: ^[0-9a-zA-Z]{10}$
+ description: Identifier for a resource.
+ Description:
+ type: string
+ maxLength: 200
+ minLength: 1
+ description: Description of the Resource.
+ KnowledgeBaseId:
+ type: string
+ pattern: ^[0-9a-zA-Z]{10}$
+ description: The unique identifier of the knowledge base to which to add the data source.
+ DataSourceStatus:
+ $ref: '#/components/schemas/DataSourceStatus'
Name:
type: string
pattern: ^([0-9a-zA-Z][_-]?){1,100}$
@@ -1191,7 +1897,9 @@ components:
- DataSourceId
x-create-only-properties:
- KnowledgeBaseId
- - VectorIngestionConfiguration
+ - VectorIngestionConfiguration/ChunkingConfiguration
+ - VectorIngestionConfiguration/ParsingConfiguration
+ - DataSourceConfiguration/Type
x-read-only-properties:
- DataSourceId
- DataSourceStatus
@@ -1204,7 +1912,7 @@ components:
- KnowledgeBaseId
x-tagging:
taggable: false
- cloudFormationSystemTags: true
+ cloudFormationSystemTags: false
x-required-permissions:
create:
- bedrock:CreateDataSource
@@ -1220,1372 +1928,3406 @@ components:
- bedrock:DeleteDataSource
list:
- bedrock:ListDataSources
- ContentFilter:
+ ConditionFlowNodeConfiguration:
type: object
- description: Content filter in content policy.
+ description: Condition flow node configuration
properties:
- Type:
- $ref: '#/components/schemas/ContentFilterType'
- InputStrength:
- $ref: '#/components/schemas/FilterStrength'
- OutputStrength:
- $ref: '#/components/schemas/FilterStrength'
+ Conditions:
+ type: array
+ items:
+ $ref: '#/components/schemas/FlowCondition'
+ maxItems: 5
+ minItems: 1
+ description: List of conditions in a condition node
+ x-insertionOrder: true
required:
- - InputStrength
- - OutputStrength
- - Type
+ - Conditions
additionalProperties: false
- ContentFilterConfig:
+ FlowCondition:
type: object
- description: Content filter config in content policy.
+ description: Condition branch for a condition node
properties:
- Type:
- $ref: '#/components/schemas/ContentFilterType'
- InputStrength:
- $ref: '#/components/schemas/FilterStrength'
- OutputStrength:
- $ref: '#/components/schemas/FilterStrength'
+ Name:
+ type: string
+ pattern: ^[a-zA-Z]([_]?[0-9a-zA-Z]){1,50}$
+ description: Name of a condition in a flow
+ Expression:
+ type: string
+ maxLength: 64
+ minLength: 1
+ description: Expression for a condition in a flow
required:
- - InputStrength
- - OutputStrength
- - Type
+ - Name
additionalProperties: false
- ContentFilterType:
- type: string
- description: Type of filter in content policy
- enum:
- - SEXUAL
- - VIOLENCE
- - HATE
- - INSULTS
- - MISCONDUCT
- - PROMPT_ATTACK
- ContentPolicyConfig:
+ FlowConditionalConnectionConfiguration:
type: object
- description: Content policy config for a guardrail.
+ description: Conditional connection configuration
properties:
- FiltersConfig:
- type: array
- items:
- $ref: '#/components/schemas/ContentFilterConfig'
- maxItems: 6
- minItems: 1
- description: List of content filter configs in content policy.
+ Condition:
+ type: string
+ pattern: ^[a-zA-Z]([_]?[0-9a-zA-Z]){1,50}$
+ description: Name of a condition in a flow
required:
- - FiltersConfig
+ - Condition
additionalProperties: false
- FilterStrength:
- type: string
- description: Strength for filters
- enum:
- - NONE
- - LOW
- - MEDIUM
- - HIGH
- GuardrailStatus:
- type: string
- description: Status of the guardrail
- enum:
- - CREATING
- - UPDATING
- - VERSIONING
- - READY
- - FAILED
- - DELETING
- ManagedWords:
+ FlowConnection:
type: object
- description: A managed words definition.
+ description: Flow connection
properties:
Type:
- $ref: '#/components/schemas/ManagedWordsType'
+ $ref: '#/components/schemas/FlowConnectionType'
+ Name:
+ type: string
+ pattern: ^[a-zA-Z]([_]?[0-9a-zA-Z]){1,100}$
+ description: Name of a connection in a flow
+ Source:
+ type: string
+ pattern: ^[a-zA-Z]([_]?[0-9a-zA-Z]){1,50}$
+ description: Name of a node in a flow
+ Target:
+ type: string
+ pattern: ^[a-zA-Z]([_]?[0-9a-zA-Z]){1,50}$
+ description: Name of a node in a flow
+ Configuration:
+ $ref: '#/components/schemas/FlowConnectionConfiguration'
required:
+ - Name
+ - Source
+ - Target
- Type
additionalProperties: false
- ManagedWordsConfig:
+ FlowConnectionConfiguration:
+ description: Connection configuration
+ oneOf:
+ - type: object
+ title: Data
+ properties:
+ Data:
+ $ref: '#/components/schemas/FlowDataConnectionConfiguration'
+ required:
+ - Data
+ additionalProperties: false
+ - type: object
+ title: Conditional
+ properties:
+ Conditional:
+ $ref: '#/components/schemas/FlowConditionalConnectionConfiguration'
+ required:
+ - Conditional
+ additionalProperties: false
+ FlowConnectionType:
+ type: string
+ description: Connection type
+ enum:
+ - Data
+ - Conditional
+ FlowDataConnectionConfiguration:
type: object
- description: A managed words config.
+ description: Data connection configuration
properties:
- Type:
- $ref: '#/components/schemas/ManagedWordsType'
+ SourceOutput:
+ type: string
+ pattern: ^[a-zA-Z]([_]?[0-9a-zA-Z]){1,50}$
+ description: Name of a node output in a flow
+ TargetInput:
+ type: string
+ pattern: ^[a-zA-Z]([_]?[0-9a-zA-Z]){1,50}$
+ description: Name of a node input in a flow
required:
- - Type
+ - SourceOutput
+ - TargetInput
additionalProperties: false
- ManagedWordsType:
- type: string
- description: Options for managed words.
- enum:
- - PROFANITY
- PiiEntity:
+ FlowDefinition:
type: object
- description: Entity name and behavior.
+ description: Flow definition
properties:
- Type:
- $ref: '#/components/schemas/PiiEntityType'
- Action:
- $ref: '#/components/schemas/SensitiveInformationAction'
- required:
- - Action
- - Type
+ Nodes:
+ type: array
+ items:
+ $ref: '#/components/schemas/FlowNode'
+ maxItems: 20
+ description: List of nodes in a flow
+ x-insertionOrder: true
+ Connections:
+ type: array
+ items:
+ $ref: '#/components/schemas/FlowConnection'
+ maxItems: 20
+ description: List of connections
+ x-insertionOrder: true
additionalProperties: false
- PiiEntityConfig:
+ FlowValidation:
type: object
- description: Pii entity configuration.
+ description: Validation for Flow
+ properties:
+ Message:
+ type: string
+ description: validation message
+ additionalProperties: false
+ required:
+ - Message
+ FlowValidations:
+ type: array
+ description: List of flow validations
+ items:
+ $ref: '#/components/schemas/FlowValidation'
+ x-insertionOrder: false
+ FlowNode:
+ type: object
+ description: Internal mixin for flow node
properties:
+ Name:
+ type: string
+ pattern: ^[a-zA-Z]([_]?[0-9a-zA-Z]){1,50}$
+ description: Name of a node in a flow
Type:
- $ref: '#/components/schemas/PiiEntityType'
- Action:
- $ref: '#/components/schemas/SensitiveInformationAction'
+ $ref: '#/components/schemas/FlowNodeType'
+ Configuration:
+ $ref: '#/components/schemas/FlowNodeConfiguration'
+ Inputs:
+ type: array
+ items:
+ $ref: '#/components/schemas/FlowNodeInput'
+ maxItems: 5
+ description: List of node inputs in a flow
+ x-insertionOrder: true
+ Outputs:
+ type: array
+ items:
+ $ref: '#/components/schemas/FlowNodeOutput'
+ maxItems: 5
+ description: List of node outputs in a flow
+ x-insertionOrder: true
required:
- - Action
+ - Name
- Type
additionalProperties: false
- PiiEntityType:
- type: string
- description: The currently supported PII entities
- enum:
- - ADDRESS
- - AGE
- - AWS_ACCESS_KEY
- - AWS_SECRET_KEY
- - CA_HEALTH_NUMBER
- - CA_SOCIAL_INSURANCE_NUMBER
- - CREDIT_DEBIT_CARD_CVV
- - CREDIT_DEBIT_CARD_EXPIRY
- - CREDIT_DEBIT_CARD_NUMBER
- - DRIVER_ID
- - EMAIL
- - INTERNATIONAL_BANK_ACCOUNT_NUMBER
- - IP_ADDRESS
- - LICENSE_PLATE
- - MAC_ADDRESS
- - NAME
- - PASSWORD
- - PHONE
- - PIN
- - SWIFT_CODE
- - UK_NATIONAL_HEALTH_SERVICE_NUMBER
- - UK_NATIONAL_INSURANCE_NUMBER
- - UK_UNIQUE_TAXPAYER_REFERENCE_NUMBER
- - URL
- - USERNAME
- - US_BANK_ACCOUNT_NUMBER
- - US_BANK_ROUTING_NUMBER
- - US_INDIVIDUAL_TAX_IDENTIFICATION_NUMBER
- - US_PASSPORT_NUMBER
- - US_SOCIAL_SECURITY_NUMBER
- - VEHICLE_IDENTIFICATION_NUMBER
- RegexConfig:
+ FlowNodeConfiguration:
+ description: Node configuration in a flow
+ oneOf:
+ - type: object
+ title: Input
+ properties:
+ Input:
+ $ref: '#/components/schemas/InputFlowNodeConfiguration'
+ required:
+ - Input
+ additionalProperties: false
+ - type: object
+ title: Output
+ properties:
+ Output:
+ $ref: '#/components/schemas/OutputFlowNodeConfiguration'
+ required:
+ - Output
+ additionalProperties: false
+ - type: object
+ title: KnowledgeBase
+ properties:
+ KnowledgeBase:
+ $ref: '#/components/schemas/KnowledgeBaseFlowNodeConfiguration'
+ required:
+ - KnowledgeBase
+ additionalProperties: false
+ - type: object
+ title: Condition
+ properties:
+ Condition:
+ $ref: '#/components/schemas/ConditionFlowNodeConfiguration'
+ required:
+ - Condition
+ additionalProperties: false
+ - type: object
+ title: Lex
+ properties:
+ Lex:
+ $ref: '#/components/schemas/LexFlowNodeConfiguration'
+ required:
+ - Lex
+ additionalProperties: false
+ - type: object
+ title: Prompt
+ properties:
+ Prompt:
+ $ref: '#/components/schemas/PromptFlowNodeConfiguration'
+ required:
+ - Prompt
+ additionalProperties: false
+ - type: object
+ title: LambdaFunction
+ properties:
+ LambdaFunction:
+ $ref: '#/components/schemas/LambdaFunctionFlowNodeConfiguration'
+ required:
+ - LambdaFunction
+ additionalProperties: false
+ - type: object
+ title: Agent
+ properties:
+ Agent:
+ $ref: '#/components/schemas/AgentFlowNodeConfiguration'
+ required:
+ - Agent
+ additionalProperties: false
+ - type: object
+ title: Storage
+ properties:
+ Storage:
+ $ref: '#/components/schemas/StorageFlowNodeConfiguration'
+ required:
+ - Storage
+ additionalProperties: false
+ - type: object
+ title: Retrieval
+ properties:
+ Retrieval:
+ $ref: '#/components/schemas/RetrievalFlowNodeConfiguration'
+ required:
+ - Retrieval
+ additionalProperties: false
+ - type: object
+ title: Iterator
+ properties:
+ Iterator:
+ $ref: '#/components/schemas/IteratorFlowNodeConfiguration'
+ required:
+ - Iterator
+ additionalProperties: false
+ - type: object
+ title: Collector
+ properties:
+ Collector:
+ $ref: '#/components/schemas/CollectorFlowNodeConfiguration'
+ required:
+ - Collector
+ additionalProperties: false
+ FlowNodeIODataType:
+ type: string
+ description: Type of input/output for a node in a flow
+ enum:
+ - String
+ - Number
+ - Boolean
+ - Object
+ - Array
+ FlowNodeInput:
type: object
- description: A regex configuration.
+ description: Input to a node in a flow
properties:
Name:
type: string
- maxLength: 100
- minLength: 1
- description: The regex name.
- Description:
+ pattern: ^[a-zA-Z]([_]?[0-9a-zA-Z]){1,50}$
+ description: Name of a node input in a flow
+ Type:
+ $ref: '#/components/schemas/FlowNodeIODataType'
+ Expression:
type: string
- maxLength: 1000
+ maxLength: 64
minLength: 1
- description: The regex description.
- Pattern:
+ description: Expression for a node input in a flow
+ required:
+ - Expression
+ - Name
+ - Type
+ additionalProperties: false
+ FlowNodeOutput:
+ type: object
+ description: Output of a node in a flow
+ properties:
+ Name:
type: string
- minLength: 1
- description: The regex pattern.
- Action:
- $ref: '#/components/schemas/SensitiveInformationAction'
+ pattern: ^[a-zA-Z]([_]?[0-9a-zA-Z]){1,50}$
+ description: Name of a node output in a flow
+ Type:
+ $ref: '#/components/schemas/FlowNodeIODataType'
required:
- - Action
- Name
- - Pattern
+ - Type
additionalProperties: false
- SensitiveInformationAction:
+ FlowNodeType:
type: string
- description: Options for sensitive information action.
+ description: Flow node types
enum:
- - BLOCK
- - ANONYMIZE
- SensitiveInformationPolicyConfig:
+ - Input
+ - Output
+ - KnowledgeBase
+ - Condition
+ - Lex
+ - Prompt
+ - LambdaFunction
+ - Agent
+ - Iterator
+ - Collector
+ - Storage
+ - Retrieval
+ FlowStatus:
+ type: string
+ description: Schema Type for Flow APIs
+ enum:
+ - Failed
+ - Prepared
+ - Preparing
+ - NotPrepared
+ InputFlowNodeConfiguration:
type: object
- description: Sensitive information policy config for a guardrail.
- properties:
- PiiEntitiesConfig:
- type: array
- items:
- $ref: '#/components/schemas/PiiEntityConfig'
- minItems: 1
- uniqueItems: true
- description: List of entities.
- RegexesConfig:
- type: array
- items:
- $ref: '#/components/schemas/RegexConfig'
- minItems: 1
- description: List of regex.
+ description: Input flow node configuration
additionalProperties: false
- Tag:
+ AgentFlowNodeConfiguration:
type: object
- description: Definition of the key/value pair for a tag
+ description: Agent flow node configuration
properties:
- Key:
- type: string
- maxLength: 128
- minLength: 1
- pattern: ^[a-zA-Z0-9\s._:/=+@-]*$
- description: Tag Key
- Value:
+ AgentAliasArn:
type: string
- maxLength: 256
- minLength: 0
- pattern: ^[a-zA-Z0-9\s._:/=+@-]*$
- description: Tag Value
+ maxLength: 2048
+ pattern: ^arn:aws(-[^:]+)?:bedrock:[a-z0-9-]{1,20}:[0-9]{12}:agent-alias/[0-9a-zA-Z]{10}/[0-9a-zA-Z]{10}$
+ description: Arn representation of the Agent Alias.
required:
- - Key
- - Value
+ - AgentAliasArn
additionalProperties: false
- Topic:
+ KnowledgeBaseFlowNodeConfiguration:
type: object
- description: Topic in topic policy.
+ description: Knowledge base flow node configuration
properties:
- Name:
+ KnowledgeBaseId:
type: string
- maxLength: 100
- minLength: 1
- pattern: ^[0-9a-zA-Z-_ !?.]+$
- description: Name of topic in topic policy
- Definition:
+ maxLength: 10
+ pattern: ^[0-9a-zA-Z]+$
+ description: Identifier of the KnowledgeBase
+ ModelId:
type: string
- maxLength: 200
+ maxLength: 2048
minLength: 1
- description: Definition of topic in topic policy
- Examples:
- type: array
- items:
- type: string
- maxLength: 100
- minLength: 1
- description: Text example in topic policy
- minItems: 0
- description: List of text examples
- Type:
- $ref: '#/components/schemas/TopicType'
+ pattern: ^(arn:aws(-[^:]{1,12})?:(bedrock|sagemaker):[a-z0-9-]{1,20}:([0-9]{12})?:([a-z-]+/)?)?([a-zA-Z0-9.-]{1,63}){0,2}(([:][a-z0-9-]{1,63}){0,2})?(/[a-z0-9]{1,12})?$
+ description: ARN or Id of a Bedrock Foundational Model or Inference Profile, or the ARN of a imported model, or a provisioned throughput ARN for custom models.
+ GuardrailConfiguration:
+ $ref: '#/components/schemas/GuardrailConfiguration'
required:
- - Definition
- - Name
- - Type
+ - KnowledgeBaseId
additionalProperties: false
- TopicConfig:
+ LambdaFunctionFlowNodeConfiguration:
type: object
- description: Topic config in topic policy.
+ description: Lambda function flow node configuration
properties:
- Name:
+ LambdaArn:
type: string
- maxLength: 100
- minLength: 1
- pattern: ^[0-9a-zA-Z-_ !?.]+$
- description: Name of topic in topic policy
- Definition:
+ maxLength: 2048
+ 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-_]+))?$
+ description: ARN of a Lambda.
+ required:
+ - LambdaArn
+ additionalProperties: false
+ LexFlowNodeConfiguration:
+ type: object
+ description: Lex flow node configuration
+ properties:
+ BotAliasArn:
type: string
- maxLength: 200
+ maxLength: 78
+ pattern: ^arn:aws(|-us-gov):lex:[a-z]{2}(-gov)?-[a-z]+-\d{1}:\d{12}:bot-alias/[0-9a-zA-Z]+/[0-9a-zA-Z]+$
+ description: ARN of a Lex bot alias
+ LocaleId:
+ type: string
+ maxLength: 10
minLength: 1
- description: Definition of topic in topic policy
- Examples:
- type: array
- items:
- type: string
- maxLength: 100
- minLength: 1
- description: Text example in topic policy
- minItems: 0
- description: List of text examples
- Type:
- $ref: '#/components/schemas/TopicType'
+ description: Lex bot locale id
required:
- - Definition
- - Name
- - Type
+ - BotAliasArn
+ - LocaleId
additionalProperties: false
- TopicPolicyConfig:
+ OutputFlowNodeConfiguration:
type: object
- description: Topic policy config for a guardrail.
+ description: Output flow node configuration
+ additionalProperties: false
+ IteratorFlowNodeConfiguration:
+ type: object
+ description: Iterator flow node configuration
+ additionalProperties: false
+ CollectorFlowNodeConfiguration:
+ type: object
+ description: Collector flow node configuration
+ additionalProperties: false
+ PromptFlowNodeConfiguration:
+ type: object
+ description: Prompt flow node configuration
properties:
- TopicsConfig:
- type: array
- items:
- $ref: '#/components/schemas/TopicConfig'
- minItems: 1
- description: List of topic configs in topic policy.
+ SourceConfiguration:
+ $ref: '#/components/schemas/PromptFlowNodeSourceConfiguration'
+ GuardrailConfiguration:
+ $ref: '#/components/schemas/GuardrailConfiguration'
required:
- - TopicsConfig
+ - SourceConfiguration
additionalProperties: false
- TopicType:
- type: string
- description: Type of topic in a policy
- enum:
- - DENY
- WordConfig:
+ StorageFlowNodeConfiguration:
type: object
- description: A custom word config.
+ description: Storage flow node configuration
properties:
- Text:
- type: string
- minLength: 1
- description: The custom word text.
+ ServiceConfiguration:
+ $ref: '#/components/schemas/StorageFlowNodeServiceConfiguration'
required:
- - Text
+ - ServiceConfiguration
additionalProperties: false
- WordPolicyConfig:
+ RetrievalFlowNodeConfiguration:
type: object
- description: Word policy config for a guardrail.
+ description: Retrieval flow node configuration
properties:
- WordsConfig:
- type: array
- items:
- $ref: '#/components/schemas/WordConfig'
- minItems: 1
- description: List of custom word configs.
- ManagedWordListsConfig:
- type: array
- items:
- $ref: '#/components/schemas/ManagedWordsConfig'
- description: A config for the list of managed words.
+ ServiceConfiguration:
+ $ref: '#/components/schemas/RetrievalFlowNodeServiceConfiguration'
+ required:
+ - ServiceConfiguration
additionalProperties: false
- Guardrail:
+ PromptFlowNodeInlineConfiguration:
type: object
+ description: Inline prompt configuration for prompt node
properties:
- BlockedInputMessaging:
+ TemplateType:
+ $ref: '#/components/schemas/PromptTemplateType'
+ TemplateConfiguration:
+ $ref: '#/components/schemas/PromptTemplateConfiguration'
+ ModelId:
type: string
- maxLength: 500
+ maxLength: 2048
minLength: 1
- description: Messaging for when violations are detected in text
- BlockedOutputsMessaging:
- type: string
- maxLength: 500
+ pattern: ^(arn:aws(-[^:]{1,12})?:(bedrock|sagemaker):[a-z0-9-]{1,20}:([0-9]{12})?:([a-z-]+/)?)?([a-zA-Z0-9.-]{1,63}){0,2}(([:][a-z0-9-]{1,63}){0,2})?(/[a-z0-9]{1,12})?$
+ description: ARN or Id of a Bedrock Foundational Model or Inference Profile, or the ARN of a imported model, or a provisioned throughput ARN for custom models.
+ InferenceConfiguration:
+ $ref: '#/components/schemas/PromptInferenceConfiguration'
+ required:
+ - ModelId
+ - TemplateConfiguration
+ - TemplateType
+ additionalProperties: false
+ PromptFlowNodeResourceConfiguration:
+ type: object
+ description: Resource prompt configuration for prompt node
+ properties:
+ PromptArn:
+ type: string
+ pattern: ^(arn:aws(-[^:]+)?:bedrock:[a-z0-9-]{1,20}:[0-9]{12}:prompt/[0-9a-zA-Z]{10}(?::[0-9]{1,5})?)$
+ description: ARN of a prompt resource possibly with a version
+ required:
+ - PromptArn
+ additionalProperties: false
+ PromptFlowNodeSourceConfiguration:
+ description: Prompt source configuration for prompt node
+ oneOf:
+ - type: object
+ title: Resource
+ properties:
+ Resource:
+ $ref: '#/components/schemas/PromptFlowNodeResourceConfiguration'
+ required:
+ - Resource
+ additionalProperties: false
+ - type: object
+ title: Inline
+ properties:
+ Inline:
+ $ref: '#/components/schemas/PromptFlowNodeInlineConfiguration'
+ required:
+ - Inline
+ additionalProperties: false
+ StorageFlowNodeServiceConfiguration:
+ description: storage service configuration for storage node
+ oneOf:
+ - type: object
+ title: S3
+ properties:
+ S3:
+ $ref: '#/components/schemas/StorageFlowNodeS3Configuration'
+ additionalProperties: false
+ StorageFlowNodeS3Configuration:
+ type: object
+ description: s3 storage configuration for storage node
+ properties:
+ BucketName:
+ type: string
+ pattern: ^[a-z0-9][\.\-a-z0-9]{1,61}[a-z0-9]$
+ description: bucket name of an s3 that will be used for storage flow node configuration
+ required:
+ - BucketName
+ additionalProperties: false
+ RetrievalFlowNodeServiceConfiguration:
+ description: Retrieval service configuration for Retrieval node
+ oneOf:
+ - type: object
+ title: S3
+ properties:
+ S3:
+ $ref: '#/components/schemas/RetrievalFlowNodeS3Configuration'
+ additionalProperties: false
+ RetrievalFlowNodeS3Configuration:
+ type: object
+ description: s3 Retrieval configuration for Retrieval node
+ properties:
+ BucketName:
+ type: string
+ pattern: ^[a-z0-9][\.\-a-z0-9]{1,61}[a-z0-9]$
+ description: bucket name of an s3 that will be used for Retrieval flow node configuration
+ required:
+ - BucketName
+ additionalProperties: false
+ PromptInferenceConfiguration:
+ description: Model inference configuration
+ oneOf:
+ - type: object
+ title: Text
+ properties:
+ Text:
+ $ref: '#/components/schemas/PromptModelInferenceConfiguration'
+ required:
+ - Text
+ additionalProperties: false
+ PromptInputVariable:
+ type: object
+ description: Input variable
+ properties:
+ Name:
+ type: string
+ pattern: ^([0-9a-zA-Z][_-]?){1,100}$
+ description: Name for an input variable
+ additionalProperties: false
+ PromptModelInferenceConfiguration:
+ type: object
+ description: Prompt model inference configuration
+ properties:
+ Temperature:
+ type: number
+ maximum: 1
+ minimum: 0
+ description: Controls randomness, higher values increase diversity
+ TopP:
+ type: number
+ maximum: 1
+ minimum: 0
+ description: Cumulative probability cutoff for token selection
+ MaxTokens:
+ type: number
+ maximum: 4096
+ minimum: 0
+ description: Maximum length of output
+ StopSequences:
+ type: array
+ items:
+ type: string
+ maxItems: 4
+ minItems: 0
+ description: List of stop sequences
+ x-insertionOrder: true
+ additionalProperties: false
+ PromptTemplateConfiguration:
+ description: Prompt template configuration
+ oneOf:
+ - type: object
+ title: Text
+ properties:
+ Text:
+ $ref: '#/components/schemas/TextPromptTemplateConfiguration'
+ required:
+ - Text
+ additionalProperties: false
+ PromptTemplateType:
+ type: string
+ description: Prompt template type
+ enum:
+ - TEXT
+ DefinitionSubstitutions:
+ type: object
+ description: When supplied with DefinitionString or DefinitionS3Location, substrings in the definition matching ${keyname} will be replaced with the associated value from this map
+ additionalProperties: false
+ x-patternProperties:
+ ^[a-zA-Z0-9]+$:
+ anyOf:
+ - type: string
+ - type: integer
+ - type: boolean
+ minProperties: 1
+ maxProperties: 500
+ TextPromptTemplateConfiguration:
+ type: object
+ description: Configuration for text prompt template
+ properties:
+ Text:
+ type: string
+ maxLength: 200000
minLength: 1
- description: Messaging for when violations are detected in text
- ContentPolicyConfig:
- $ref: '#/components/schemas/ContentPolicyConfig'
+ description: Prompt content for String prompt template
+ InputVariables:
+ type: array
+ items:
+ $ref: '#/components/schemas/PromptInputVariable'
+ maxItems: 5
+ minItems: 0
+ description: List of input variables
+ x-insertionOrder: true
+ required:
+ - Text
+ additionalProperties: false
+ Flow:
+ type: object
+ properties:
+ Arn:
+ type: string
+ maxLength: 1011
+ minLength: 20
+ pattern: ^arn:aws(-[^:]+)?:bedrock:[a-z0-9-]{1,20}:[0-9]{12}:flow/[0-9a-zA-Z]{10}$
+ description: Arn representation of the Flow
CreatedAt:
type: string
- description: Time Stamp
+ description: Time Stamp.
format: date-time
+ Definition:
+ $ref: '#/components/schemas/FlowDefinition'
+ DefinitionString:
+ type: string
+ description: A JSON string containing a Definition with the same schema as the Definition property of this resource
+ maxLength: 512000
+ DefinitionS3Location:
+ $ref: '#/components/schemas/S3Location'
+ DefinitionSubstitutions:
+ $ref: '#/components/schemas/DefinitionSubstitutions'
Description:
type: string
maxLength: 200
minLength: 1
- description: Description of the guardrail or its version
- FailureRecommendations:
- type: array
- items:
- type: string
- maxLength: 200
- minLength: 1
- description: Recommendation for guardrail failure status
- maxItems: 100
- description: List of failure recommendations
- GuardrailArn:
+ description: Description of the flow
+ ExecutionRoleArn:
type: string
maxLength: 2048
- pattern: ^arn:aws(-[^:]+)?:bedrock:[a-z0-9-]{1,20}:[0-9]{12}:guardrail/[a-z0-9]+$
- description: Arn representation for the guardrail
- GuardrailId:
- type: string
- maxLength: 64
- pattern: ^[a-z0-9]+$
- description: Unique id for the guardrail
- KmsKeyArn:
+ pattern: ^arn:aws(-[^:]+)?:iam::([0-9]{12})?:role/(service-role/)?.+$
+ description: ARN of a IAM role
+ Id:
type: string
- maxLength: 2048
- minLength: 1
- pattern: ^arn:aws(-[^:]+)?:kms:[a-zA-Z0-9-]*:[0-9]{12}:key/[a-zA-Z0-9-]{36}$
- description: The KMS key with which the guardrail was encrypted at rest
+ pattern: ^[0-9a-zA-Z]{10}$
+ description: Identifier for a Flow
Name:
type: string
- maxLength: 50
- minLength: 1
- pattern: ^[0-9a-zA-Z-_]+$
- description: Name of the guardrail
- SensitiveInformationPolicyConfig:
- $ref: '#/components/schemas/SensitiveInformationPolicyConfig'
+ pattern: ^([0-9a-zA-Z][_-]?){1,100}$
+ description: Name for the flow
Status:
- $ref: '#/components/schemas/GuardrailStatus'
- StatusReasons:
- type: array
- items:
- type: string
- maxLength: 200
- minLength: 1
- description: Reason for guardrail status
- maxItems: 100
- description: List of status reasons
- Tags:
- type: array
- items:
- $ref: '#/components/schemas/Tag'
- maxItems: 200
- minItems: 0
- description: List of Tags
- TopicPolicyConfig:
- $ref: '#/components/schemas/TopicPolicyConfig'
+ $ref: '#/components/schemas/FlowStatus'
UpdatedAt:
type: string
- description: Time Stamp
+ description: Time Stamp.
format: date-time
+ CustomerEncryptionKeyArn:
+ type: string
+ maxLength: 2048
+ minLength: 1
+ pattern: ^arn:aws(|-cn|-us-gov):kms:[a-zA-Z0-9-]*:[0-9]{12}:key/[a-zA-Z0-9-]{36}$
+ description: A KMS key ARN
+ Validations:
+ $ref: '#/components/schemas/FlowValidations'
Version:
type: string
- pattern: ^(([1-9][0-9]{0,7})|(DRAFT))$
- description: Guardrail version
- WordPolicyConfig:
- $ref: '#/components/schemas/WordPolicyConfig'
+ maxLength: 5
+ minLength: 5
+ pattern: ^DRAFT$
+ description: Draft Version.
+ Tags:
+ $ref: '#/components/schemas/TagsMap'
+ TestAliasTags:
+ $ref: '#/components/schemas/TagsMap'
required:
+ - ExecutionRoleArn
- Name
- - BlockedInputMessaging
- - BlockedOutputsMessaging
- x-stackql-resource-name: guardrail
- description: Definition of AWS::Bedrock::Guardrail Resource Type
- x-type-name: AWS::Bedrock::Guardrail
+ x-stackql-resource-name: flow
+ description: Definition of AWS::Bedrock::Flow Resource Type
+ x-type-name: AWS::Bedrock::Flow
x-stackql-primary-identifier:
- - GuardrailArn
+ - Arn
+ x-stackql-additional-identifiers:
+ - - Id
+ x-write-only-properties:
+ - DefinitionString
+ - DefinitionS3Location
+ - DefinitionSubstitutions
x-read-only-properties:
+ - Arn
- CreatedAt
- - FailureRecommendations
- - GuardrailArn
- - GuardrailId
+ - Id
- Status
- - StatusReasons
- UpdatedAt
- Version
+ - Validations
x-required-properties:
+ - ExecutionRoleArn
- Name
- - BlockedInputMessaging
- - BlockedOutputsMessaging
x-tagging:
cloudFormationSystemTags: false
tagOnCreate: true
tagProperty: /properties/Tags
tagUpdatable: true
taggable: true
+ permissions:
+ - bedrock:TagResource
+ - bedrock:UntagResource
+ - bedrock:ListTagsForResource
x-required-permissions:
create:
- - bedrock:CreateGuardrail
- - bedrock:GetGuardrail
- - kms:DescribeKey
- - kms:CreateGrant
- - kms:GenerateDataKey
- - kms:Decrypt
+ - bedrock:CreateFlow
+ - bedrock:GetFlow
+ - bedrock:PrepareFlow
+ - iam:PassRole
+ - s3:GetObject
+ - s3:GetObjectVersion
- bedrock:TagResource
- bedrock:ListTagsForResource
- read:
- - bedrock:GetGuardrail
+ - kms:GenerateDataKey
- kms:Decrypt
- - bedrock:ListTagsForResource
- update:
- - bedrock:UpdateGuardrail
+ - bedrock:CreateGuardrail
+ - bedrock:CreateGuardrailVersion
- bedrock:GetGuardrail
+ read:
+ - bedrock:GetFlow
- bedrock:ListTagsForResource
+ - kms:Decrypt
+ - bedrock:GetGuardrail
+ update:
+ - bedrock:UpdateFlow
+ - bedrock:GetFlow
+ - bedrock:PrepareFlow
+ - iam:PassRole
+ - s3:GetObject
+ - s3:GetObjectVersion
- bedrock:TagResource
- bedrock:UntagResource
- - kms:DescribeKey
- - kms:CreateGrant
+ - bedrock:ListTagsForResource
- kms:GenerateDataKey
- kms:Decrypt
+ - bedrock:UpdateGuardrail
+ - bedrock:GetGuardrail
delete:
+ - bedrock:DeleteFlow
+ - bedrock:GetFlow
- bedrock:DeleteGuardrail
- bedrock:GetGuardrail
- - kms:Decrypt
- - kms:RetireGrant
list:
+ - bedrock:ListFlows
- bedrock:ListGuardrails
- GuardrailVersion:
+ FlowAliasRoutingConfigurationListItem:
type: object
+ description: Details about the routing configuration for a Flow alias.
properties:
- Description:
+ FlowVersion:
type: string
- maxLength: 200
+ maxLength: 5
minLength: 1
- description: Description of the Guardrail version
- GuardrailArn:
+ pattern: ^(DRAFT|[0-9]{0,4}[1-9][0-9]{0,4})$
+ description: Version.
+ additionalProperties: false
+ FlowAlias:
+ type: object
+ properties:
+ Arn:
type: string
maxLength: 2048
- pattern: ^arn:aws(-[^:]+)?:bedrock:[a-z0-9-]{1,20}:[0-9]{12}:guardrail/[a-z0-9]+$
- description: Arn representation for the guardrail
- GuardrailId:
- type: string
- maxLength: 64
- pattern: ^[a-z0-9]+$
- description: Unique id for the guardrail
- GuardrailIdentifier:
+ pattern: ^arn:aws(-[^:]+)?:bedrock:[a-z0-9-]{1,20}:[0-9]{12}:flow/[0-9a-zA-Z]{10}/alias/[0-9a-zA-Z]{10}$
+ description: Arn of the Flow Alias
+ FlowArn:
type: string
maxLength: 2048
- pattern: ^(([a-z0-9]+)|(arn:aws(-[^:]+)?:bedrock:[a-z0-9-]{1,20}:[0-9]{12}:guardrail/[a-z0-9]+))$
- description: Identifier (GuardrailId or GuardrailArn) for the guardrail
- Version:
+ pattern: ^arn:aws(-[^:]+)?:bedrock:[a-z0-9-]{1,20}:[0-9]{12}:flow/[0-9a-zA-Z]{10}$
+ description: Arn representation of the Flow
+ CreatedAt:
type: string
- pattern: ^[1-9][0-9]{0,7}$
- description: Guardrail version
- required:
- - GuardrailIdentifier
- x-stackql-resource-name: guardrail_version
- description: Definition of AWS::Bedrock::GuardrailVersion Resource Type
- x-type-name: AWS::Bedrock::GuardrailVersion
- x-stackql-primary-identifier:
- - GuardrailId
- - Version
- x-create-only-properties:
- - Description
- - GuardrailIdentifier
- x-write-only-properties:
- - GuardrailIdentifier
+ description: Time Stamp.
+ format: date-time
+ Description:
+ type: string
+ maxLength: 200
+ minLength: 1
+ description: Description of the Resource.
+ FlowId:
+ type: string
+ pattern: ^[0-9a-zA-Z]{10}$
+ description: Identifier for a flow resource.
+ Id:
+ type: string
+ maxLength: 10
+ minLength: 10
+ pattern: ^(\bTSTALIASID\b|[0-9a-zA-Z]+)$
+ description: Id for a Flow Alias generated at the server side.
+ Name:
+ type: string
+ pattern: ^([0-9a-zA-Z][_-]?){1,100}$
+ description: Name for a resource.
+ RoutingConfiguration:
+ type: array
+ items:
+ $ref: '#/components/schemas/FlowAliasRoutingConfigurationListItem'
+ maxItems: 1
+ minItems: 1
+ description: Routing configuration for a Flow alias.
+ x-insertionOrder: true
+ UpdatedAt:
+ type: string
+ description: Time Stamp.
+ format: date-time
+ Tags:
+ $ref: '#/components/schemas/TagsMap'
+ required:
+ - Name
+ - FlowArn
+ - RoutingConfiguration
+ x-stackql-resource-name: flow_alias
+ description: Definition of AWS::Bedrock::FlowAlias Resource Type
+ x-type-name: AWS::Bedrock::FlowAlias
+ x-stackql-primary-identifier:
+ - Arn
+ - FlowArn
+ x-create-only-properties:
+ - FlowArn
x-read-only-properties:
- - GuardrailArn
- - GuardrailId
+ - Arn
+ - CreatedAt
+ - FlowId
+ - Id
+ - UpdatedAt
+ x-required-properties:
+ - Name
+ - FlowArn
+ - RoutingConfiguration
+ x-tagging:
+ cloudFormationSystemTags: false
+ tagOnCreate: true
+ tagProperty: /properties/Tags
+ tagUpdatable: true
+ taggable: true
+ permissions:
+ - bedrock:TagResource
+ - bedrock:UntagResource
+ - bedrock:ListTagsForResource
+ x-required-permissions:
+ create:
+ - bedrock:CreateFlowAlias
+ - bedrock:GetFlowAlias
+ - bedrock:TagResource
+ - bedrock:ListTagsForResource
+ read:
+ - bedrock:GetFlowAlias
+ - bedrock:ListTagsForResource
+ update:
+ - bedrock:UpdateFlowAlias
+ - bedrock:GetFlowAlias
+ - bedrock:TagResource
+ - bedrock:UntagResource
+ - bedrock:ListTagsForResource
+ delete:
+ - bedrock:DeleteFlowAlias
+ list:
+ - bedrock:ListFlowAliases
+ FlowVersion:
+ type: object
+ properties:
+ FlowArn:
+ type: string
+ pattern: ^arn:aws(-[^:]+)?:bedrock:[a-z0-9-]{1,20}:[0-9]{12}:flow/[0-9a-zA-Z]{10}$
+ description: Arn representation of the Flow
+ CreatedAt:
+ type: string
+ description: Time Stamp.
+ format: date-time
+ Definition:
+ $ref: '#/components/schemas/FlowDefinition'
+ Description:
+ type: string
+ maxLength: 200
+ minLength: 1
+ description: Description of the flow version
+ ExecutionRoleArn:
+ type: string
+ maxLength: 2048
+ pattern: ^arn:aws(-[^:]+)?:iam::([0-9]{12})?:role/(service-role/)?.+$
+ description: ARN of a IAM role
+ FlowId:
+ type: string
+ pattern: ^[0-9a-zA-Z]{10}$
+ description: Identifier for a Flow
+ Name:
+ type: string
+ pattern: ^([0-9a-zA-Z][_-]?){1,100}$
+ description: Name for the flow
+ Status:
+ $ref: '#/components/schemas/FlowStatus'
+ Version:
+ type: string
+ pattern: ^[0-9]{1,5}$
+ description: Numerical Version.
+ CustomerEncryptionKeyArn:
+ type: string
+ maxLength: 2048
+ minLength: 1
+ pattern: ^arn:aws(|-cn|-us-gov):kms:[a-zA-Z0-9-]*:[0-9]{12}:key/[a-zA-Z0-9-]{36}$
+ description: A KMS key ARN
+ required:
+ - FlowArn
+ x-stackql-resource-name: flow_version
+ description: Definition of AWS::Bedrock::FlowVersion Resource Type
+ x-type-name: AWS::Bedrock::FlowVersion
+ x-stackql-primary-identifier:
+ - FlowArn
+ - Version
+ x-create-only-properties:
+ - Description
+ - FlowArn
+ x-read-only-properties:
+ - CreatedAt
+ - Definition
+ - ExecutionRoleArn
+ - FlowId
+ - Name
+ - Status
- Version
+ - CustomerEncryptionKeyArn
x-required-properties:
- - GuardrailIdentifier
+ - FlowArn
x-tagging:
taggable: false
x-required-permissions:
create:
+ - bedrock:CreateFlowVersion
+ - bedrock:GetFlowVersion
+ - kms:GenerateDataKey
+ - kms:Decrypt
+ - bedrock:CreateGuardrail
- bedrock:CreateGuardrailVersion
- bedrock:GetGuardrail
- - kms:CreateGrant
- - kms:Decrypt
read:
- - bedrock:GetGuardrail
+ - bedrock:GetFlowVersion
- kms:Decrypt
+ - bedrock:GetGuardrail
delete:
+ - bedrock:DeleteFlowVersion
+ - bedrock:GetFlowVersion
- bedrock:DeleteGuardrail
- bedrock:GetGuardrail
- - kms:RetireGrant
- KnowledgeBaseConfiguration:
+ list:
+ - bedrock:ListFlowVersions
+ - bedrock:ListGuardrails
+ update:
+ - noservice:NoAction
+ ContentFilter:
type: object
- description: Contains details about the embeddings model used for the knowledge base.
+ description: Content filter in content policy.
properties:
Type:
- $ref: '#/components/schemas/KnowledgeBaseType'
- VectorKnowledgeBaseConfiguration:
- $ref: '#/components/schemas/VectorKnowledgeBaseConfiguration'
+ $ref: '#/components/schemas/ContentFilterType'
+ InputStrength:
+ $ref: '#/components/schemas/FilterStrength'
+ OutputStrength:
+ $ref: '#/components/schemas/FilterStrength'
required:
+ - InputStrength
+ - OutputStrength
- Type
- - VectorKnowledgeBaseConfiguration
additionalProperties: false
- KnowledgeBaseStatus:
- type: string
- description: The status of a knowledge base.
- enum:
- - CREATING
- - ACTIVE
- - DELETING
- - UPDATING
- - FAILED
- - DELETE_UNSUCCESSFUL
- KnowledgeBaseStorageType:
- type: string
- description: The storage type of a knowledge base.
- enum:
- - OPENSEARCH_SERVERLESS
- - PINECONE
- - RDS
- KnowledgeBaseType:
- type: string
- description: The type of a knowledge base.
- enum:
- - VECTOR
- OpenSearchServerlessConfiguration:
+ ContentFilterConfig:
type: object
- description: Contains the storage configuration of the knowledge base in Amazon OpenSearch Service.
+ description: Content filter config in content policy.
properties:
- CollectionArn:
- type: string
- maxLength: 2048
- pattern: ^arn:aws:aoss:[a-z]{2}(-gov)?-[a-z]+-\d{1}:\d{12}:collection/[a-z0-9-]{3,32}$
- description: The ARN of the OpenSearch Service vector store.
- VectorIndexName:
- type: string
- maxLength: 2048
- pattern: ^.*$
- description: The name of the vector store.
- FieldMapping:
- $ref: '#/components/schemas/OpenSearchServerlessFieldMapping'
+ Type:
+ $ref: '#/components/schemas/ContentFilterType'
+ InputStrength:
+ $ref: '#/components/schemas/FilterStrength'
+ OutputStrength:
+ $ref: '#/components/schemas/FilterStrength'
required:
- - CollectionArn
- - FieldMapping
- - VectorIndexName
+ - InputStrength
+ - OutputStrength
+ - Type
additionalProperties: false
- OpenSearchServerlessFieldMapping:
+ ContentFilterType:
+ type: string
+ description: Type of filter in content policy
+ enum:
+ - SEXUAL
+ - VIOLENCE
+ - HATE
+ - INSULTS
+ - MISCONDUCT
+ - PROMPT_ATTACK
+ ContentPolicyConfig:
type: object
- description: A mapping of Bedrock Knowledge Base fields to OpenSearch Serverless field names
+ description: Content policy config for a guardrail.
properties:
- VectorField:
- type: string
- maxLength: 2048
- pattern: ^.*$
- description: The name of the field in which Amazon Bedrock stores the vector embeddings for your data sources.
- TextField:
- type: string
- maxLength: 2048
- pattern: ^.*$
- description: The name of the field in which Amazon Bedrock stores the raw text from your data. The text is split according to the chunking strategy you choose.
- MetadataField:
- type: string
- maxLength: 2048
- pattern: ^.*$
- description: The name of the field in which Amazon Bedrock stores metadata about the vector store.
+ FiltersConfig:
+ type: array
+ items:
+ $ref: '#/components/schemas/ContentFilterConfig'
+ maxItems: 6
+ minItems: 1
+ description: List of content filter configs in content policy.
required:
- - MetadataField
- - TextField
- - VectorField
+ - FiltersConfig
additionalProperties: false
- PineconeConfiguration:
+ ContextualGroundingFilterConfig:
type: object
- description: Contains the storage configuration of the knowledge base in Pinecone.
+ description: A config for grounding filter.
properties:
- ConnectionString:
- type: string
- maxLength: 2048
- pattern: ^.*$
- description: The endpoint URL for your index management page.
- CredentialsSecretArn:
- type: string
- pattern: ^arn:aws(|-cn|-us-gov):secretsmanager:[a-z0-9-]{1,20}:([0-9]{12}|):secret:[a-zA-Z0-9!/_+=.@-]{1,512}$
- description: The ARN of the secret that you created in AWS Secrets Manager that is linked to your Pinecone API key.
- Namespace:
- type: string
- maxLength: 2048
- pattern: ^.*$
- description: The namespace to be used to write new data to your database.
- FieldMapping:
- $ref: '#/components/schemas/PineconeFieldMapping'
+ Type:
+ $ref: '#/components/schemas/ContextualGroundingFilterType'
+ Threshold:
+ type: number
+ minimum: 0
+ description: The threshold for this filter.
required:
- - ConnectionString
- - CredentialsSecretArn
- - FieldMapping
+ - Threshold
+ - Type
additionalProperties: false
- PineconeFieldMapping:
+ ContextualGroundingFilterType:
+ type: string
+ description: Type of contextual grounding filter
+ enum:
+ - GROUNDING
+ - RELEVANCE
+ ContextualGroundingPolicyConfig:
type: object
- description: Contains the names of the fields to which to map information about the vector store.
+ description: Contextual grounding policy config for a guardrail.
properties:
- TextField:
- type: string
- maxLength: 2048
- pattern: ^.*$
- description: The name of the field in which Amazon Bedrock stores the raw text from your data. The text is split according to the chunking strategy you choose.
- MetadataField:
- type: string
- maxLength: 2048
- pattern: ^.*$
- description: The name of the field in which Amazon Bedrock stores metadata about the vector store.
- required:
- - MetadataField
- - TextField
- additionalProperties: false
- RdsConfiguration:
- type: object
- description: Contains details about the storage configuration of the knowledge base in Amazon RDS. For more information, see Create a vector index in Amazon RDS.
- properties:
- ResourceArn:
- type: string
- pattern: ^arn:aws(|-cn|-us-gov):rds:[a-zA-Z0-9-]*:[0-9]{12}:cluster:[a-zA-Z0-9-]{1,63}$
- description: The ARN of the vector store.
- CredentialsSecretArn:
- type: string
- pattern: ^arn:aws(|-cn|-us-gov):secretsmanager:[a-z0-9-]{1,20}:([0-9]{12}|):secret:[a-zA-Z0-9!/_+=.@-]{1,512}$
- description: The ARN of the secret that you created in AWS Secrets Manager that is linked to your Amazon RDS database.
- DatabaseName:
- type: string
- maxLength: 63
- pattern: ^[a-zA-Z0-9_\-]+$
- description: The name of your Amazon RDS database.
- TableName:
- type: string
- maxLength: 63
- pattern: ^[a-zA-Z0-9_\.\-]+$
- description: The name of the table in the database.
- FieldMapping:
- $ref: '#/components/schemas/RdsFieldMapping'
+ FiltersConfig:
+ type: array
+ items:
+ $ref: '#/components/schemas/ContextualGroundingFilterConfig'
+ minItems: 1
+ description: List of contextual grounding filter configs.
required:
- - CredentialsSecretArn
- - DatabaseName
- - FieldMapping
- - ResourceArn
- - TableName
+ - FiltersConfig
additionalProperties: false
- RdsFieldMapping:
+ FilterStrength:
+ type: string
+ description: Strength for filters
+ enum:
+ - NONE
+ - LOW
+ - MEDIUM
+ - HIGH
+ GuardrailStatus:
+ type: string
+ description: Status of the guardrail
+ enum:
+ - CREATING
+ - UPDATING
+ - VERSIONING
+ - READY
+ - FAILED
+ - DELETING
+ ManagedWords:
type: object
- description: Contains the names of the fields to which to map information about the vector store.
+ description: A managed words definition.
properties:
- PrimaryKeyField:
- type: string
- maxLength: 63
- pattern: ^[a-zA-Z0-9_\-]+$
- description: The name of the field in which Amazon Bedrock stores the ID for each entry.
- VectorField:
- type: string
- maxLength: 63
- pattern: ^[a-zA-Z0-9_\-]+$
- description: The name of the field in which Amazon Bedrock stores the vector embeddings for your data sources.
- TextField:
- type: string
- maxLength: 63
- pattern: ^[a-zA-Z0-9_\-]+$
- description: The name of the field in which Amazon Bedrock stores the raw text from your data. The text is split according to the chunking strategy you choose.
- MetadataField:
- type: string
- maxLength: 63
- pattern: ^[a-zA-Z0-9_\-]+$
- description: The name of the field in which Amazon Bedrock stores metadata about the vector store.
+ Type:
+ $ref: '#/components/schemas/ManagedWordsType'
required:
- - MetadataField
- - PrimaryKeyField
- - TextField
- - VectorField
+ - Type
additionalProperties: false
- RedisEnterpriseCloudConfiguration:
+ ManagedWordsConfig:
type: object
- description: Contains the storage configuration of the knowledge base in Redis Enterprise Cloud.
+ description: A managed words config.
properties:
- Endpoint:
- type: string
- maxLength: 2048
- pattern: ^.*$
- description: The endpoint URL of the Redis Enterprise Cloud database.
- VectorIndexName:
- type: string
- maxLength: 2048
- pattern: ^.*$
- description: The name of the vector index.
- CredentialsSecretArn:
- type: string
- pattern: ^arn:aws(|-cn|-us-gov):secretsmanager:[a-z0-9-]{1,20}:([0-9]{12}|):secret:[a-zA-Z0-9!/_+=.@-]{1,512}$
- description: The ARN of the secret that you created in AWS Secrets Manager that is linked to your Redis Enterprise Cloud database.
- FieldMapping:
- $ref: '#/components/schemas/RedisEnterpriseCloudFieldMapping'
+ Type:
+ $ref: '#/components/schemas/ManagedWordsType'
required:
- - CredentialsSecretArn
- - Endpoint
- - FieldMapping
- - VectorIndexName
+ - Type
additionalProperties: false
- RedisEnterpriseCloudFieldMapping:
+ ManagedWordsType:
+ type: string
+ description: Options for managed words.
+ enum:
+ - PROFANITY
+ PiiEntity:
type: object
- description: Contains the names of the fields to which to map information about the vector store.
+ description: Entity name and behavior.
properties:
- VectorField:
- type: string
- maxLength: 2048
- pattern: ^.*$
- description: The name of the field in which Amazon Bedrock stores the vector embeddings for your data sources.
- TextField:
- type: string
- maxLength: 2048
- pattern: ^.*$
- description: The name of the field in which Amazon Bedrock stores the raw text from your data. The text is split according to the chunking strategy you choose.
- MetadataField:
- type: string
- maxLength: 2048
- pattern: ^.*$
- description: The name of the field in which Amazon Bedrock stores metadata about the vector store.
+ Type:
+ $ref: '#/components/schemas/PiiEntityType'
+ Action:
+ $ref: '#/components/schemas/SensitiveInformationAction'
required:
- - MetadataField
- - TextField
- - VectorField
+ - Action
+ - Type
additionalProperties: false
- StorageConfiguration:
+ PiiEntityConfig:
type: object
- description: The vector store service in which the knowledge base is stored.
+ description: Pii entity configuration.
properties:
Type:
- $ref: '#/components/schemas/KnowledgeBaseStorageType'
- OpensearchServerlessConfiguration:
- $ref: '#/components/schemas/OpenSearchServerlessConfiguration'
- PineconeConfiguration:
- $ref: '#/components/schemas/PineconeConfiguration'
- RdsConfiguration:
- $ref: '#/components/schemas/RdsConfiguration'
+ $ref: '#/components/schemas/PiiEntityType'
+ Action:
+ $ref: '#/components/schemas/SensitiveInformationAction'
required:
+ - Action
- Type
- oneOf:
- - required:
- - OpensearchServerlessConfiguration
- - required:
- - PineconeConfiguration
- - required:
- - RdsConfiguration
additionalProperties: false
- VectorKnowledgeBaseConfiguration:
+ PiiEntityType:
+ type: string
+ description: The currently supported PII entities
+ enum:
+ - ADDRESS
+ - AGE
+ - AWS_ACCESS_KEY
+ - AWS_SECRET_KEY
+ - CA_HEALTH_NUMBER
+ - CA_SOCIAL_INSURANCE_NUMBER
+ - CREDIT_DEBIT_CARD_CVV
+ - CREDIT_DEBIT_CARD_EXPIRY
+ - CREDIT_DEBIT_CARD_NUMBER
+ - DRIVER_ID
+ - EMAIL
+ - INTERNATIONAL_BANK_ACCOUNT_NUMBER
+ - IP_ADDRESS
+ - LICENSE_PLATE
+ - MAC_ADDRESS
+ - NAME
+ - PASSWORD
+ - PHONE
+ - PIN
+ - SWIFT_CODE
+ - UK_NATIONAL_HEALTH_SERVICE_NUMBER
+ - UK_NATIONAL_INSURANCE_NUMBER
+ - UK_UNIQUE_TAXPAYER_REFERENCE_NUMBER
+ - URL
+ - USERNAME
+ - US_BANK_ACCOUNT_NUMBER
+ - US_BANK_ROUTING_NUMBER
+ - US_INDIVIDUAL_TAX_IDENTIFICATION_NUMBER
+ - US_PASSPORT_NUMBER
+ - US_SOCIAL_SECURITY_NUMBER
+ - VEHICLE_IDENTIFICATION_NUMBER
+ RegexConfig:
type: object
- description: Contains details about the model used to create vector embeddings for the knowledge base.
+ description: A regex configuration.
properties:
- EmbeddingModelArn:
+ Name:
type: string
- maxLength: 1011
- minLength: 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}))$
- description: The ARN of the model used to create vector embeddings for the knowledge base.
- required:
- - EmbeddingModelArn
- additionalProperties: false
- KnowledgeBase:
- type: object
- properties:
+ maxLength: 100
+ minLength: 1
+ description: The regex name.
Description:
type: string
- maxLength: 200
+ maxLength: 1000
minLength: 1
- description: Description of the Resource.
- KnowledgeBaseConfiguration:
- $ref: '#/components/schemas/KnowledgeBaseConfiguration'
- KnowledgeBaseId:
- type: string
- pattern: ^[0-9a-zA-Z]{10}$
- description: The unique identifier of the knowledge base.
- KnowledgeBaseArn:
- type: string
- maxLength: 128
- minLength: 0
- pattern: ^arn:aws(|-cn|-us-gov):bedrock:[a-zA-Z0-9-]*:[0-9]{12}:knowledge-base/[0-9a-zA-Z]+$
- description: The ARN of the knowledge base.
- Name:
- type: string
- pattern: ^([0-9a-zA-Z][_-]?){1,100}$
- description: The name of the knowledge base.
- Status:
- $ref: '#/components/schemas/KnowledgeBaseStatus'
- RoleArn:
- type: string
- maxLength: 2048
- pattern: ^arn:aws(-[^:]+)?:iam::([0-9]{12})?:role/.+$
- description: The ARN of the IAM role with permissions to invoke API operations on the knowledge base. The ARN must begin with AmazonBedrockExecutionRoleForKnowledgeBase_
- CreatedAt:
+ description: The regex description.
+ Pattern:
type: string
- description: The time at which the knowledge base was created.
- FailureReasons:
- type: array
- items:
- type: string
- maxLength: 2048
- description: Failure Reason for Error.
- maxItems: 2048
- description: A list of reasons that the API operation on the knowledge base failed.
- x-insertionOrder: false
- UpdatedAt:
- type: string
- description: The time at which the knowledge base was last updated.
- StorageConfiguration:
- $ref: '#/components/schemas/StorageConfiguration'
- Tags:
- $ref: '#/components/schemas/TagsMap'
+ minLength: 1
+ description: The regex pattern.
+ Action:
+ $ref: '#/components/schemas/SensitiveInformationAction'
required:
- - KnowledgeBaseConfiguration
- - Name
- - RoleArn
- - StorageConfiguration
- x-stackql-resource-name: knowledge_base
- description: Definition of AWS::Bedrock::KnowledgeBase Resource Type
- x-type-name: AWS::Bedrock::KnowledgeBase
- x-stackql-primary-identifier:
- - KnowledgeBaseId
- x-create-only-properties:
- - StorageConfiguration
- - KnowledgeBaseConfiguration
- x-read-only-properties:
- - KnowledgeBaseId
- - KnowledgeBaseArn
- - CreatedAt
- - UpdatedAt
- - FailureReasons
- - Status
- x-required-properties:
- - KnowledgeBaseConfiguration
+ - Action
- Name
- - RoleArn
- - StorageConfiguration
- x-tagging:
- cloudFormationSystemTags: true
- tagOnCreate: true
- tagProperty: /properties/Tags
- tagUpdatable: true
- taggable: true
- x-required-permissions:
- create:
- - bedrock:CreateKnowledgeBase
- - bedrock:GetKnowledgeBase
- - bedrock:TagResource
- - bedrock:ListTagsForResource
- - bedrock:AssociateThirdPartyKnowledgeBase
- - iam:PassRole
- read:
- - bedrock:GetKnowledgeBase
- - bedrock:ListTagsForResource
- update:
- - bedrock:GetKnowledgeBase
- - bedrock:UpdateKnowledgeBase
- - bedrock:TagResource
- - bedrock:UntagResource
- - bedrock:ListTagsForResource
- - bedrock:AssociateThirdPartyKnowledgeBase
- - iam:PassRole
- delete:
- - bedrock:GetKnowledgeBase
- - bedrock:DeleteKnowledgeBase
- - bedrock:ListDataSources
- list:
- - bedrock:ListKnowledgeBases
- CreateAgentRequest:
+ - Pattern
+ additionalProperties: false
+ SensitiveInformationAction:
+ type: string
+ description: Options for sensitive information action.
+ enum:
+ - BLOCK
+ - ANONYMIZE
+ SensitiveInformationPolicyConfig:
+ type: object
+ description: Sensitive information policy config for a guardrail.
properties:
- ClientToken:
- type: string
- RoleArn:
- type: string
- TypeName:
- type: string
- TypeVersionId:
- type: string
- DesiredState:
- type: object
- properties:
- ActionGroups:
- type: array
- items:
- $ref: '#/components/schemas/AgentActionGroup'
- description: List of ActionGroups
- x-insertionOrder: false
- AgentArn:
- type: string
- maxLength: 2048
- pattern: ^arn:aws(|-cn|-us-gov):bedrock:[a-z0-9-]{1,20}:[0-9]{12}:agent/[0-9a-zA-Z]{10}$
- description: Arn representation of the Agent.
- AgentId:
- type: string
- pattern: ^[0-9a-zA-Z]{10}$
- description: Identifier for a resource.
- AgentName:
- type: string
- pattern: ^([0-9a-zA-Z][_-]?){1,100}$
- description: Name for a resource.
- AgentResourceRoleArn:
- type: string
- maxLength: 2048
- description: ARN of a IAM role.
- AgentStatus:
- $ref: '#/components/schemas/AgentStatus'
- AgentVersion:
- type: string
- maxLength: 5
- minLength: 5
- pattern: ^DRAFT$
- description: Draft Agent Version.
- AutoPrepare:
- description: Specifies whether to automatically prepare after creating or updating the agent.
- type: boolean
- default: false
- CreatedAt:
- type: string
- description: Time Stamp.
- format: date-time
- CustomerEncryptionKeyArn:
- type: string
- maxLength: 2048
- minLength: 1
- pattern: ^arn:aws(|-cn|-us-gov):kms:[a-zA-Z0-9-]*:[0-9]{12}:key/[a-zA-Z0-9-]{36}$
- description: A KMS key ARN
- SkipResourceInUseCheckOnDelete:
- description: Specifies whether to allow deleting agent while it is in use.
- type: boolean
- default: false
- Description:
- type: string
- maxLength: 200
- minLength: 1
- description: Description of the Resource.
- FailureReasons:
- type: array
- items:
- type: string
- maxLength: 2048
- description: Failure Reason for Error.
- maxItems: 2048
- description: Failure Reasons for Error.
- x-insertionOrder: false
- FoundationModel:
- type: string
- maxLength: 2048
- minLength: 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][_-]?)+)$
- description: ARN or name of a Bedrock model.
- IdleSessionTTLInSeconds:
- type: number
- maximum: 3600
- minimum: 60
- description: Max Session Time.
- Instruction:
- type: string
- minLength: 40
- maxLength: 4000
- description: Instruction for the agent.
- KnowledgeBases:
- type: array
- items:
- $ref: '#/components/schemas/AgentKnowledgeBase'
- description: List of Agent Knowledge Bases
- x-insertionOrder: false
- PreparedAt:
- type: string
- description: Time Stamp.
- format: date-time
- PromptOverrideConfiguration:
- $ref: '#/components/schemas/PromptOverrideConfiguration'
- RecommendedActions:
- type: array
- items:
- type: string
- maxLength: 2048
- description: The recommended action users can take to resolve an error in failureReasons.
- maxItems: 2048
- description: The recommended actions users can take to resolve an error in failureReasons.
- x-insertionOrder: false
- Tags:
- $ref: '#/components/schemas/TagsMap'
- TestAliasTags:
- $ref: '#/components/schemas/TagsMap'
- UpdatedAt:
- type: string
- description: Time Stamp.
- format: date-time
- x-stackQL-stringOnly: true
- x-title: CreateAgentRequest
+ PiiEntitiesConfig:
+ type: array
+ items:
+ $ref: '#/components/schemas/PiiEntityConfig'
+ minItems: 1
+ uniqueItems: true
+ description: List of entities.
+ RegexesConfig:
+ type: array
+ items:
+ $ref: '#/components/schemas/RegexConfig'
+ minItems: 1
+ description: List of regex.
+ additionalProperties: false
+ Topic:
type: object
- required: []
- CreateAgentAliasRequest:
+ description: Topic in topic policy.
properties:
- ClientToken:
+ Name:
type: string
- RoleArn:
+ maxLength: 100
+ minLength: 1
+ pattern: ^[0-9a-zA-Z-_ !?.]+$
+ description: Name of topic in topic policy
+ Definition:
type: string
- TypeName:
+ maxLength: 200
+ minLength: 1
+ description: Definition of topic in topic policy
+ Examples:
+ type: array
+ items:
+ type: string
+ maxLength: 100
+ minLength: 1
+ description: Text example in topic policy
+ minItems: 0
+ description: List of text examples
+ Type:
+ $ref: '#/components/schemas/TopicType'
+ required:
+ - Definition
+ - Name
+ - Type
+ additionalProperties: false
+ TopicConfig:
+ type: object
+ description: Topic config in topic policy.
+ properties:
+ Name:
type: string
- TypeVersionId:
+ maxLength: 100
+ minLength: 1
+ pattern: ^[0-9a-zA-Z-_ !?.]+$
+ description: Name of topic in topic policy
+ Definition:
type: string
- DesiredState:
- type: object
- properties:
- AgentAliasArn:
- type: string
- maxLength: 2048
- pattern: ^arn:aws(|-cn|-us-gov):bedrock:[a-z0-9-]{1,20}:[0-9]{12}:agent-alias/[0-9a-zA-Z]{10}/[0-9a-zA-Z]{10}$
- description: Arn representation of the Agent Alias.
- AgentAliasHistoryEvents:
- type: array
- items:
- $ref: '#/components/schemas/AgentAliasHistoryEvent'
- maxItems: 10
- description: The list of history events for an alias for an Agent.
- x-insertionOrder: false
- AgentAliasId:
- type: string
- maxLength: 10
- minLength: 10
- pattern: ^(\bTSTALIASID\b|[0-9a-zA-Z]+)$
- description: Id for an Agent Alias generated at the server side.
- AgentAliasName:
- type: string
- pattern: ^([0-9a-zA-Z][_-]?){1,100}$
- description: Name for a resource.
- AgentAliasStatus:
- $ref: '#/components/schemas/AgentAliasStatus'
- AgentId:
- type: string
- pattern: ^[0-9a-zA-Z]{10}$
- description: Identifier for a resource.
- CreatedAt:
- type: string
- description: Time Stamp.
- Description:
- type: string
- maxLength: 200
- minLength: 1
- description: Description of the Resource.
- RoutingConfiguration:
- type: array
- items:
- $ref: '#/components/schemas/AgentAliasRoutingConfigurationListItem'
- maxItems: 1
- description: Routing configuration for an Agent alias.
- x-insertionOrder: false
- Tags:
- $ref: '#/components/schemas/TagsMap'
- UpdatedAt:
- type: string
- description: Time Stamp.
- x-stackQL-stringOnly: true
- x-title: CreateAgentAliasRequest
+ maxLength: 200
+ minLength: 1
+ description: Definition of topic in topic policy
+ Examples:
+ type: array
+ items:
+ type: string
+ maxLength: 100
+ minLength: 1
+ description: Text example in topic policy
+ minItems: 0
+ description: List of text examples
+ Type:
+ $ref: '#/components/schemas/TopicType'
+ required:
+ - Definition
+ - Name
+ - Type
+ additionalProperties: false
+ TopicPolicyConfig:
type: object
- required: []
- CreateDataSourceRequest:
+ description: Topic policy config for a guardrail.
properties:
- ClientToken:
+ TopicsConfig:
+ type: array
+ items:
+ $ref: '#/components/schemas/TopicConfig'
+ minItems: 1
+ description: List of topic configs in topic policy.
+ required:
+ - TopicsConfig
+ additionalProperties: false
+ TopicType:
+ type: string
+ description: Type of topic in a policy
+ enum:
+ - DENY
+ WordConfig:
+ type: object
+ description: A custom word config.
+ properties:
+ Text:
type: string
- RoleArn:
+ minLength: 1
+ description: The custom word text.
+ required:
+ - Text
+ additionalProperties: false
+ WordPolicyConfig:
+ type: object
+ description: Word policy config for a guardrail.
+ properties:
+ WordsConfig:
+ type: array
+ items:
+ $ref: '#/components/schemas/WordConfig'
+ minItems: 1
+ description: List of custom word configs.
+ ManagedWordListsConfig:
+ type: array
+ items:
+ $ref: '#/components/schemas/ManagedWordsConfig'
+ description: A config for the list of managed words.
+ additionalProperties: false
+ Guardrail:
+ type: object
+ properties:
+ BlockedInputMessaging:
type: string
- TypeName:
+ maxLength: 500
+ minLength: 1
+ description: Messaging for when violations are detected in text
+ BlockedOutputsMessaging:
type: string
- TypeVersionId:
+ maxLength: 500
+ minLength: 1
+ description: Messaging for when violations are detected in text
+ ContentPolicyConfig:
+ $ref: '#/components/schemas/ContentPolicyConfig'
+ ContextualGroundingPolicyConfig:
+ $ref: '#/components/schemas/ContextualGroundingPolicyConfig'
+ CreatedAt:
type: string
- DesiredState:
- type: object
- properties:
- DataSourceConfiguration:
- $ref: '#/components/schemas/DataSourceConfiguration'
- DataSourceId:
- type: string
- pattern: ^[0-9a-zA-Z]{10}$
- description: Identifier for a resource.
- Description:
- type: string
- maxLength: 200
- minLength: 1
- description: Description of the Resource.
- KnowledgeBaseId:
- type: string
- pattern: ^[0-9a-zA-Z]{10}$
- description: The unique identifier of the knowledge base to which to add the data source.
- DataSourceStatus:
- $ref: '#/components/schemas/DataSourceStatus'
- Name:
- type: string
- pattern: ^([0-9a-zA-Z][_-]?){1,100}$
- description: The name of the data source.
- ServerSideEncryptionConfiguration:
- $ref: '#/components/schemas/ServerSideEncryptionConfiguration'
- VectorIngestionConfiguration:
- $ref: '#/components/schemas/VectorIngestionConfiguration'
- DataDeletionPolicy:
- $ref: '#/components/schemas/DataDeletionPolicy'
- CreatedAt:
- type: string
- description: The time at which the data source was created.
- UpdatedAt:
- type: string
- description: The time at which the knowledge base was last updated.
- FailureReasons:
- type: array
- items:
- type: string
- maxLength: 2048
- description: Failure Reason for Error.
- maxItems: 2048
- description: The details of the failure reasons related to the data source.
- x-insertionOrder: false
- x-stackQL-stringOnly: true
- x-title: CreateDataSourceRequest
- type: object
- required: []
- CreateGuardrailRequest:
- properties:
- ClientToken:
+ description: Time Stamp
+ format: date-time
+ Description:
type: string
- RoleArn:
+ maxLength: 200
+ minLength: 1
+ description: Description of the guardrail or its version
+ FailureRecommendations:
+ type: array
+ items:
+ type: string
+ maxLength: 200
+ minLength: 1
+ description: Recommendation for guardrail failure status
+ maxItems: 100
+ description: List of failure recommendations
+ GuardrailArn:
type: string
- TypeName:
+ maxLength: 2048
+ pattern: ^arn:aws(-[^:]+)?:bedrock:[a-z0-9-]{1,20}:[0-9]{12}:guardrail/[a-z0-9]+$
+ description: Arn representation for the guardrail
+ GuardrailId:
type: string
- TypeVersionId:
+ maxLength: 64
+ pattern: ^[a-z0-9]+$
+ description: Unique id for the guardrail
+ KmsKeyArn:
type: string
- DesiredState:
- type: object
- properties:
- BlockedInputMessaging:
- type: string
- maxLength: 500
- minLength: 1
- description: Messaging for when violations are detected in text
- BlockedOutputsMessaging:
- type: string
- maxLength: 500
- minLength: 1
- description: Messaging for when violations are detected in text
- ContentPolicyConfig:
- $ref: '#/components/schemas/ContentPolicyConfig'
- CreatedAt:
- type: string
- description: Time Stamp
- format: date-time
- Description:
- type: string
- maxLength: 200
- minLength: 1
- description: Description of the guardrail or its version
- FailureRecommendations:
- type: array
- items:
- type: string
- maxLength: 200
- minLength: 1
- description: Recommendation for guardrail failure status
- maxItems: 100
- description: List of failure recommendations
- GuardrailArn:
- type: string
- maxLength: 2048
- pattern: ^arn:aws(-[^:]+)?:bedrock:[a-z0-9-]{1,20}:[0-9]{12}:guardrail/[a-z0-9]+$
- description: Arn representation for the guardrail
- GuardrailId:
- type: string
- maxLength: 64
- pattern: ^[a-z0-9]+$
- description: Unique id for the guardrail
- KmsKeyArn:
- type: string
- maxLength: 2048
- minLength: 1
- pattern: ^arn:aws(-[^:]+)?:kms:[a-zA-Z0-9-]*:[0-9]{12}:key/[a-zA-Z0-9-]{36}$
- description: The KMS key with which the guardrail was encrypted at rest
- Name:
- type: string
- maxLength: 50
- minLength: 1
- pattern: ^[0-9a-zA-Z-_]+$
- description: Name of the guardrail
- SensitiveInformationPolicyConfig:
- $ref: '#/components/schemas/SensitiveInformationPolicyConfig'
- Status:
- $ref: '#/components/schemas/GuardrailStatus'
- StatusReasons:
- type: array
- items:
- type: string
- maxLength: 200
- minLength: 1
- description: Reason for guardrail status
- maxItems: 100
- description: List of status reasons
- Tags:
- type: array
- items:
- $ref: '#/components/schemas/Tag'
- maxItems: 200
- minItems: 0
- description: List of Tags
- TopicPolicyConfig:
- $ref: '#/components/schemas/TopicPolicyConfig'
- UpdatedAt:
- type: string
- description: Time Stamp
- format: date-time
- Version:
- type: string
- pattern: ^(([1-9][0-9]{0,7})|(DRAFT))$
- description: Guardrail version
- WordPolicyConfig:
- $ref: '#/components/schemas/WordPolicyConfig'
- x-stackQL-stringOnly: true
- x-title: CreateGuardrailRequest
- type: object
- required: []
- CreateGuardrailVersionRequest:
- properties:
- ClientToken:
- type: string
- RoleArn:
+ maxLength: 2048
+ minLength: 1
+ pattern: ^arn:aws(-[^:]+)?:kms:[a-zA-Z0-9-]*:[0-9]{12}:key/[a-zA-Z0-9-]{36}$
+ description: The KMS key with which the guardrail was encrypted at rest
+ Name:
type: string
- TypeName:
+ maxLength: 50
+ minLength: 1
+ pattern: ^[0-9a-zA-Z-_]+$
+ description: Name of the guardrail
+ SensitiveInformationPolicyConfig:
+ $ref: '#/components/schemas/SensitiveInformationPolicyConfig'
+ Status:
+ $ref: '#/components/schemas/GuardrailStatus'
+ StatusReasons:
+ type: array
+ items:
+ type: string
+ maxLength: 200
+ minLength: 1
+ description: Reason for guardrail status
+ maxItems: 100
+ description: List of status reasons
+ Tags:
+ type: array
+ items:
+ $ref: '#/components/schemas/Tag'
+ maxItems: 200
+ minItems: 0
+ description: List of Tags
+ TopicPolicyConfig:
+ $ref: '#/components/schemas/TopicPolicyConfig'
+ UpdatedAt:
type: string
- TypeVersionId:
+ description: Time Stamp
+ format: date-time
+ Version:
type: string
- DesiredState:
- type: object
- properties:
- Description:
- type: string
- maxLength: 200
- minLength: 1
- description: Description of the Guardrail version
- GuardrailArn:
- type: string
- maxLength: 2048
- pattern: ^arn:aws(-[^:]+)?:bedrock:[a-z0-9-]{1,20}:[0-9]{12}:guardrail/[a-z0-9]+$
- description: Arn representation for the guardrail
- GuardrailId:
- type: string
- maxLength: 64
- pattern: ^[a-z0-9]+$
- description: Unique id for the guardrail
- GuardrailIdentifier:
- type: string
- maxLength: 2048
- pattern: ^(([a-z0-9]+)|(arn:aws(-[^:]+)?:bedrock:[a-z0-9-]{1,20}:[0-9]{12}:guardrail/[a-z0-9]+))$
- description: Identifier (GuardrailId or GuardrailArn) for the guardrail
- Version:
- type: string
- pattern: ^[1-9][0-9]{0,7}$
- description: Guardrail version
- x-stackQL-stringOnly: true
- x-title: CreateGuardrailVersionRequest
+ pattern: ^(([1-9][0-9]{0,7})|(DRAFT))$
+ description: Guardrail version
+ WordPolicyConfig:
+ $ref: '#/components/schemas/WordPolicyConfig'
+ required:
+ - Name
+ - BlockedInputMessaging
+ - BlockedOutputsMessaging
+ x-stackql-resource-name: guardrail
+ description: Definition of AWS::Bedrock::Guardrail Resource Type
+ x-type-name: AWS::Bedrock::Guardrail
+ x-stackql-primary-identifier:
+ - GuardrailArn
+ x-read-only-properties:
+ - CreatedAt
+ - FailureRecommendations
+ - GuardrailArn
+ - GuardrailId
+ - Status
+ - StatusReasons
+ - UpdatedAt
+ - Version
+ x-required-properties:
+ - Name
+ - BlockedInputMessaging
+ - BlockedOutputsMessaging
+ x-tagging:
+ cloudFormationSystemTags: false
+ tagOnCreate: true
+ tagProperty: /properties/Tags
+ tagUpdatable: true
+ taggable: true
+ x-required-permissions:
+ create:
+ - bedrock:CreateGuardrail
+ - bedrock:GetGuardrail
+ - kms:DescribeKey
+ - kms:CreateGrant
+ - kms:GenerateDataKey
+ - kms:Decrypt
+ - bedrock:TagResource
+ - bedrock:ListTagsForResource
+ read:
+ - bedrock:GetGuardrail
+ - kms:Decrypt
+ - bedrock:ListTagsForResource
+ update:
+ - bedrock:UpdateGuardrail
+ - bedrock:GetGuardrail
+ - bedrock:ListTagsForResource
+ - bedrock:TagResource
+ - bedrock:UntagResource
+ - kms:DescribeKey
+ - kms:CreateGrant
+ - kms:GenerateDataKey
+ - kms:Decrypt
+ delete:
+ - bedrock:DeleteGuardrail
+ - bedrock:GetGuardrail
+ - kms:Decrypt
+ - kms:RetireGrant
+ list:
+ - bedrock:ListGuardrails
+ GuardrailVersion:
type: object
- required: []
- CreateKnowledgeBaseRequest:
properties:
- ClientToken:
+ Description:
type: string
- RoleArn:
+ maxLength: 200
+ minLength: 1
+ description: Description of the Guardrail version
+ GuardrailArn:
type: string
- TypeName:
+ maxLength: 2048
+ pattern: ^arn:aws(-[^:]+)?:bedrock:[a-z0-9-]{1,20}:[0-9]{12}:guardrail/[a-z0-9]+$
+ description: Arn representation for the guardrail
+ GuardrailId:
type: string
- TypeVersionId:
+ maxLength: 64
+ pattern: ^[a-z0-9]+$
+ description: Unique id for the guardrail
+ GuardrailIdentifier:
type: string
- DesiredState:
- type: object
- properties:
- Description:
- type: string
- maxLength: 200
- minLength: 1
- description: Description of the Resource.
- KnowledgeBaseConfiguration:
- $ref: '#/components/schemas/KnowledgeBaseConfiguration'
- KnowledgeBaseId:
- type: string
- pattern: ^[0-9a-zA-Z]{10}$
- description: The unique identifier of the knowledge base.
- KnowledgeBaseArn:
- type: string
- maxLength: 128
- minLength: 0
- pattern: ^arn:aws(|-cn|-us-gov):bedrock:[a-zA-Z0-9-]*:[0-9]{12}:knowledge-base/[0-9a-zA-Z]+$
- description: The ARN of the knowledge base.
- Name:
- type: string
- pattern: ^([0-9a-zA-Z][_-]?){1,100}$
- description: The name of the knowledge base.
- Status:
- $ref: '#/components/schemas/KnowledgeBaseStatus'
- RoleArn:
- type: string
- maxLength: 2048
- pattern: ^arn:aws(-[^:]+)?:iam::([0-9]{12})?:role/.+$
- description: The ARN of the IAM role with permissions to invoke API operations on the knowledge base. The ARN must begin with AmazonBedrockExecutionRoleForKnowledgeBase_
- CreatedAt:
- type: string
- description: The time at which the knowledge base was created.
- FailureReasons:
- type: array
- items:
- type: string
- maxLength: 2048
- description: Failure Reason for Error.
- maxItems: 2048
- description: A list of reasons that the API operation on the knowledge base failed.
- x-insertionOrder: false
- UpdatedAt:
- type: string
- description: The time at which the knowledge base was last updated.
- StorageConfiguration:
- $ref: '#/components/schemas/StorageConfiguration'
- Tags:
- $ref: '#/components/schemas/TagsMap'
- x-stackQL-stringOnly: true
- x-title: CreateKnowledgeBaseRequest
- type: object
- required: []
+ maxLength: 2048
+ pattern: ^(([a-z0-9]+)|(arn:aws(-[^:]+)?:bedrock:[a-z0-9-]{1,20}:[0-9]{12}:guardrail/[a-z0-9]+))$
+ description: Identifier (GuardrailId or GuardrailArn) for the guardrail
+ Version:
+ type: string
+ pattern: ^[1-9][0-9]{0,7}$
+ description: Guardrail version
+ required:
+ - GuardrailIdentifier
+ x-stackql-resource-name: guardrail_version
+ description: Definition of AWS::Bedrock::GuardrailVersion Resource Type
+ x-type-name: AWS::Bedrock::GuardrailVersion
+ x-stackql-primary-identifier:
+ - GuardrailId
+ - Version
+ x-create-only-properties:
+ - Description
+ - GuardrailIdentifier
+ x-write-only-properties:
+ - GuardrailIdentifier
+ x-read-only-properties:
+ - GuardrailArn
+ - GuardrailId
+ - Version
+ x-required-properties:
+ - GuardrailIdentifier
+ x-tagging:
+ taggable: false
+ x-required-permissions:
+ create:
+ - bedrock:CreateGuardrailVersion
+ - bedrock:GetGuardrail
+ - kms:CreateGrant
+ - kms:Decrypt
+ read:
+ - bedrock:GetGuardrail
+ - kms:Decrypt
+ delete:
+ - bedrock:DeleteGuardrail
+ - bedrock:GetGuardrail
+ - kms:RetireGrant
+ KnowledgeBaseConfiguration:
+ type: object
+ description: Contains details about the embeddings model used for the knowledge base.
+ properties:
+ Type:
+ $ref: '#/components/schemas/KnowledgeBaseType'
+ VectorKnowledgeBaseConfiguration:
+ $ref: '#/components/schemas/VectorKnowledgeBaseConfiguration'
+ KendraKnowledgeBaseConfiguration:
+ $ref: '#/components/schemas/KendraKnowledgeBaseConfiguration'
+ required:
+ - Type
+ additionalProperties: false
+ KnowledgeBaseStatus:
+ type: string
+ description: The status of a knowledge base.
+ enum:
+ - CREATING
+ - ACTIVE
+ - DELETING
+ - UPDATING
+ - FAILED
+ - DELETE_UNSUCCESSFUL
+ KnowledgeBaseStorageType:
+ type: string
+ description: The storage type of a knowledge base.
+ enum:
+ - OPENSEARCH_SERVERLESS
+ - PINECONE
+ - RDS
+ - MONGO_DB_ATLAS
+ KnowledgeBaseType:
+ type: string
+ description: The type of a knowledge base.
+ enum:
+ - VECTOR
+ - KENDRA
+ OpenSearchServerlessConfiguration:
+ type: object
+ description: Contains the storage configuration of the knowledge base in Amazon OpenSearch Service.
+ properties:
+ CollectionArn:
+ type: string
+ maxLength: 2048
+ pattern: ^arn:aws(|-cn|-us-gov|-iso):aoss:[a-z]{2}(-gov)?-[a-z]+-\d{1}:\d{12}:collection/[a-z0-9-]{3,32}$
+ description: The ARN of the OpenSearch Service vector store.
+ VectorIndexName:
+ type: string
+ maxLength: 2048
+ pattern: ^.*$
+ description: The name of the vector store.
+ FieldMapping:
+ $ref: '#/components/schemas/OpenSearchServerlessFieldMapping'
+ required:
+ - CollectionArn
+ - FieldMapping
+ - VectorIndexName
+ additionalProperties: false
+ OpenSearchServerlessFieldMapping:
+ type: object
+ description: A mapping of Bedrock Knowledge Base fields to OpenSearch Serverless field names
+ properties:
+ VectorField:
+ type: string
+ maxLength: 2048
+ pattern: ^.*$
+ description: The name of the field in which Amazon Bedrock stores the vector embeddings for your data sources.
+ TextField:
+ type: string
+ maxLength: 2048
+ pattern: ^.*$
+ description: The name of the field in which Amazon Bedrock stores the raw text from your data. The text is split according to the chunking strategy you choose.
+ MetadataField:
+ type: string
+ maxLength: 2048
+ pattern: ^.*$
+ description: The name of the field in which Amazon Bedrock stores metadata about the vector store.
+ required:
+ - MetadataField
+ - TextField
+ - VectorField
+ additionalProperties: false
+ PineconeConfiguration:
+ type: object
+ description: Contains the storage configuration of the knowledge base in Pinecone.
+ properties:
+ ConnectionString:
+ type: string
+ maxLength: 2048
+ pattern: ^.*$
+ description: The endpoint URL for your index management page.
+ CredentialsSecretArn:
+ type: string
+ pattern: ^arn:aws(|-cn|-us-gov):secretsmanager:[a-z0-9-]{1,20}:([0-9]{12}|):secret:[a-zA-Z0-9!/_+=.@-]{1,512}$
+ description: The ARN of the secret that you created in AWS Secrets Manager that is linked to your Pinecone API key.
+ Namespace:
+ type: string
+ maxLength: 2048
+ pattern: ^.*$
+ description: The namespace to be used to write new data to your database.
+ FieldMapping:
+ $ref: '#/components/schemas/PineconeFieldMapping'
+ required:
+ - ConnectionString
+ - CredentialsSecretArn
+ - FieldMapping
+ additionalProperties: false
+ PineconeFieldMapping:
+ type: object
+ description: Contains the names of the fields to which to map information about the vector store.
+ properties:
+ TextField:
+ type: string
+ maxLength: 2048
+ pattern: ^.*$
+ description: The name of the field in which Amazon Bedrock stores the raw text from your data. The text is split according to the chunking strategy you choose.
+ MetadataField:
+ type: string
+ maxLength: 2048
+ pattern: ^.*$
+ description: The name of the field in which Amazon Bedrock stores metadata about the vector store.
+ required:
+ - MetadataField
+ - TextField
+ additionalProperties: false
+ RdsConfiguration:
+ type: object
+ description: Contains details about the storage configuration of the knowledge base in Amazon RDS. For more information, see Create a vector index in Amazon RDS.
+ properties:
+ ResourceArn:
+ type: string
+ pattern: ^arn:aws(|-cn|-us-gov):rds:[a-zA-Z0-9-]*:[0-9]{12}:cluster:[a-zA-Z0-9-]{1,63}$
+ description: The ARN of the vector store.
+ CredentialsSecretArn:
+ type: string
+ pattern: ^arn:aws(|-cn|-us-gov):secretsmanager:[a-z0-9-]{1,20}:([0-9]{12}|):secret:[a-zA-Z0-9!/_+=.@-]{1,512}$
+ description: The ARN of the secret that you created in AWS Secrets Manager that is linked to your Amazon RDS database.
+ DatabaseName:
+ type: string
+ maxLength: 63
+ pattern: ^[a-zA-Z0-9_\-]+$
+ description: The name of your Amazon RDS database.
+ TableName:
+ type: string
+ maxLength: 63
+ pattern: ^[a-zA-Z0-9_\.\-]+$
+ description: The name of the table in the database.
+ FieldMapping:
+ $ref: '#/components/schemas/RdsFieldMapping'
+ required:
+ - CredentialsSecretArn
+ - DatabaseName
+ - FieldMapping
+ - ResourceArn
+ - TableName
+ additionalProperties: false
+ RdsFieldMapping:
+ type: object
+ description: Contains the names of the fields to which to map information about the vector store.
+ properties:
+ PrimaryKeyField:
+ type: string
+ maxLength: 63
+ pattern: ^[a-zA-Z0-9_\-]+$
+ description: The name of the field in which Amazon Bedrock stores the ID for each entry.
+ VectorField:
+ type: string
+ maxLength: 63
+ pattern: ^[a-zA-Z0-9_\-]+$
+ description: The name of the field in which Amazon Bedrock stores the vector embeddings for your data sources.
+ TextField:
+ type: string
+ maxLength: 63
+ pattern: ^[a-zA-Z0-9_\-]+$
+ description: The name of the field in which Amazon Bedrock stores the raw text from your data. The text is split according to the chunking strategy you choose.
+ MetadataField:
+ type: string
+ maxLength: 63
+ pattern: ^[a-zA-Z0-9_\-]+$
+ description: The name of the field in which Amazon Bedrock stores metadata about the vector store.
+ required:
+ - MetadataField
+ - PrimaryKeyField
+ - TextField
+ - VectorField
+ additionalProperties: false
+ RedisEnterpriseCloudConfiguration:
+ type: object
+ description: Contains the storage configuration of the knowledge base in Redis Enterprise Cloud.
+ properties:
+ Endpoint:
+ type: string
+ maxLength: 2048
+ pattern: ^.*$
+ description: The endpoint URL of the Redis Enterprise Cloud database.
+ VectorIndexName:
+ type: string
+ maxLength: 2048
+ pattern: ^.*$
+ description: The name of the vector index.
+ CredentialsSecretArn:
+ type: string
+ pattern: ^arn:aws(|-cn|-us-gov):secretsmanager:[a-z0-9-]{1,20}:([0-9]{12}|):secret:[a-zA-Z0-9!/_+=.@-]{1,512}$
+ description: The ARN of the secret that you created in AWS Secrets Manager that is linked to your Redis Enterprise Cloud database.
+ FieldMapping:
+ $ref: '#/components/schemas/RedisEnterpriseCloudFieldMapping'
+ required:
+ - CredentialsSecretArn
+ - Endpoint
+ - FieldMapping
+ - VectorIndexName
+ additionalProperties: false
+ RedisEnterpriseCloudFieldMapping:
+ type: object
+ description: Contains the names of the fields to which to map information about the vector store.
+ properties:
+ VectorField:
+ type: string
+ maxLength: 2048
+ pattern: ^.*$
+ description: The name of the field in which Amazon Bedrock stores the vector embeddings for your data sources.
+ TextField:
+ type: string
+ maxLength: 2048
+ pattern: ^.*$
+ description: The name of the field in which Amazon Bedrock stores the raw text from your data. The text is split according to the chunking strategy you choose.
+ MetadataField:
+ type: string
+ maxLength: 2048
+ pattern: ^.*$
+ description: The name of the field in which Amazon Bedrock stores metadata about the vector store.
+ required:
+ - MetadataField
+ - TextField
+ - VectorField
+ additionalProperties: false
+ MongoDbAtlasFieldMapping:
+ type: object
+ description: Contains the names of the fields to which to map information about the vector store.
+ properties:
+ VectorField:
+ type: string
+ maxLength: 2048
+ pattern: ^.*$
+ description: The name of the field in which Amazon Bedrock stores the vector embeddings for your data sources.
+ TextField:
+ type: string
+ maxLength: 2048
+ pattern: ^.*$
+ description: The name of the field in which Amazon Bedrock stores the raw text from your data. The text is split according to the chunking strategy you choose.
+ MetadataField:
+ type: string
+ maxLength: 2048
+ pattern: ^.*$
+ description: The name of the field in which Amazon Bedrock stores metadata about the vector store.
+ required:
+ - VectorField
+ - MetadataField
+ - TextField
+ additionalProperties: false
+ MongoDbAtlasConfiguration:
+ type: object
+ description: Contains the storage configuration of the knowledge base in MongoDb Atlas Cloud.
+ properties:
+ Endpoint:
+ type: string
+ maxLength: 2048
+ pattern: ^[a-zA-Z0-9_-]+\.[a-zA-Z0-9_-]+\.mongodb\.net$
+ description: MongoDB Atlas endpoint.
+ CredentialsSecretArn:
+ type: string
+ pattern: ^arn:aws(|-cn|-us-gov):secretsmanager:[a-z0-9-]{1,20}:([0-9]{12}|):secret:[a-zA-Z0-9!/_+=.@-]{1,512}$
+ description: The ARN of the secret that you created in AWS Secrets Manager that is linked to your Amazon Mongo database.
+ DatabaseName:
+ type: string
+ maxLength: 63
+ pattern: ^.*$
+ description: Name of the database within MongoDB Atlas.
+ CollectionName:
+ type: string
+ maxLength: 63
+ pattern: ^.*$
+ description: Name of the collection within MongoDB Atlas.
+ VectorIndexName:
+ type: string
+ maxLength: 2048
+ pattern: ^.*$
+ description: Name of a MongoDB Atlas index.
+ EndpointServiceName:
+ type: string
+ maxLength: 255
+ pattern: ^(?:arn:aws(?:-us-gov|-cn|-iso|-iso-[a-z])*:.+:.*:\d+:.+/.+$|[a-zA-Z0-9*]+[a-zA-Z0-9._-]*)$
+ description: MongoDB Atlas endpoint service name.
+ FieldMapping:
+ $ref: '#/components/schemas/MongoDbAtlasFieldMapping'
+ required:
+ - Endpoint
+ - CredentialsSecretArn
+ - DatabaseName
+ - CollectionName
+ - VectorIndexName
+ - FieldMapping
+ additionalProperties: false
+ StorageConfiguration:
+ type: object
+ description: The vector store service in which the knowledge base is stored.
+ properties:
+ Type:
+ $ref: '#/components/schemas/KnowledgeBaseStorageType'
+ OpensearchServerlessConfiguration:
+ $ref: '#/components/schemas/OpenSearchServerlessConfiguration'
+ PineconeConfiguration:
+ $ref: '#/components/schemas/PineconeConfiguration'
+ RdsConfiguration:
+ $ref: '#/components/schemas/RdsConfiguration'
+ MongoDbAtlasConfiguration:
+ $ref: '#/components/schemas/MongoDbAtlasConfiguration'
+ required:
+ - Type
+ oneOf:
+ - required:
+ - OpensearchServerlessConfiguration
+ - required:
+ - PineconeConfiguration
+ - required:
+ - RdsConfiguration
+ - required:
+ - MongoDbAtlasConfiguration
+ additionalProperties: false
+ BedrockEmbeddingModelConfiguration:
+ type: object
+ description: The vector configuration details for the Bedrock embeddings model.
+ properties:
+ Dimensions:
+ type: integer
+ maximum: 4096
+ minimum: 0
+ description: The dimensions details for the vector configuration used on the Bedrock embeddings model.
+ additionalProperties: false
+ EmbeddingModelConfiguration:
+ type: object
+ description: The embeddings model configuration details for the vector model used in Knowledge Base.
+ properties:
+ BedrockEmbeddingModelConfiguration:
+ $ref: '#/components/schemas/BedrockEmbeddingModelConfiguration'
+ additionalProperties: false
+ VectorKnowledgeBaseConfiguration:
+ type: object
+ description: Contains details about the model used to create vector embeddings for the knowledge base.
+ properties:
+ EmbeddingModelArn:
+ type: string
+ maxLength: 2048
+ minLength: 20
+ pattern: ^(arn:aws(-[^:]+)?:[a-z0-9-]+:[a-z0-9-]{1,20}:[0-9]{0,12}:[a-zA-Z0-9-:/._+]+)$
+ description: The ARN of the model used to create vector embeddings for the knowledge base.
+ EmbeddingModelConfiguration:
+ $ref: '#/components/schemas/EmbeddingModelConfiguration'
+ SupplementalDataStorageConfiguration:
+ $ref: '#/components/schemas/SupplementalDataStorageConfiguration'
+ required:
+ - EmbeddingModelArn
+ additionalProperties: false
+ SupplementalDataStorageLocationType:
+ type: string
+ description: Supplemental data storage location type.
+ enum:
+ - S3
+ SupplementalDataStorageLocation:
+ type: object
+ description: Supplemental data storage location.
+ properties:
+ SupplementalDataStorageLocationType:
+ $ref: '#/components/schemas/SupplementalDataStorageLocationType'
+ S3Location:
+ $ref: '#/components/schemas/S3Location'
+ required:
+ - SupplementalDataStorageLocationType
+ additionalProperties: false
+ SupplementalDataStorageLocations:
+ type: array
+ items:
+ $ref: '#/components/schemas/SupplementalDataStorageLocation'
+ maxItems: 1
+ minItems: 1
+ description: List of supplemental data storage locations.
+ x-insertionOrder: false
+ SupplementalDataStorageConfiguration:
+ type: object
+ description: Configurations for supplemental data storage.
+ properties:
+ SupplementalDataStorageLocations:
+ $ref: '#/components/schemas/SupplementalDataStorageLocations'
+ required:
+ - SupplementalDataStorageLocations
+ additionalProperties: false
+ KendraKnowledgeBaseConfiguration:
+ type: object
+ description: Configurations for a Kendra knowledge base
+ properties:
+ KendraIndexArn:
+ $ref: '#/components/schemas/KendraIndexArn'
+ required:
+ - KendraIndexArn
+ additionalProperties: false
+ KendraIndexArn:
+ type: string
+ description: Arn of a Kendra index
+ pattern: ^arn:aws(|-cn|-us-gov):kendra:[a-z0-9-]{1,20}:([0-9]{12}|):index/([a-zA-Z0-9][a-zA-Z0-9-]{35}|[a-zA-Z0-9][a-zA-Z0-9-]{35}-[a-zA-Z0-9][a-zA-Z0-9-]{35})$
+ KnowledgeBase:
+ type: object
+ properties:
+ Description:
+ type: string
+ maxLength: 200
+ minLength: 1
+ description: Description of the Resource.
+ KnowledgeBaseConfiguration:
+ $ref: '#/components/schemas/KnowledgeBaseConfiguration'
+ KnowledgeBaseId:
+ type: string
+ pattern: ^[0-9a-zA-Z]{10}$
+ description: The unique identifier of the knowledge base.
+ KnowledgeBaseArn:
+ type: string
+ maxLength: 128
+ minLength: 0
+ pattern: ^arn:aws(|-cn|-us-gov):bedrock:[a-zA-Z0-9-]*:[0-9]{12}:knowledge-base/[0-9a-zA-Z]+$
+ description: The ARN of the knowledge base.
+ Name:
+ type: string
+ pattern: ^([0-9a-zA-Z][_-]?){1,100}$
+ description: The name of the knowledge base.
+ Status:
+ $ref: '#/components/schemas/KnowledgeBaseStatus'
+ RoleArn:
+ type: string
+ maxLength: 2048
+ pattern: ^arn:aws(-[^:]+)?:iam::([0-9]{12})?:role/.+$
+ description: The ARN of the IAM role with permissions to invoke API operations on the knowledge base. The ARN must begin with AmazonBedrockExecutionRoleForKnowledgeBase_
+ CreatedAt:
+ type: string
+ description: The time at which the knowledge base was created.
+ FailureReasons:
+ type: array
+ items:
+ type: string
+ maxLength: 2048
+ description: Failure Reason for Error.
+ maxItems: 2048
+ description: A list of reasons that the API operation on the knowledge base failed.
+ x-insertionOrder: false
+ UpdatedAt:
+ type: string
+ description: The time at which the knowledge base was last updated.
+ StorageConfiguration:
+ $ref: '#/components/schemas/StorageConfiguration'
+ Tags:
+ $ref: '#/components/schemas/TagsMap'
+ required:
+ - KnowledgeBaseConfiguration
+ - Name
+ - RoleArn
+ x-stackql-resource-name: knowledge_base
+ description: Definition of AWS::Bedrock::KnowledgeBase Resource Type
+ x-type-name: AWS::Bedrock::KnowledgeBase
+ x-stackql-primary-identifier:
+ - KnowledgeBaseId
+ x-create-only-properties:
+ - StorageConfiguration
+ - KnowledgeBaseConfiguration
+ x-read-only-properties:
+ - KnowledgeBaseId
+ - KnowledgeBaseArn
+ - CreatedAt
+ - UpdatedAt
+ - FailureReasons
+ - Status
+ x-required-properties:
+ - KnowledgeBaseConfiguration
+ - Name
+ - RoleArn
+ x-tagging:
+ cloudFormationSystemTags: true
+ tagOnCreate: true
+ tagProperty: /properties/Tags
+ tagUpdatable: true
+ taggable: true
+ x-required-permissions:
+ create:
+ - bedrock:CreateKnowledgeBase
+ - bedrock:GetKnowledgeBase
+ - bedrock:TagResource
+ - bedrock:ListTagsForResource
+ - bedrock:AssociateThirdPartyKnowledgeBase
+ - iam:PassRole
+ read:
+ - bedrock:GetKnowledgeBase
+ - bedrock:ListTagsForResource
+ update:
+ - bedrock:GetKnowledgeBase
+ - bedrock:UpdateKnowledgeBase
+ - bedrock:TagResource
+ - bedrock:UntagResource
+ - bedrock:ListTagsForResource
+ - bedrock:AssociateThirdPartyKnowledgeBase
+ - iam:PassRole
+ delete:
+ - bedrock:GetKnowledgeBase
+ - bedrock:DeleteKnowledgeBase
+ - bedrock:ListDataSources
+ list:
+ - bedrock:ListKnowledgeBases
+ PromptVariant:
+ type: object
+ description: Prompt variant
+ properties:
+ Name:
+ type: string
+ pattern: ^([0-9a-zA-Z][_-]?){1,100}$
+ description: Name for a variant.
+ TemplateType:
+ $ref: '#/components/schemas/PromptTemplateType'
+ TemplateConfiguration:
+ $ref: '#/components/schemas/PromptTemplateConfiguration'
+ ModelId:
+ type: string
+ maxLength: 2048
+ minLength: 1
+ pattern: ^(arn:aws(-[^:]{1,12})?:(bedrock|sagemaker):[a-z0-9-]{1,20}:([0-9]{12})?:([a-z-]+/)?)?([a-zA-Z0-9.-]{1,63}){0,2}(([:][a-z0-9-]{1,63}){0,2})?(/[a-z0-9]{1,12})?$
+ description: ARN or Id of a Bedrock Foundational Model or Inference Profile, or the ARN of a imported model, or a provisioned throughput ARN for custom models.
+ InferenceConfiguration:
+ $ref: '#/components/schemas/PromptInferenceConfiguration'
+ required:
+ - Name
+ - TemplateType
+ - TemplateConfiguration
+ additionalProperties: false
+ ChatPromptTemplateConfiguration:
+ type: object
+ description: Configuration for chat prompt template
+ properties:
+ Messages:
+ type: array
+ items:
+ $ref: '#/components/schemas/Message'
+ minItems: 0
+ description: List of messages for chat prompt template
+ x-insertionOrder: true
+ System:
+ type: array
+ items:
+ $ref: '#/components/schemas/SystemContentBlock'
+ minItems: 0
+ description: Configuration for chat prompt template
+ x-insertionOrder: true
+ ToolConfiguration:
+ $ref: '#/components/schemas/ToolConfiguration'
+ InputVariables:
+ type: array
+ items:
+ $ref: '#/components/schemas/PromptInputVariable'
+ maxItems: 5
+ minItems: 0
+ description: List of input variables
+ x-insertionOrder: true
+ required:
+ - Messages
+ additionalProperties: false
+ TextS3Location:
+ type: object
+ description: The identifier for the S3 resource.
+ properties:
+ Bucket:
+ type: string
+ maxLength: 63
+ minLength: 3
+ pattern: ^[a-z0-9][\.\-a-z0-9]{1,61}[a-z0-9]$
+ description: A bucket in S3
+ Key:
+ type: string
+ maxLength: 1024
+ minLength: 1
+ description: A object key in S3
+ Version:
+ type: string
+ maxLength: 1024
+ minLength: 1
+ description: The version of the the S3 object to use
+ required:
+ - Bucket
+ - Key
+ additionalProperties: false
+ ConversationRole:
+ type: string
+ description: Conversation roles for the chat prompt
+ enum:
+ - user
+ - assistant
+ ContentBlock:
+ description: Configuration for chat prompt template
+ oneOf:
+ - title: Text
+ type: object
+ properties:
+ Text:
+ type: string
+ minLength: 1
+ description: Configuration for chat prompt template
+ required:
+ - Text
+ additionalProperties: false
+ SystemContentBlock:
+ description: Configuration for chat prompt template
+ oneOf:
+ - title: Text
+ type: object
+ properties:
+ Text:
+ type: string
+ minLength: 1
+ description: Configuration for chat prompt template
+ required:
+ - Text
+ additionalProperties: false
+ Message:
+ type: object
+ description: Chat prompt Message
+ properties:
+ Role:
+ $ref: '#/components/schemas/ConversationRole'
+ Content:
+ type: array
+ items:
+ $ref: '#/components/schemas/ContentBlock'
+ minItems: 1
+ description: List of Content Blocks
+ x-insertionOrder: true
+ required:
+ - Role
+ - Content
+ additionalProperties: false
+ ToolInputSchema:
+ description: Tool input schema
+ oneOf:
+ - type: object
+ title: Json
+ properties:
+ Json:
+ type: object
+ description: Tool input schema json
+ required:
+ - Json
+ additionalProperties: false
+ ToolSpecification:
+ type: object
+ description: Tool specification
+ properties:
+ Name:
+ type: string
+ pattern: ^[a-zA-Z][a-zA-Z0-9_]*$
+ minLength: 1
+ maxLength: 64
+ description: Tool name
+ Description:
+ type: string
+ minLength: 1
+ InputSchema:
+ $ref: '#/components/schemas/ToolInputSchema'
+ required:
+ - Name
+ - InputSchema
+ additionalProperties: false
+ Tool:
+ description: Tool details
+ oneOf:
+ - type: object
+ title: ToolSpec
+ properties:
+ ToolSpec:
+ $ref: '#/components/schemas/ToolSpecification'
+ required:
+ - ToolSpec
+ additionalProperties: false
+ AutoToolChoice:
+ type: object
+ description: Auto Tool choice
+ additionalProperties: false
+ AnyToolChoice:
+ type: object
+ description: Any Tool choice
+ additionalProperties: false
+ SpecificToolChoice:
+ type: object
+ description: Specific Tool choice
+ properties:
+ Name:
+ type: string
+ pattern: ^[a-zA-Z][a-zA-Z0-9_]*$
+ minLength: 1
+ maxLength: 64
+ description: Tool name
+ required:
+ - Name
+ additionalProperties: false
+ ToolChoice:
+ description: Tool choice
+ oneOf:
+ - title: Auto
+ type: object
+ properties:
+ Auto:
+ $ref: '#/components/schemas/AutoToolChoice'
+ required:
+ - Auto
+ additionalProperties: false
+ - title: Any
+ type: object
+ properties:
+ Any:
+ $ref: '#/components/schemas/AnyToolChoice'
+ required:
+ - Any
+ additionalProperties: false
+ - title: Tool
+ type: object
+ properties:
+ Tool:
+ $ref: '#/components/schemas/SpecificToolChoice'
+ required:
+ - Tool
+ additionalProperties: false
+ ToolConfiguration:
+ type: object
+ description: Tool configuration
+ properties:
+ Tools:
+ type: array
+ items:
+ $ref: '#/components/schemas/Tool'
+ minItems: 1
+ description: List of Tools
+ x-insertionOrder: true
+ ToolChoice:
+ $ref: '#/components/schemas/ToolChoice'
+ required:
+ - Tools
+ additionalProperties: false
+ PromptAgentResource:
+ description: Target Agent to invoke with Prompt
+ type: object
+ properties:
+ AgentIdentifier:
+ type: string
+ maxLength: 2048
+ pattern: ^arn:aws(-[^:]+)?:bedrock:[a-z0-9-]{1,20}:[0-9]{12}:agent-alias/[0-9a-zA-Z]{10}/[0-9a-zA-Z]{10}$
+ description: Arn representation of the Agent Alias.
+ required:
+ - AgentIdentifier
+ additionalProperties: false
+ PromptGenAiResource:
+ description: Target resource to invoke with Prompt
+ oneOf:
+ - type: object
+ title: Agent
+ properties:
+ Agent:
+ $ref: '#/components/schemas/PromptAgentResource'
+ required:
+ - Agent
+ additionalProperties: false
+ Prompt:
+ type: object
+ properties:
+ Arn:
+ type: string
+ maxLength: 2048
+ minLength: 1
+ pattern: ^(arn:aws(-[^:]+)?:bedrock:[a-z0-9-]{1,20}:[0-9]{12}:prompt/[0-9a-zA-Z]{10})$
+ description: ARN of a prompt resource possibly with a version
+ CreatedAt:
+ type: string
+ description: Time Stamp.
+ format: date-time
+ DefaultVariant:
+ type: string
+ pattern: ^([0-9a-zA-Z][_-]?){1,100}$
+ description: Name for a variant.
+ Description:
+ type: string
+ maxLength: 200
+ minLength: 1
+ description: Name for a prompt resource.
+ Id:
+ type: string
+ pattern: ^[0-9a-zA-Z]{10}$
+ description: Identifier for a Prompt
+ Name:
+ type: string
+ pattern: ^([0-9a-zA-Z][_-]?){1,100}$
+ description: Name for a prompt resource.
+ UpdatedAt:
+ type: string
+ description: Time Stamp.
+ format: date-time
+ Variants:
+ type: array
+ items:
+ $ref: '#/components/schemas/PromptVariant'
+ maxItems: 1
+ minItems: 0
+ description: List of prompt variants
+ x-insertionOrder: true
+ Tags:
+ $ref: '#/components/schemas/TagsMap'
+ CustomerEncryptionKeyArn:
+ type: string
+ maxLength: 2048
+ minLength: 1
+ pattern: ^arn:aws(|-cn|-us-gov):kms:[a-zA-Z0-9-]*:[0-9]{12}:key/[a-zA-Z0-9-]{36}$
+ description: A KMS key ARN
+ Version:
+ type: string
+ maxLength: 5
+ minLength: 5
+ pattern: ^DRAFT$
+ description: Draft Version.
+ required:
+ - Name
+ x-stackql-resource-name: prompt
+ description: Definition of AWS::Bedrock::Prompt Resource Type
+ x-type-name: AWS::Bedrock::Prompt
+ x-stackql-primary-identifier:
+ - Arn
+ x-write-only-properties:
+ - Variants/*/TemplateConfiguration/Text/TextS3Location
+ x-read-only-properties:
+ - Arn
+ - CreatedAt
+ - Id
+ - UpdatedAt
+ - Version
+ x-required-properties:
+ - Name
+ x-tagging:
+ cloudFormationSystemTags: false
+ tagOnCreate: true
+ tagProperty: /properties/Tags
+ tagUpdatable: true
+ taggable: true
+ permissions:
+ - bedrock:TagResource
+ - bedrock:UntagResource
+ - bedrock:ListTagsForResource
+ x-required-permissions:
+ create:
+ - bedrock:CreatePrompt
+ - bedrock:GetPrompt
+ - s3:GetObject
+ - s3:GetObjectVersion
+ - bedrock:TagResource
+ - bedrock:ListTagsForResource
+ - kms:GenerateDataKey
+ - kms:Decrypt
+ read:
+ - bedrock:GetPrompt
+ - bedrock:ListTagsForResource
+ - kms:Decrypt
+ update:
+ - bedrock:UpdatePrompt
+ - bedrock:GetPrompt
+ - s3:GetObject
+ - s3:GetObjectVersion
+ - bedrock:TagResource
+ - bedrock:UntagResource
+ - bedrock:ListTagsForResource
+ - kms:GenerateDataKey
+ - kms:Decrypt
+ delete:
+ - bedrock:DeletePrompt
+ - bedrock:GetPrompt
+ list:
+ - bedrock:ListPrompts
+ PromptVersion:
+ type: object
+ properties:
+ PromptArn:
+ type: string
+ maxLength: 2048
+ minLength: 1
+ pattern: ^(arn:aws(-[^:]+)?:bedrock:[a-z0-9-]{1,20}:[0-9]{12}:prompt/[0-9a-zA-Z]{10})$
+ description: ARN of a prompt resource possibly with a version
+ Arn:
+ type: string
+ maxLength: 2048
+ minLength: 1
+ pattern: ^(arn:aws(-[^:]+)?:bedrock:[a-z0-9-]{1,20}:[0-9]{12}:prompt/[0-9a-zA-Z]{10}:[0-9]{1,20})$
+ description: ARN of a prompt version resource
+ CreatedAt:
+ type: string
+ description: Time Stamp.
+ format: date-time
+ PromptId:
+ type: string
+ pattern: ^[0-9a-zA-Z]{10}$
+ description: Identifier for a Prompt
+ UpdatedAt:
+ type: string
+ description: Time Stamp.
+ format: date-time
+ Version:
+ type: string
+ maxLength: 5
+ minLength: 1
+ pattern: ^(DRAFT|[0-9]{0,4}[1-9][0-9]{0,4})$
+ description: Version.
+ Variants:
+ type: array
+ items:
+ $ref: '#/components/schemas/PromptVariant'
+ maxItems: 1
+ minItems: 1
+ description: List of prompt variants
+ x-insertionOrder: true
+ DefaultVariant:
+ type: string
+ pattern: ^([0-9a-zA-Z][_-]?){1,100}$
+ description: Name for a variant.
+ Description:
+ type: string
+ maxLength: 200
+ minLength: 1
+ description: Description for a prompt version resource.
+ CustomerEncryptionKeyArn:
+ type: string
+ maxLength: 2048
+ minLength: 1
+ pattern: ^arn:aws(|-cn|-us-gov):kms:[a-zA-Z0-9-]*:[0-9]{12}:key/[a-zA-Z0-9-]{36}$
+ description: A KMS key ARN
+ Name:
+ type: string
+ pattern: ^([0-9a-zA-Z][_-]?){1,100}$
+ description: Name for a prompt resource.
+ Tags:
+ $ref: '#/components/schemas/TagsMap'
+ required:
+ - PromptArn
+ x-stackql-resource-name: prompt_version
+ description: Definition of AWS::Bedrock::PromptVersion Resource Type
+ x-type-name: AWS::Bedrock::PromptVersion
+ x-stackql-primary-identifier:
+ - Arn
+ x-create-only-properties:
+ - PromptArn
+ - Description
+ - Tags
+ x-read-only-properties:
+ - Arn
+ - CreatedAt
+ - PromptId
+ - UpdatedAt
+ - Version
+ - Name
+ - DefaultVariant
+ - Variants
+ - CustomerEncryptionKeyArn
+ x-required-properties:
+ - PromptArn
+ x-tagging:
+ cloudFormationSystemTags: false
+ tagOnCreate: true
+ tagProperty: /properties/Tags
+ tagUpdatable: false
+ taggable: true
+ permissions:
+ - bedrock:TagResource
+ - bedrock:ListTagsForResource
+ x-required-permissions:
+ create:
+ - bedrock:CreatePromptVersion
+ - bedrock:GetPrompt
+ - bedrock:TagResource
+ - bedrock:ListTagsForResource
+ - kms:GenerateDataKey
+ - kms:Decrypt
+ read:
+ - bedrock:GetPrompt
+ - bedrock:ListTagsForResource
+ - kms:Decrypt
+ delete:
+ - bedrock:DeletePrompt
+ - bedrock:GetPrompt
+ list:
+ - bedrock:ListPrompts
+ CreateAgentRequest:
+ properties:
+ ClientToken:
+ type: string
+ RoleArn:
+ type: string
+ TypeName:
+ type: string
+ TypeVersionId:
+ type: string
+ DesiredState:
+ type: object
+ properties:
+ ActionGroups:
+ type: array
+ items:
+ $ref: '#/components/schemas/AgentActionGroup'
+ description: List of ActionGroups
+ x-insertionOrder: false
+ AgentArn:
+ type: string
+ maxLength: 2048
+ pattern: ^arn:aws(|-cn|-us-gov):bedrock:[a-z0-9-]{1,20}:[0-9]{12}:agent/[0-9a-zA-Z]{10}$
+ description: Arn representation of the Agent.
+ AgentId:
+ type: string
+ pattern: ^[0-9a-zA-Z]{10}$
+ description: Identifier for a resource.
+ AgentName:
+ type: string
+ pattern: ^([0-9a-zA-Z][_-]?){1,100}$
+ description: Name for a resource.
+ AgentResourceRoleArn:
+ type: string
+ maxLength: 2048
+ description: ARN of a IAM role.
+ AgentStatus:
+ $ref: '#/components/schemas/AgentStatus'
+ AgentVersion:
+ type: string
+ maxLength: 5
+ minLength: 5
+ pattern: ^DRAFT$
+ description: Draft Agent Version.
+ AutoPrepare:
+ description: Specifies whether to automatically prepare after creating or updating the agent.
+ type: boolean
+ default: false
+ CreatedAt:
+ type: string
+ description: Time Stamp.
+ format: date-time
+ CustomerEncryptionKeyArn:
+ type: string
+ maxLength: 2048
+ minLength: 1
+ pattern: ^arn:aws(|-cn|-us-gov):kms:[a-zA-Z0-9-]*:[0-9]{12}:key/[a-zA-Z0-9-]{36}$
+ description: A KMS key ARN
+ SkipResourceInUseCheckOnDelete:
+ description: Specifies whether to allow deleting agent while it is in use.
+ type: boolean
+ default: false
+ Description:
+ type: string
+ maxLength: 200
+ minLength: 1
+ description: Description of the Resource.
+ FailureReasons:
+ type: array
+ items:
+ type: string
+ maxLength: 2048
+ description: Failure Reason for Error.
+ maxItems: 2048
+ description: Failure Reasons for Error.
+ x-insertionOrder: false
+ FoundationModel:
+ type: string
+ maxLength: 2048
+ minLength: 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}))|([0-9]{12}:(inference-profile|application-inference-profile)/[a-zA-Z0-9-:.]+))|(([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][_-]?)+)$
+ description: ARN or name of a Bedrock model.
+ GuardrailConfiguration:
+ $ref: '#/components/schemas/GuardrailConfiguration'
+ IdleSessionTTLInSeconds:
+ type: number
+ maximum: 3600
+ minimum: 60
+ description: Max Session Time.
+ Instruction:
+ type: string
+ minLength: 40
+ description: Instruction for the agent.
+ KnowledgeBases:
+ type: array
+ items:
+ $ref: '#/components/schemas/AgentKnowledgeBase'
+ description: List of Agent Knowledge Bases
+ x-insertionOrder: false
+ PreparedAt:
+ type: string
+ description: Time Stamp.
+ format: date-time
+ PromptOverrideConfiguration:
+ $ref: '#/components/schemas/PromptOverrideConfiguration'
+ RecommendedActions:
+ type: array
+ items:
+ type: string
+ maxLength: 2048
+ description: The recommended action users can take to resolve an error in failureReasons.
+ maxItems: 2048
+ description: The recommended actions users can take to resolve an error in failureReasons.
+ x-insertionOrder: false
+ Tags:
+ $ref: '#/components/schemas/TagsMap'
+ TestAliasTags:
+ $ref: '#/components/schemas/TagsMap'
+ UpdatedAt:
+ type: string
+ description: Time Stamp.
+ format: date-time
+ x-stackQL-stringOnly: true
+ x-title: CreateAgentRequest
+ type: object
+ required: []
+ CreateAgentAliasRequest:
+ properties:
+ ClientToken:
+ type: string
+ RoleArn:
+ type: string
+ TypeName:
+ type: string
+ TypeVersionId:
+ type: string
+ DesiredState:
+ type: object
+ properties:
+ AgentAliasArn:
+ type: string
+ maxLength: 2048
+ pattern: ^arn:aws(|-cn|-us-gov):bedrock:[a-z0-9-]{1,20}:[0-9]{12}:agent-alias/[0-9a-zA-Z]{10}/[0-9a-zA-Z]{10}$
+ description: Arn representation of the Agent Alias.
+ AgentAliasHistoryEvents:
+ type: array
+ items:
+ $ref: '#/components/schemas/AgentAliasHistoryEvent'
+ maxItems: 10
+ description: The list of history events for an alias for an Agent.
+ x-insertionOrder: false
+ AgentAliasId:
+ type: string
+ maxLength: 10
+ minLength: 10
+ pattern: ^(\bTSTALIASID\b|[0-9a-zA-Z]+)$
+ description: Id for an Agent Alias generated at the server side.
+ AgentAliasName:
+ type: string
+ pattern: ^([0-9a-zA-Z][_-]?){1,100}$
+ description: Name for a resource.
+ AgentAliasStatus:
+ $ref: '#/components/schemas/AgentAliasStatus'
+ AgentId:
+ type: string
+ pattern: ^[0-9a-zA-Z]{10}$
+ description: Identifier for a resource.
+ CreatedAt:
+ type: string
+ description: Time Stamp.
+ Description:
+ type: string
+ maxLength: 200
+ minLength: 1
+ description: Description of the Resource.
+ RoutingConfiguration:
+ type: array
+ items:
+ $ref: '#/components/schemas/AgentAliasRoutingConfigurationListItem'
+ maxItems: 1
+ description: Routing configuration for an Agent alias.
+ x-insertionOrder: false
+ Tags:
+ $ref: '#/components/schemas/TagsMap'
+ UpdatedAt:
+ type: string
+ description: Time Stamp.
+ x-stackQL-stringOnly: true
+ x-title: CreateAgentAliasRequest
+ type: object
+ required: []
+ CreateApplicationInferenceProfileRequest:
+ properties:
+ ClientToken:
+ type: string
+ RoleArn:
+ type: string
+ TypeName:
+ type: string
+ TypeVersionId:
+ type: string
+ DesiredState:
+ type: object
+ properties:
+ CreatedAt:
+ type: string
+ description: Time Stamp
+ format: date-time
+ Description:
+ type: string
+ maxLength: 200
+ minLength: 1
+ pattern: ^([0-9a-zA-Z:.][ _-]?)+$
+ description: Description of the inference profile
+ InferenceProfileArn:
+ type: string
+ maxLength: 2048
+ minLength: 1
+ pattern: ^arn:aws(|-us-gov|-cn|-iso|-iso-b):bedrock:(|[0-9a-z-]{0,20}):(|[0-9]{12}):(inference-profile|application-inference-profile)/[a-zA-Z0-9-:.]+$
+ InferenceProfileId:
+ type: string
+ maxLength: 64
+ minLength: 1
+ pattern: ^[a-zA-Z0-9-:.]+$
+ InferenceProfileIdentifier:
+ type: string
+ maxLength: 2048
+ minLength: 1
+ pattern: ^(arn:aws(|-us-gov|-cn|-iso|-iso-b):bedrock:(|[0-9a-z-]{0,20}):(|[0-9]{12}):(inference-profile|application-inference-profile)/)?[a-zA-Z0-9-:.]+$
+ description: Inference profile identifier. Supports both system-defined inference profile ids, and inference profile ARNs.
+ InferenceProfileName:
+ type: string
+ maxLength: 64
+ minLength: 1
+ pattern: ^([0-9a-zA-Z][ _-]?)+$
+ ModelSource:
+ $ref: '#/components/schemas/InferenceProfileModelSource'
+ Models:
+ type: array
+ items:
+ $ref: '#/components/schemas/InferenceProfileModel'
+ maxItems: 5
+ minItems: 1
+ description: List of model configuration
+ Status:
+ $ref: '#/components/schemas/InferenceProfileStatus'
+ Tags:
+ type: array
+ items:
+ $ref: '#/components/schemas/Tag'
+ maxItems: 200
+ minItems: 0
+ description: List of Tags
+ Type:
+ $ref: '#/components/schemas/InferenceProfileType'
+ UpdatedAt:
+ type: string
+ description: Time Stamp
+ format: date-time
+ x-stackQL-stringOnly: true
+ x-title: CreateApplicationInferenceProfileRequest
+ type: object
+ required: []
+ CreateDataSourceRequest:
+ properties:
+ ClientToken:
+ type: string
+ RoleArn:
+ type: string
+ TypeName:
+ type: string
+ TypeVersionId:
+ type: string
+ DesiredState:
+ type: object
+ properties:
+ DataSourceConfiguration:
+ $ref: '#/components/schemas/DataSourceConfiguration'
+ DataSourceId:
+ type: string
+ pattern: ^[0-9a-zA-Z]{10}$
+ description: Identifier for a resource.
+ Description:
+ type: string
+ maxLength: 200
+ minLength: 1
+ description: Description of the Resource.
+ KnowledgeBaseId:
+ type: string
+ pattern: ^[0-9a-zA-Z]{10}$
+ description: The unique identifier of the knowledge base to which to add the data source.
+ DataSourceStatus:
+ $ref: '#/components/schemas/DataSourceStatus'
+ Name:
+ type: string
+ pattern: ^([0-9a-zA-Z][_-]?){1,100}$
+ description: The name of the data source.
+ ServerSideEncryptionConfiguration:
+ $ref: '#/components/schemas/ServerSideEncryptionConfiguration'
+ VectorIngestionConfiguration:
+ $ref: '#/components/schemas/VectorIngestionConfiguration'
+ DataDeletionPolicy:
+ $ref: '#/components/schemas/DataDeletionPolicy'
+ CreatedAt:
+ type: string
+ description: The time at which the data source was created.
+ UpdatedAt:
+ type: string
+ description: The time at which the knowledge base was last updated.
+ FailureReasons:
+ type: array
+ items:
+ type: string
+ maxLength: 2048
+ description: Failure Reason for Error.
+ maxItems: 2048
+ description: The details of the failure reasons related to the data source.
+ x-insertionOrder: false
+ x-stackQL-stringOnly: true
+ x-title: CreateDataSourceRequest
+ type: object
+ required: []
+ CreateFlowRequest:
+ properties:
+ ClientToken:
+ type: string
+ RoleArn:
+ type: string
+ TypeName:
+ type: string
+ TypeVersionId:
+ type: string
+ DesiredState:
+ type: object
+ properties:
+ Arn:
+ type: string
+ maxLength: 1011
+ minLength: 20
+ pattern: ^arn:aws(-[^:]+)?:bedrock:[a-z0-9-]{1,20}:[0-9]{12}:flow/[0-9a-zA-Z]{10}$
+ description: Arn representation of the Flow
+ CreatedAt:
+ type: string
+ description: Time Stamp.
+ format: date-time
+ Definition:
+ $ref: '#/components/schemas/FlowDefinition'
+ DefinitionString:
+ type: string
+ description: A JSON string containing a Definition with the same schema as the Definition property of this resource
+ maxLength: 512000
+ DefinitionS3Location:
+ $ref: '#/components/schemas/S3Location'
+ DefinitionSubstitutions:
+ $ref: '#/components/schemas/DefinitionSubstitutions'
+ Description:
+ type: string
+ maxLength: 200
+ minLength: 1
+ description: Description of the flow
+ ExecutionRoleArn:
+ type: string
+ maxLength: 2048
+ pattern: ^arn:aws(-[^:]+)?:iam::([0-9]{12})?:role/(service-role/)?.+$
+ description: ARN of a IAM role
+ Id:
+ type: string
+ pattern: ^[0-9a-zA-Z]{10}$
+ description: Identifier for a Flow
+ Name:
+ type: string
+ pattern: ^([0-9a-zA-Z][_-]?){1,100}$
+ description: Name for the flow
+ Status:
+ $ref: '#/components/schemas/FlowStatus'
+ UpdatedAt:
+ type: string
+ description: Time Stamp.
+ format: date-time
+ CustomerEncryptionKeyArn:
+ type: string
+ maxLength: 2048
+ minLength: 1
+ pattern: ^arn:aws(|-cn|-us-gov):kms:[a-zA-Z0-9-]*:[0-9]{12}:key/[a-zA-Z0-9-]{36}$
+ description: A KMS key ARN
+ Validations:
+ $ref: '#/components/schemas/FlowValidations'
+ Version:
+ type: string
+ maxLength: 5
+ minLength: 5
+ pattern: ^DRAFT$
+ description: Draft Version.
+ Tags:
+ $ref: '#/components/schemas/TagsMap'
+ TestAliasTags:
+ $ref: '#/components/schemas/TagsMap'
+ x-stackQL-stringOnly: true
+ x-title: CreateFlowRequest
+ type: object
+ required: []
+ CreateFlowAliasRequest:
+ properties:
+ ClientToken:
+ type: string
+ RoleArn:
+ type: string
+ TypeName:
+ type: string
+ TypeVersionId:
+ type: string
+ DesiredState:
+ type: object
+ properties:
+ Arn:
+ type: string
+ maxLength: 2048
+ pattern: ^arn:aws(-[^:]+)?:bedrock:[a-z0-9-]{1,20}:[0-9]{12}:flow/[0-9a-zA-Z]{10}/alias/[0-9a-zA-Z]{10}$
+ description: Arn of the Flow Alias
+ FlowArn:
+ type: string
+ maxLength: 2048
+ pattern: ^arn:aws(-[^:]+)?:bedrock:[a-z0-9-]{1,20}:[0-9]{12}:flow/[0-9a-zA-Z]{10}$
+ description: Arn representation of the Flow
+ CreatedAt:
+ type: string
+ description: Time Stamp.
+ format: date-time
+ Description:
+ type: string
+ maxLength: 200
+ minLength: 1
+ description: Description of the Resource.
+ FlowId:
+ type: string
+ pattern: ^[0-9a-zA-Z]{10}$
+ description: Identifier for a flow resource.
+ Id:
+ type: string
+ maxLength: 10
+ minLength: 10
+ pattern: ^(\bTSTALIASID\b|[0-9a-zA-Z]+)$
+ description: Id for a Flow Alias generated at the server side.
+ Name:
+ type: string
+ pattern: ^([0-9a-zA-Z][_-]?){1,100}$
+ description: Name for a resource.
+ RoutingConfiguration:
+ type: array
+ items:
+ $ref: '#/components/schemas/FlowAliasRoutingConfigurationListItem'
+ maxItems: 1
+ minItems: 1
+ description: Routing configuration for a Flow alias.
+ x-insertionOrder: true
+ UpdatedAt:
+ type: string
+ description: Time Stamp.
+ format: date-time
+ Tags:
+ $ref: '#/components/schemas/TagsMap'
+ x-stackQL-stringOnly: true
+ x-title: CreateFlowAliasRequest
+ type: object
+ required: []
+ CreateFlowVersionRequest:
+ properties:
+ ClientToken:
+ type: string
+ RoleArn:
+ type: string
+ TypeName:
+ type: string
+ TypeVersionId:
+ type: string
+ DesiredState:
+ type: object
+ properties:
+ FlowArn:
+ type: string
+ pattern: ^arn:aws(-[^:]+)?:bedrock:[a-z0-9-]{1,20}:[0-9]{12}:flow/[0-9a-zA-Z]{10}$
+ description: Arn representation of the Flow
+ CreatedAt:
+ type: string
+ description: Time Stamp.
+ format: date-time
+ Definition:
+ $ref: '#/components/schemas/FlowDefinition'
+ Description:
+ type: string
+ maxLength: 200
+ minLength: 1
+ description: Description of the flow version
+ ExecutionRoleArn:
+ type: string
+ maxLength: 2048
+ pattern: ^arn:aws(-[^:]+)?:iam::([0-9]{12})?:role/(service-role/)?.+$
+ description: ARN of a IAM role
+ FlowId:
+ type: string
+ pattern: ^[0-9a-zA-Z]{10}$
+ description: Identifier for a Flow
+ Name:
+ type: string
+ pattern: ^([0-9a-zA-Z][_-]?){1,100}$
+ description: Name for the flow
+ Status:
+ $ref: '#/components/schemas/FlowStatus'
+ Version:
+ type: string
+ pattern: ^[0-9]{1,5}$
+ description: Numerical Version.
+ CustomerEncryptionKeyArn:
+ type: string
+ maxLength: 2048
+ minLength: 1
+ pattern: ^arn:aws(|-cn|-us-gov):kms:[a-zA-Z0-9-]*:[0-9]{12}:key/[a-zA-Z0-9-]{36}$
+ description: A KMS key ARN
+ x-stackQL-stringOnly: true
+ x-title: CreateFlowVersionRequest
+ type: object
+ required: []
+ CreateGuardrailRequest:
+ properties:
+ ClientToken:
+ type: string
+ RoleArn:
+ type: string
+ TypeName:
+ type: string
+ TypeVersionId:
+ type: string
+ DesiredState:
+ type: object
+ properties:
+ BlockedInputMessaging:
+ type: string
+ maxLength: 500
+ minLength: 1
+ description: Messaging for when violations are detected in text
+ BlockedOutputsMessaging:
+ type: string
+ maxLength: 500
+ minLength: 1
+ description: Messaging for when violations are detected in text
+ ContentPolicyConfig:
+ $ref: '#/components/schemas/ContentPolicyConfig'
+ ContextualGroundingPolicyConfig:
+ $ref: '#/components/schemas/ContextualGroundingPolicyConfig'
+ CreatedAt:
+ type: string
+ description: Time Stamp
+ format: date-time
+ Description:
+ type: string
+ maxLength: 200
+ minLength: 1
+ description: Description of the guardrail or its version
+ FailureRecommendations:
+ type: array
+ items:
+ type: string
+ maxLength: 200
+ minLength: 1
+ description: Recommendation for guardrail failure status
+ maxItems: 100
+ description: List of failure recommendations
+ GuardrailArn:
+ type: string
+ maxLength: 2048
+ pattern: ^arn:aws(-[^:]+)?:bedrock:[a-z0-9-]{1,20}:[0-9]{12}:guardrail/[a-z0-9]+$
+ description: Arn representation for the guardrail
+ GuardrailId:
+ type: string
+ maxLength: 64
+ pattern: ^[a-z0-9]+$
+ description: Unique id for the guardrail
+ KmsKeyArn:
+ type: string
+ maxLength: 2048
+ minLength: 1
+ pattern: ^arn:aws(-[^:]+)?:kms:[a-zA-Z0-9-]*:[0-9]{12}:key/[a-zA-Z0-9-]{36}$
+ description: The KMS key with which the guardrail was encrypted at rest
+ Name:
+ type: string
+ maxLength: 50
+ minLength: 1
+ pattern: ^[0-9a-zA-Z-_]+$
+ description: Name of the guardrail
+ SensitiveInformationPolicyConfig:
+ $ref: '#/components/schemas/SensitiveInformationPolicyConfig'
+ Status:
+ $ref: '#/components/schemas/GuardrailStatus'
+ StatusReasons:
+ type: array
+ items:
+ type: string
+ maxLength: 200
+ minLength: 1
+ description: Reason for guardrail status
+ maxItems: 100
+ description: List of status reasons
+ Tags:
+ type: array
+ items:
+ $ref: '#/components/schemas/Tag'
+ maxItems: 200
+ minItems: 0
+ description: List of Tags
+ TopicPolicyConfig:
+ $ref: '#/components/schemas/TopicPolicyConfig'
+ UpdatedAt:
+ type: string
+ description: Time Stamp
+ format: date-time
+ Version:
+ type: string
+ pattern: ^(([1-9][0-9]{0,7})|(DRAFT))$
+ description: Guardrail version
+ WordPolicyConfig:
+ $ref: '#/components/schemas/WordPolicyConfig'
+ x-stackQL-stringOnly: true
+ x-title: CreateGuardrailRequest
+ type: object
+ required: []
+ CreateGuardrailVersionRequest:
+ properties:
+ ClientToken:
+ type: string
+ RoleArn:
+ type: string
+ TypeName:
+ type: string
+ TypeVersionId:
+ type: string
+ DesiredState:
+ type: object
+ properties:
+ Description:
+ type: string
+ maxLength: 200
+ minLength: 1
+ description: Description of the Guardrail version
+ GuardrailArn:
+ type: string
+ maxLength: 2048
+ pattern: ^arn:aws(-[^:]+)?:bedrock:[a-z0-9-]{1,20}:[0-9]{12}:guardrail/[a-z0-9]+$
+ description: Arn representation for the guardrail
+ GuardrailId:
+ type: string
+ maxLength: 64
+ pattern: ^[a-z0-9]+$
+ description: Unique id for the guardrail
+ GuardrailIdentifier:
+ type: string
+ maxLength: 2048
+ pattern: ^(([a-z0-9]+)|(arn:aws(-[^:]+)?:bedrock:[a-z0-9-]{1,20}:[0-9]{12}:guardrail/[a-z0-9]+))$
+ description: Identifier (GuardrailId or GuardrailArn) for the guardrail
+ Version:
+ type: string
+ pattern: ^[1-9][0-9]{0,7}$
+ description: Guardrail version
+ x-stackQL-stringOnly: true
+ x-title: CreateGuardrailVersionRequest
+ type: object
+ required: []
+ CreateKnowledgeBaseRequest:
+ properties:
+ ClientToken:
+ type: string
+ RoleArn:
+ type: string
+ TypeName:
+ type: string
+ TypeVersionId:
+ type: string
+ DesiredState:
+ type: object
+ properties:
+ Description:
+ type: string
+ maxLength: 200
+ minLength: 1
+ description: Description of the Resource.
+ KnowledgeBaseConfiguration:
+ $ref: '#/components/schemas/KnowledgeBaseConfiguration'
+ KnowledgeBaseId:
+ type: string
+ pattern: ^[0-9a-zA-Z]{10}$
+ description: The unique identifier of the knowledge base.
+ KnowledgeBaseArn:
+ type: string
+ maxLength: 128
+ minLength: 0
+ pattern: ^arn:aws(|-cn|-us-gov):bedrock:[a-zA-Z0-9-]*:[0-9]{12}:knowledge-base/[0-9a-zA-Z]+$
+ description: The ARN of the knowledge base.
+ Name:
+ type: string
+ pattern: ^([0-9a-zA-Z][_-]?){1,100}$
+ description: The name of the knowledge base.
+ Status:
+ $ref: '#/components/schemas/KnowledgeBaseStatus'
+ RoleArn:
+ type: string
+ maxLength: 2048
+ pattern: ^arn:aws(-[^:]+)?:iam::([0-9]{12})?:role/.+$
+ description: The ARN of the IAM role with permissions to invoke API operations on the knowledge base. The ARN must begin with AmazonBedrockExecutionRoleForKnowledgeBase_
+ CreatedAt:
+ type: string
+ description: The time at which the knowledge base was created.
+ FailureReasons:
+ type: array
+ items:
+ type: string
+ maxLength: 2048
+ description: Failure Reason for Error.
+ maxItems: 2048
+ description: A list of reasons that the API operation on the knowledge base failed.
+ x-insertionOrder: false
+ UpdatedAt:
+ type: string
+ description: The time at which the knowledge base was last updated.
+ StorageConfiguration:
+ $ref: '#/components/schemas/StorageConfiguration'
+ Tags:
+ $ref: '#/components/schemas/TagsMap'
+ x-stackQL-stringOnly: true
+ x-title: CreateKnowledgeBaseRequest
+ type: object
+ required: []
+ CreatePromptRequest:
+ properties:
+ ClientToken:
+ type: string
+ RoleArn:
+ type: string
+ TypeName:
+ type: string
+ TypeVersionId:
+ type: string
+ DesiredState:
+ type: object
+ properties:
+ Arn:
+ type: string
+ maxLength: 2048
+ minLength: 1
+ pattern: ^(arn:aws(-[^:]+)?:bedrock:[a-z0-9-]{1,20}:[0-9]{12}:prompt/[0-9a-zA-Z]{10})$
+ description: ARN of a prompt resource possibly with a version
+ CreatedAt:
+ type: string
+ description: Time Stamp.
+ format: date-time
+ DefaultVariant:
+ type: string
+ pattern: ^([0-9a-zA-Z][_-]?){1,100}$
+ description: Name for a variant.
+ Description:
+ type: string
+ maxLength: 200
+ minLength: 1
+ description: Name for a prompt resource.
+ Id:
+ type: string
+ pattern: ^[0-9a-zA-Z]{10}$
+ description: Identifier for a Prompt
+ Name:
+ type: string
+ pattern: ^([0-9a-zA-Z][_-]?){1,100}$
+ description: Name for a prompt resource.
+ UpdatedAt:
+ type: string
+ description: Time Stamp.
+ format: date-time
+ Variants:
+ type: array
+ items:
+ $ref: '#/components/schemas/PromptVariant'
+ maxItems: 1
+ minItems: 0
+ description: List of prompt variants
+ x-insertionOrder: true
+ Tags:
+ $ref: '#/components/schemas/TagsMap'
+ CustomerEncryptionKeyArn:
+ type: string
+ maxLength: 2048
+ minLength: 1
+ pattern: ^arn:aws(|-cn|-us-gov):kms:[a-zA-Z0-9-]*:[0-9]{12}:key/[a-zA-Z0-9-]{36}$
+ description: A KMS key ARN
+ Version:
+ type: string
+ maxLength: 5
+ minLength: 5
+ pattern: ^DRAFT$
+ description: Draft Version.
+ x-stackQL-stringOnly: true
+ x-title: CreatePromptRequest
+ type: object
+ required: []
+ CreatePromptVersionRequest:
+ properties:
+ ClientToken:
+ type: string
+ RoleArn:
+ type: string
+ TypeName:
+ type: string
+ TypeVersionId:
+ type: string
+ DesiredState:
+ type: object
+ properties:
+ PromptArn:
+ type: string
+ maxLength: 2048
+ minLength: 1
+ pattern: ^(arn:aws(-[^:]+)?:bedrock:[a-z0-9-]{1,20}:[0-9]{12}:prompt/[0-9a-zA-Z]{10})$
+ description: ARN of a prompt resource possibly with a version
+ Arn:
+ type: string
+ maxLength: 2048
+ minLength: 1
+ pattern: ^(arn:aws(-[^:]+)?:bedrock:[a-z0-9-]{1,20}:[0-9]{12}:prompt/[0-9a-zA-Z]{10}:[0-9]{1,20})$
+ description: ARN of a prompt version resource
+ CreatedAt:
+ type: string
+ description: Time Stamp.
+ format: date-time
+ PromptId:
+ type: string
+ pattern: ^[0-9a-zA-Z]{10}$
+ description: Identifier for a Prompt
+ UpdatedAt:
+ type: string
+ description: Time Stamp.
+ format: date-time
+ Version:
+ type: string
+ maxLength: 5
+ minLength: 1
+ pattern: ^(DRAFT|[0-9]{0,4}[1-9][0-9]{0,4})$
+ description: Version.
+ Variants:
+ type: array
+ items:
+ $ref: '#/components/schemas/PromptVariant'
+ maxItems: 1
+ minItems: 1
+ description: List of prompt variants
+ x-insertionOrder: true
+ DefaultVariant:
+ type: string
+ pattern: ^([0-9a-zA-Z][_-]?){1,100}$
+ description: Name for a variant.
+ Description:
+ type: string
+ maxLength: 200
+ minLength: 1
+ description: Description for a prompt version resource.
+ CustomerEncryptionKeyArn:
+ type: string
+ maxLength: 2048
+ minLength: 1
+ pattern: ^arn:aws(|-cn|-us-gov):kms:[a-zA-Z0-9-]*:[0-9]{12}:key/[a-zA-Z0-9-]{36}$
+ description: A KMS key ARN
+ Name:
+ type: string
+ pattern: ^([0-9a-zA-Z][_-]?){1,100}$
+ description: Name for a prompt resource.
+ Tags:
+ $ref: '#/components/schemas/TagsMap'
+ x-stackQL-stringOnly: true
+ x-title: CreatePromptVersionRequest
+ type: object
+ required: []
securitySchemes:
hmac:
type: apiKey
@@ -2600,7 +5342,1497 @@ components:
x-cfn-schema-name: Agent
x-cfn-type-name: AWS::Bedrock::Agent
x-identifiers:
- - AgentId
+ - AgentId
+ x-type: cloud_control
+ methods:
+ create_resource:
+ config:
+ requestBodyTranslate:
+ algorithm: naive_DesiredState
+ operation:
+ $ref: '#/paths/~1?Action=CreateResource&Version=2021-09-30&__Agent&__detailTransformed=true/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::Bedrock::Agent"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ update_resource:
+ operation:
+ $ref: '#/paths/~1?Action=UpdateResource&Version=2021-09-30/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::Bedrock::Agent"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ delete_resource:
+ operation:
+ $ref: '#/paths/~1?Action=DeleteResource&Version=2021-09-30/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::Bedrock::Agent"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ sqlVerbs:
+ insert:
+ - $ref: '#/components/x-stackQL-resources/agents/methods/create_resource'
+ delete:
+ - $ref: '#/components/x-stackQL-resources/agents/methods/delete_resource'
+ update:
+ - $ref: '#/components/x-stackQL-resources/agents/methods/update_resource'
+ config:
+ views:
+ select:
+ predicate: sqlDialect == "sqlite3" && requiredParams == [ data__Identifier ]
+ ddl: |-
+ SELECT
+ region,
+ data__Identifier,
+ JSON_EXTRACT(Properties, '$.ActionGroups') as action_groups,
+ JSON_EXTRACT(Properties, '$.AgentArn') as agent_arn,
+ JSON_EXTRACT(Properties, '$.AgentId') as agent_id,
+ JSON_EXTRACT(Properties, '$.AgentName') as agent_name,
+ JSON_EXTRACT(Properties, '$.AgentResourceRoleArn') as agent_resource_role_arn,
+ JSON_EXTRACT(Properties, '$.AgentStatus') as agent_status,
+ JSON_EXTRACT(Properties, '$.AgentVersion') as agent_version,
+ JSON_EXTRACT(Properties, '$.AutoPrepare') as auto_prepare,
+ JSON_EXTRACT(Properties, '$.CreatedAt') as created_at,
+ JSON_EXTRACT(Properties, '$.CustomerEncryptionKeyArn') as customer_encryption_key_arn,
+ JSON_EXTRACT(Properties, '$.SkipResourceInUseCheckOnDelete') as skip_resource_in_use_check_on_delete,
+ JSON_EXTRACT(Properties, '$.Description') as description,
+ JSON_EXTRACT(Properties, '$.FailureReasons') as failure_reasons,
+ JSON_EXTRACT(Properties, '$.FoundationModel') as foundation_model,
+ JSON_EXTRACT(Properties, '$.GuardrailConfiguration') as guardrail_configuration,
+ JSON_EXTRACT(Properties, '$.IdleSessionTTLInSeconds') as idle_session_ttl_in_seconds,
+ JSON_EXTRACT(Properties, '$.Instruction') as instruction,
+ JSON_EXTRACT(Properties, '$.KnowledgeBases') as knowledge_bases,
+ JSON_EXTRACT(Properties, '$.PreparedAt') as prepared_at,
+ JSON_EXTRACT(Properties, '$.PromptOverrideConfiguration') as prompt_override_configuration,
+ JSON_EXTRACT(Properties, '$.RecommendedActions') as recommended_actions,
+ JSON_EXTRACT(Properties, '$.Tags') as tags,
+ JSON_EXTRACT(Properties, '$.TestAliasTags') as test_alias_tags,
+ JSON_EXTRACT(Properties, '$.UpdatedAt') as updated_at
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::Bedrock::Agent'
+ AND data__Identifier = ''
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "sqlite3"
+ ddl: |-
+ SELECT
+ detail.region,
+ JSON_EXTRACT(detail.Properties, '$.ActionGroups') as action_groups,
+ JSON_EXTRACT(detail.Properties, '$.AgentArn') as agent_arn,
+ JSON_EXTRACT(detail.Properties, '$.AgentId') as agent_id,
+ JSON_EXTRACT(detail.Properties, '$.AgentName') as agent_name,
+ JSON_EXTRACT(detail.Properties, '$.AgentResourceRoleArn') as agent_resource_role_arn,
+ JSON_EXTRACT(detail.Properties, '$.AgentStatus') as agent_status,
+ JSON_EXTRACT(detail.Properties, '$.AgentVersion') as agent_version,
+ JSON_EXTRACT(detail.Properties, '$.AutoPrepare') as auto_prepare,
+ JSON_EXTRACT(detail.Properties, '$.CreatedAt') as created_at,
+ JSON_EXTRACT(detail.Properties, '$.CustomerEncryptionKeyArn') as customer_encryption_key_arn,
+ JSON_EXTRACT(detail.Properties, '$.SkipResourceInUseCheckOnDelete') as skip_resource_in_use_check_on_delete,
+ JSON_EXTRACT(detail.Properties, '$.Description') as description,
+ JSON_EXTRACT(detail.Properties, '$.FailureReasons') as failure_reasons,
+ JSON_EXTRACT(detail.Properties, '$.FoundationModel') as foundation_model,
+ JSON_EXTRACT(detail.Properties, '$.GuardrailConfiguration') as guardrail_configuration,
+ JSON_EXTRACT(detail.Properties, '$.IdleSessionTTLInSeconds') as idle_session_ttl_in_seconds,
+ JSON_EXTRACT(detail.Properties, '$.Instruction') as instruction,
+ JSON_EXTRACT(detail.Properties, '$.KnowledgeBases') as knowledge_bases,
+ JSON_EXTRACT(detail.Properties, '$.PreparedAt') as prepared_at,
+ JSON_EXTRACT(detail.Properties, '$.PromptOverrideConfiguration') as prompt_override_configuration,
+ JSON_EXTRACT(detail.Properties, '$.RecommendedActions') as recommended_actions,
+ JSON_EXTRACT(detail.Properties, '$.Tags') as tags,
+ JSON_EXTRACT(detail.Properties, '$.TestAliasTags') as test_alias_tags,
+ JSON_EXTRACT(detail.Properties, '$.UpdatedAt') as updated_at
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ WHERE listing.data__TypeName = 'AWS::Bedrock::Agent'
+ AND detail.data__TypeName = 'AWS::Bedrock::Agent'
+ AND listing.region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres" && requiredParams == [ data__Identifier ]
+ ddl: |-
+ SELECT
+ region,
+ data__Identifier,
+ json_extract_path_text(Properties, 'ActionGroups') as action_groups,
+ json_extract_path_text(Properties, 'AgentArn') as agent_arn,
+ json_extract_path_text(Properties, 'AgentId') as agent_id,
+ json_extract_path_text(Properties, 'AgentName') as agent_name,
+ json_extract_path_text(Properties, 'AgentResourceRoleArn') as agent_resource_role_arn,
+ json_extract_path_text(Properties, 'AgentStatus') as agent_status,
+ json_extract_path_text(Properties, 'AgentVersion') as agent_version,
+ json_extract_path_text(Properties, 'AutoPrepare') as auto_prepare,
+ json_extract_path_text(Properties, 'CreatedAt') as created_at,
+ json_extract_path_text(Properties, 'CustomerEncryptionKeyArn') as customer_encryption_key_arn,
+ json_extract_path_text(Properties, 'SkipResourceInUseCheckOnDelete') as skip_resource_in_use_check_on_delete,
+ json_extract_path_text(Properties, 'Description') as description,
+ json_extract_path_text(Properties, 'FailureReasons') as failure_reasons,
+ json_extract_path_text(Properties, 'FoundationModel') as foundation_model,
+ json_extract_path_text(Properties, 'GuardrailConfiguration') as guardrail_configuration,
+ json_extract_path_text(Properties, 'IdleSessionTTLInSeconds') as idle_session_ttl_in_seconds,
+ json_extract_path_text(Properties, 'Instruction') as instruction,
+ json_extract_path_text(Properties, 'KnowledgeBases') as knowledge_bases,
+ json_extract_path_text(Properties, 'PreparedAt') as prepared_at,
+ json_extract_path_text(Properties, 'PromptOverrideConfiguration') as prompt_override_configuration,
+ json_extract_path_text(Properties, 'RecommendedActions') as recommended_actions,
+ json_extract_path_text(Properties, 'Tags') as tags,
+ json_extract_path_text(Properties, 'TestAliasTags') as test_alias_tags,
+ json_extract_path_text(Properties, 'UpdatedAt') as updated_at
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::Bedrock::Agent'
+ AND data__Identifier = ''
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres"
+ ddl: |-
+ SELECT
+ detail.region,
+ json_extract_path_text(detail.Properties, 'ActionGroups') as action_groups,
+ json_extract_path_text(detail.Properties, 'AgentArn') as agent_arn,
+ json_extract_path_text(detail.Properties, 'AgentId') as agent_id,
+ json_extract_path_text(detail.Properties, 'AgentName') as agent_name,
+ json_extract_path_text(detail.Properties, 'AgentResourceRoleArn') as agent_resource_role_arn,
+ json_extract_path_text(detail.Properties, 'AgentStatus') as agent_status,
+ json_extract_path_text(detail.Properties, 'AgentVersion') as agent_version,
+ json_extract_path_text(detail.Properties, 'AutoPrepare') as auto_prepare,
+ json_extract_path_text(detail.Properties, 'CreatedAt') as created_at,
+ json_extract_path_text(detail.Properties, 'CustomerEncryptionKeyArn') as customer_encryption_key_arn,
+ json_extract_path_text(detail.Properties, 'SkipResourceInUseCheckOnDelete') as skip_resource_in_use_check_on_delete,
+ json_extract_path_text(detail.Properties, 'Description') as description,
+ json_extract_path_text(detail.Properties, 'FailureReasons') as failure_reasons,
+ json_extract_path_text(detail.Properties, 'FoundationModel') as foundation_model,
+ json_extract_path_text(detail.Properties, 'GuardrailConfiguration') as guardrail_configuration,
+ json_extract_path_text(detail.Properties, 'IdleSessionTTLInSeconds') as idle_session_ttl_in_seconds,
+ json_extract_path_text(detail.Properties, 'Instruction') as instruction,
+ json_extract_path_text(detail.Properties, 'KnowledgeBases') as knowledge_bases,
+ json_extract_path_text(detail.Properties, 'PreparedAt') as prepared_at,
+ json_extract_path_text(detail.Properties, 'PromptOverrideConfiguration') as prompt_override_configuration,
+ json_extract_path_text(detail.Properties, 'RecommendedActions') as recommended_actions,
+ json_extract_path_text(detail.Properties, 'Tags') as tags,
+ json_extract_path_text(detail.Properties, 'TestAliasTags') as test_alias_tags,
+ json_extract_path_text(detail.Properties, 'UpdatedAt') as updated_at
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ WHERE listing.data__TypeName = 'AWS::Bedrock::Agent'
+ AND detail.data__TypeName = 'AWS::Bedrock::Agent'
+ AND listing.region = 'us-east-1'
+ agents_list_only:
+ name: agents_list_only
+ id: aws.bedrock.agents_list_only
+ x-cfn-schema-name: Agent
+ x-cfn-type-name: AWS::Bedrock::Agent
+ x-identifiers:
+ - AgentId
+ x-type: cloud_control_view
+ methods: {}
+ sqlVerbs:
+ insert: []
+ delete: []
+ update: []
+ config:
+ views:
+ select:
+ predicate: sqlDialect == "sqlite3"
+ ddl: |-
+ SELECT
+ region,
+ JSON_EXTRACT(Properties, '$.AgentId') as agent_id
+ FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::Bedrock::Agent'
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres"
+ ddl: |-
+ SELECT
+ region,
+ json_extract_path_text(Properties, 'AgentId') as agent_id
+ FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::Bedrock::Agent'
+ AND region = 'us-east-1'
+ agent_tags:
+ name: agent_tags
+ id: aws.bedrock.agent_tags
+ x-cfn-schema-name: Agent
+ x-cfn-type-name: AWS::Bedrock::Agent
+ x-type: cloud_control_view
+ methods: {}
+ sqlVerbs:
+ insert: []
+ delete: []
+ update: []
+ config:
+ views:
+ select:
+ predicate: sqlDialect == "sqlite3"
+ ddl: |-
+ SELECT
+ detail.region,
+ JSON_EXTRACT(json_each.value, '$.Key') as tag_key,
+ JSON_EXTRACT(json_each.value, '$.Value') as tag_value,
+ JSON_EXTRACT(detail.Properties, '$.ActionGroups') as action_groups,
+ JSON_EXTRACT(detail.Properties, '$.AgentArn') as agent_arn,
+ JSON_EXTRACT(detail.Properties, '$.AgentId') as agent_id,
+ JSON_EXTRACT(detail.Properties, '$.AgentName') as agent_name,
+ JSON_EXTRACT(detail.Properties, '$.AgentResourceRoleArn') as agent_resource_role_arn,
+ JSON_EXTRACT(detail.Properties, '$.AgentStatus') as agent_status,
+ JSON_EXTRACT(detail.Properties, '$.AgentVersion') as agent_version,
+ JSON_EXTRACT(detail.Properties, '$.AutoPrepare') as auto_prepare,
+ JSON_EXTRACT(detail.Properties, '$.CreatedAt') as created_at,
+ JSON_EXTRACT(detail.Properties, '$.CustomerEncryptionKeyArn') as customer_encryption_key_arn,
+ JSON_EXTRACT(detail.Properties, '$.SkipResourceInUseCheckOnDelete') as skip_resource_in_use_check_on_delete,
+ JSON_EXTRACT(detail.Properties, '$.Description') as description,
+ JSON_EXTRACT(detail.Properties, '$.FailureReasons') as failure_reasons,
+ JSON_EXTRACT(detail.Properties, '$.FoundationModel') as foundation_model,
+ JSON_EXTRACT(detail.Properties, '$.GuardrailConfiguration') as guardrail_configuration,
+ JSON_EXTRACT(detail.Properties, '$.IdleSessionTTLInSeconds') as idle_session_ttl_in_seconds,
+ JSON_EXTRACT(detail.Properties, '$.Instruction') as instruction,
+ JSON_EXTRACT(detail.Properties, '$.KnowledgeBases') as knowledge_bases,
+ JSON_EXTRACT(detail.Properties, '$.PreparedAt') as prepared_at,
+ JSON_EXTRACT(detail.Properties, '$.PromptOverrideConfiguration') as prompt_override_configuration,
+ JSON_EXTRACT(detail.Properties, '$.RecommendedActions') as recommended_actions,
+ JSON_EXTRACT(detail.Properties, '$.TestAliasTags') as test_alias_tags,
+ JSON_EXTRACT(detail.Properties, '$.UpdatedAt') as updated_at
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ ,json_each(JSON_EXTRACT(detail.Properties, '$.Tags'))
+ WHERE listing.data__TypeName = 'AWS::Bedrock::Agent'
+ AND detail.data__TypeName = 'AWS::Bedrock::Agent'
+ AND listing.region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres"
+ ddl: |-
+ SELECT
+ detail.region,
+ json_extract_path_text(json_each.value, 'Key') as tag_key,
+ json_extract_path_text(json_each.value, 'Value') as tag_value,
+ json_extract_path_text(detail.Properties, 'ActionGroups') as action_groups,
+ json_extract_path_text(detail.Properties, 'AgentArn') as agent_arn,
+ json_extract_path_text(detail.Properties, 'AgentId') as agent_id,
+ json_extract_path_text(detail.Properties, 'AgentName') as agent_name,
+ json_extract_path_text(detail.Properties, 'AgentResourceRoleArn') as agent_resource_role_arn,
+ json_extract_path_text(detail.Properties, 'AgentStatus') as agent_status,
+ json_extract_path_text(detail.Properties, 'AgentVersion') as agent_version,
+ json_extract_path_text(detail.Properties, 'AutoPrepare') as auto_prepare,
+ json_extract_path_text(detail.Properties, 'CreatedAt') as created_at,
+ json_extract_path_text(detail.Properties, 'CustomerEncryptionKeyArn') as customer_encryption_key_arn,
+ json_extract_path_text(detail.Properties, 'SkipResourceInUseCheckOnDelete') as skip_resource_in_use_check_on_delete,
+ json_extract_path_text(detail.Properties, 'Description') as description,
+ json_extract_path_text(detail.Properties, 'FailureReasons') as failure_reasons,
+ json_extract_path_text(detail.Properties, 'FoundationModel') as foundation_model,
+ json_extract_path_text(detail.Properties, 'GuardrailConfiguration') as guardrail_configuration,
+ json_extract_path_text(detail.Properties, 'IdleSessionTTLInSeconds') as idle_session_ttl_in_seconds,
+ json_extract_path_text(detail.Properties, 'Instruction') as instruction,
+ json_extract_path_text(detail.Properties, 'KnowledgeBases') as knowledge_bases,
+ json_extract_path_text(detail.Properties, 'PreparedAt') as prepared_at,
+ json_extract_path_text(detail.Properties, 'PromptOverrideConfiguration') as prompt_override_configuration,
+ json_extract_path_text(detail.Properties, 'RecommendedActions') as recommended_actions,
+ json_extract_path_text(detail.Properties, 'TestAliasTags') as test_alias_tags,
+ json_extract_path_text(detail.Properties, 'UpdatedAt') as updated_at
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ ,json_array_elements_text(json_extract_path_text(detail.Properties, 'Tags'))
+ WHERE listing.data__TypeName = 'AWS::Bedrock::Agent'
+ AND detail.data__TypeName = 'AWS::Bedrock::Agent'
+ AND listing.region = 'us-east-1'
+ agent_aliases:
+ name: agent_aliases
+ id: aws.bedrock.agent_aliases
+ x-cfn-schema-name: AgentAlias
+ x-cfn-type-name: AWS::Bedrock::AgentAlias
+ x-identifiers:
+ - AgentId
+ - AgentAliasId
+ x-type: cloud_control
+ methods:
+ create_resource:
+ config:
+ requestBodyTranslate:
+ algorithm: naive_DesiredState
+ operation:
+ $ref: '#/paths/~1?Action=CreateResource&Version=2021-09-30&__AgentAlias&__detailTransformed=true/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::Bedrock::AgentAlias"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ update_resource:
+ operation:
+ $ref: '#/paths/~1?Action=UpdateResource&Version=2021-09-30/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::Bedrock::AgentAlias"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ delete_resource:
+ operation:
+ $ref: '#/paths/~1?Action=DeleteResource&Version=2021-09-30/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::Bedrock::AgentAlias"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ sqlVerbs:
+ insert:
+ - $ref: '#/components/x-stackQL-resources/agent_aliases/methods/create_resource'
+ delete:
+ - $ref: '#/components/x-stackQL-resources/agent_aliases/methods/delete_resource'
+ update:
+ - $ref: '#/components/x-stackQL-resources/agent_aliases/methods/update_resource'
+ config:
+ views:
+ select:
+ predicate: sqlDialect == "sqlite3" && requiredParams == [ data__Identifier ]
+ ddl: |-
+ SELECT
+ region,
+ data__Identifier,
+ JSON_EXTRACT(Properties, '$.AgentAliasArn') as agent_alias_arn,
+ JSON_EXTRACT(Properties, '$.AgentAliasHistoryEvents') as agent_alias_history_events,
+ JSON_EXTRACT(Properties, '$.AgentAliasId') as agent_alias_id,
+ JSON_EXTRACT(Properties, '$.AgentAliasName') as agent_alias_name,
+ JSON_EXTRACT(Properties, '$.AgentAliasStatus') as agent_alias_status,
+ JSON_EXTRACT(Properties, '$.AgentId') as agent_id,
+ JSON_EXTRACT(Properties, '$.CreatedAt') as created_at,
+ JSON_EXTRACT(Properties, '$.Description') as description,
+ JSON_EXTRACT(Properties, '$.RoutingConfiguration') as routing_configuration,
+ JSON_EXTRACT(Properties, '$.Tags') as tags,
+ JSON_EXTRACT(Properties, '$.UpdatedAt') as updated_at
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::Bedrock::AgentAlias'
+ AND data__Identifier = '|'
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "sqlite3"
+ ddl: |-
+ SELECT
+ detail.region,
+ JSON_EXTRACT(detail.Properties, '$.AgentAliasArn') as agent_alias_arn,
+ JSON_EXTRACT(detail.Properties, '$.AgentAliasHistoryEvents') as agent_alias_history_events,
+ JSON_EXTRACT(detail.Properties, '$.AgentAliasId') as agent_alias_id,
+ JSON_EXTRACT(detail.Properties, '$.AgentAliasName') as agent_alias_name,
+ JSON_EXTRACT(detail.Properties, '$.AgentAliasStatus') as agent_alias_status,
+ JSON_EXTRACT(detail.Properties, '$.AgentId') as agent_id,
+ JSON_EXTRACT(detail.Properties, '$.CreatedAt') as created_at,
+ JSON_EXTRACT(detail.Properties, '$.Description') as description,
+ JSON_EXTRACT(detail.Properties, '$.RoutingConfiguration') as routing_configuration,
+ JSON_EXTRACT(detail.Properties, '$.Tags') as tags,
+ JSON_EXTRACT(detail.Properties, '$.UpdatedAt') as updated_at
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ WHERE listing.data__TypeName = 'AWS::Bedrock::AgentAlias'
+ AND detail.data__TypeName = 'AWS::Bedrock::AgentAlias'
+ AND listing.region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres" && requiredParams == [ data__Identifier ]
+ ddl: |-
+ SELECT
+ region,
+ data__Identifier,
+ json_extract_path_text(Properties, 'AgentAliasArn') as agent_alias_arn,
+ json_extract_path_text(Properties, 'AgentAliasHistoryEvents') as agent_alias_history_events,
+ json_extract_path_text(Properties, 'AgentAliasId') as agent_alias_id,
+ json_extract_path_text(Properties, 'AgentAliasName') as agent_alias_name,
+ json_extract_path_text(Properties, 'AgentAliasStatus') as agent_alias_status,
+ json_extract_path_text(Properties, 'AgentId') as agent_id,
+ json_extract_path_text(Properties, 'CreatedAt') as created_at,
+ json_extract_path_text(Properties, 'Description') as description,
+ json_extract_path_text(Properties, 'RoutingConfiguration') as routing_configuration,
+ json_extract_path_text(Properties, 'Tags') as tags,
+ json_extract_path_text(Properties, 'UpdatedAt') as updated_at
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::Bedrock::AgentAlias'
+ AND data__Identifier = '|'
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres"
+ ddl: |-
+ SELECT
+ detail.region,
+ json_extract_path_text(detail.Properties, 'AgentAliasArn') as agent_alias_arn,
+ json_extract_path_text(detail.Properties, 'AgentAliasHistoryEvents') as agent_alias_history_events,
+ json_extract_path_text(detail.Properties, 'AgentAliasId') as agent_alias_id,
+ json_extract_path_text(detail.Properties, 'AgentAliasName') as agent_alias_name,
+ json_extract_path_text(detail.Properties, 'AgentAliasStatus') as agent_alias_status,
+ json_extract_path_text(detail.Properties, 'AgentId') as agent_id,
+ json_extract_path_text(detail.Properties, 'CreatedAt') as created_at,
+ json_extract_path_text(detail.Properties, 'Description') as description,
+ json_extract_path_text(detail.Properties, 'RoutingConfiguration') as routing_configuration,
+ json_extract_path_text(detail.Properties, 'Tags') as tags,
+ json_extract_path_text(detail.Properties, 'UpdatedAt') as updated_at
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ WHERE listing.data__TypeName = 'AWS::Bedrock::AgentAlias'
+ AND detail.data__TypeName = 'AWS::Bedrock::AgentAlias'
+ AND listing.region = 'us-east-1'
+ agent_aliases_list_only:
+ name: agent_aliases_list_only
+ id: aws.bedrock.agent_aliases_list_only
+ x-cfn-schema-name: AgentAlias
+ x-cfn-type-name: AWS::Bedrock::AgentAlias
+ x-identifiers:
+ - AgentId
+ - AgentAliasId
+ x-type: cloud_control_view
+ methods: {}
+ sqlVerbs:
+ insert: []
+ delete: []
+ update: []
+ config:
+ views:
+ select:
+ predicate: sqlDialect == "sqlite3"
+ ddl: |-
+ SELECT
+ region,
+ JSON_EXTRACT(Properties, '$.AgentId') as agent_id,
+ JSON_EXTRACT(Properties, '$.AgentAliasId') as agent_alias_id
+ FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::Bedrock::AgentAlias'
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres"
+ ddl: |-
+ SELECT
+ region,
+ json_extract_path_text(Properties, 'AgentId') as agent_id,
+ json_extract_path_text(Properties, 'AgentAliasId') as agent_alias_id
+ FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::Bedrock::AgentAlias'
+ AND region = 'us-east-1'
+ agent_alias_tags:
+ name: agent_alias_tags
+ id: aws.bedrock.agent_alias_tags
+ x-cfn-schema-name: AgentAlias
+ x-cfn-type-name: AWS::Bedrock::AgentAlias
+ x-type: cloud_control_view
+ methods: {}
+ sqlVerbs:
+ insert: []
+ delete: []
+ update: []
+ config:
+ views:
+ select:
+ predicate: sqlDialect == "sqlite3"
+ ddl: |-
+ SELECT
+ detail.region,
+ JSON_EXTRACT(json_each.value, '$.Key') as tag_key,
+ JSON_EXTRACT(json_each.value, '$.Value') as tag_value,
+ JSON_EXTRACT(detail.Properties, '$.AgentAliasArn') as agent_alias_arn,
+ JSON_EXTRACT(detail.Properties, '$.AgentAliasHistoryEvents') as agent_alias_history_events,
+ JSON_EXTRACT(detail.Properties, '$.AgentAliasId') as agent_alias_id,
+ JSON_EXTRACT(detail.Properties, '$.AgentAliasName') as agent_alias_name,
+ JSON_EXTRACT(detail.Properties, '$.AgentAliasStatus') as agent_alias_status,
+ JSON_EXTRACT(detail.Properties, '$.AgentId') as agent_id,
+ JSON_EXTRACT(detail.Properties, '$.CreatedAt') as created_at,
+ JSON_EXTRACT(detail.Properties, '$.Description') as description,
+ JSON_EXTRACT(detail.Properties, '$.RoutingConfiguration') as routing_configuration,
+ JSON_EXTRACT(detail.Properties, '$.UpdatedAt') as updated_at
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ ,json_each(JSON_EXTRACT(detail.Properties, '$.Tags'))
+ WHERE listing.data__TypeName = 'AWS::Bedrock::AgentAlias'
+ AND detail.data__TypeName = 'AWS::Bedrock::AgentAlias'
+ AND listing.region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres"
+ ddl: |-
+ SELECT
+ detail.region,
+ json_extract_path_text(json_each.value, 'Key') as tag_key,
+ json_extract_path_text(json_each.value, 'Value') as tag_value,
+ json_extract_path_text(detail.Properties, 'AgentAliasArn') as agent_alias_arn,
+ json_extract_path_text(detail.Properties, 'AgentAliasHistoryEvents') as agent_alias_history_events,
+ json_extract_path_text(detail.Properties, 'AgentAliasId') as agent_alias_id,
+ json_extract_path_text(detail.Properties, 'AgentAliasName') as agent_alias_name,
+ json_extract_path_text(detail.Properties, 'AgentAliasStatus') as agent_alias_status,
+ json_extract_path_text(detail.Properties, 'AgentId') as agent_id,
+ json_extract_path_text(detail.Properties, 'CreatedAt') as created_at,
+ json_extract_path_text(detail.Properties, 'Description') as description,
+ json_extract_path_text(detail.Properties, 'RoutingConfiguration') as routing_configuration,
+ json_extract_path_text(detail.Properties, 'UpdatedAt') as updated_at
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ ,json_array_elements_text(json_extract_path_text(detail.Properties, 'Tags'))
+ WHERE listing.data__TypeName = 'AWS::Bedrock::AgentAlias'
+ AND detail.data__TypeName = 'AWS::Bedrock::AgentAlias'
+ AND listing.region = 'us-east-1'
+ application_inference_profiles:
+ name: application_inference_profiles
+ id: aws.bedrock.application_inference_profiles
+ x-cfn-schema-name: ApplicationInferenceProfile
+ x-cfn-type-name: AWS::Bedrock::ApplicationInferenceProfile
+ x-identifiers:
+ - InferenceProfileIdentifier
+ x-type: cloud_control
+ methods:
+ create_resource:
+ config:
+ requestBodyTranslate:
+ algorithm: naive_DesiredState
+ operation:
+ $ref: '#/paths/~1?Action=CreateResource&Version=2021-09-30&__ApplicationInferenceProfile&__detailTransformed=true/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::Bedrock::ApplicationInferenceProfile"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ update_resource:
+ operation:
+ $ref: '#/paths/~1?Action=UpdateResource&Version=2021-09-30/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::Bedrock::ApplicationInferenceProfile"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ delete_resource:
+ operation:
+ $ref: '#/paths/~1?Action=DeleteResource&Version=2021-09-30/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::Bedrock::ApplicationInferenceProfile"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ sqlVerbs:
+ insert:
+ - $ref: '#/components/x-stackQL-resources/application_inference_profiles/methods/create_resource'
+ delete:
+ - $ref: '#/components/x-stackQL-resources/application_inference_profiles/methods/delete_resource'
+ update:
+ - $ref: '#/components/x-stackQL-resources/application_inference_profiles/methods/update_resource'
+ config:
+ views:
+ select:
+ predicate: sqlDialect == "sqlite3" && requiredParams == [ data__Identifier ]
+ ddl: |-
+ SELECT
+ region,
+ data__Identifier,
+ JSON_EXTRACT(Properties, '$.CreatedAt') as created_at,
+ JSON_EXTRACT(Properties, '$.Description') as description,
+ JSON_EXTRACT(Properties, '$.InferenceProfileArn') as inference_profile_arn,
+ JSON_EXTRACT(Properties, '$.InferenceProfileId') as inference_profile_id,
+ JSON_EXTRACT(Properties, '$.InferenceProfileIdentifier') as inference_profile_identifier,
+ JSON_EXTRACT(Properties, '$.InferenceProfileName') as inference_profile_name,
+ JSON_EXTRACT(Properties, '$.ModelSource') as model_source,
+ JSON_EXTRACT(Properties, '$.Models') as models,
+ JSON_EXTRACT(Properties, '$.Status') as status,
+ JSON_EXTRACT(Properties, '$.Tags') as tags,
+ JSON_EXTRACT(Properties, '$.Type') as type,
+ JSON_EXTRACT(Properties, '$.UpdatedAt') as updated_at
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::Bedrock::ApplicationInferenceProfile'
+ AND data__Identifier = ''
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "sqlite3"
+ ddl: |-
+ SELECT
+ detail.region,
+ JSON_EXTRACT(detail.Properties, '$.CreatedAt') as created_at,
+ JSON_EXTRACT(detail.Properties, '$.Description') as description,
+ JSON_EXTRACT(detail.Properties, '$.InferenceProfileArn') as inference_profile_arn,
+ JSON_EXTRACT(detail.Properties, '$.InferenceProfileId') as inference_profile_id,
+ JSON_EXTRACT(detail.Properties, '$.InferenceProfileIdentifier') as inference_profile_identifier,
+ JSON_EXTRACT(detail.Properties, '$.InferenceProfileName') as inference_profile_name,
+ JSON_EXTRACT(detail.Properties, '$.ModelSource') as model_source,
+ JSON_EXTRACT(detail.Properties, '$.Models') as models,
+ JSON_EXTRACT(detail.Properties, '$.Status') as status,
+ JSON_EXTRACT(detail.Properties, '$.Tags') as tags,
+ JSON_EXTRACT(detail.Properties, '$.Type') as type,
+ JSON_EXTRACT(detail.Properties, '$.UpdatedAt') as updated_at
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ WHERE listing.data__TypeName = 'AWS::Bedrock::ApplicationInferenceProfile'
+ AND detail.data__TypeName = 'AWS::Bedrock::ApplicationInferenceProfile'
+ AND listing.region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres" && requiredParams == [ data__Identifier ]
+ ddl: |-
+ SELECT
+ region,
+ data__Identifier,
+ json_extract_path_text(Properties, 'CreatedAt') as created_at,
+ json_extract_path_text(Properties, 'Description') as description,
+ json_extract_path_text(Properties, 'InferenceProfileArn') as inference_profile_arn,
+ json_extract_path_text(Properties, 'InferenceProfileId') as inference_profile_id,
+ json_extract_path_text(Properties, 'InferenceProfileIdentifier') as inference_profile_identifier,
+ json_extract_path_text(Properties, 'InferenceProfileName') as inference_profile_name,
+ json_extract_path_text(Properties, 'ModelSource') as model_source,
+ json_extract_path_text(Properties, 'Models') as models,
+ json_extract_path_text(Properties, 'Status') as status,
+ json_extract_path_text(Properties, 'Tags') as tags,
+ json_extract_path_text(Properties, 'Type') as type,
+ json_extract_path_text(Properties, 'UpdatedAt') as updated_at
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::Bedrock::ApplicationInferenceProfile'
+ AND data__Identifier = ''
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres"
+ ddl: |-
+ SELECT
+ detail.region,
+ json_extract_path_text(detail.Properties, 'CreatedAt') as created_at,
+ json_extract_path_text(detail.Properties, 'Description') as description,
+ json_extract_path_text(detail.Properties, 'InferenceProfileArn') as inference_profile_arn,
+ json_extract_path_text(detail.Properties, 'InferenceProfileId') as inference_profile_id,
+ json_extract_path_text(detail.Properties, 'InferenceProfileIdentifier') as inference_profile_identifier,
+ json_extract_path_text(detail.Properties, 'InferenceProfileName') as inference_profile_name,
+ json_extract_path_text(detail.Properties, 'ModelSource') as model_source,
+ json_extract_path_text(detail.Properties, 'Models') as models,
+ json_extract_path_text(detail.Properties, 'Status') as status,
+ json_extract_path_text(detail.Properties, 'Tags') as tags,
+ json_extract_path_text(detail.Properties, 'Type') as type,
+ json_extract_path_text(detail.Properties, 'UpdatedAt') as updated_at
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ WHERE listing.data__TypeName = 'AWS::Bedrock::ApplicationInferenceProfile'
+ AND detail.data__TypeName = 'AWS::Bedrock::ApplicationInferenceProfile'
+ AND listing.region = 'us-east-1'
+ application_inference_profiles_list_only:
+ name: application_inference_profiles_list_only
+ id: aws.bedrock.application_inference_profiles_list_only
+ x-cfn-schema-name: ApplicationInferenceProfile
+ x-cfn-type-name: AWS::Bedrock::ApplicationInferenceProfile
+ x-identifiers:
+ - InferenceProfileIdentifier
+ x-type: cloud_control_view
+ methods: {}
+ sqlVerbs:
+ insert: []
+ delete: []
+ update: []
+ config:
+ views:
+ select:
+ predicate: sqlDialect == "sqlite3"
+ ddl: |-
+ SELECT
+ region,
+ JSON_EXTRACT(Properties, '$.InferenceProfileIdentifier') as inference_profile_identifier
+ FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::Bedrock::ApplicationInferenceProfile'
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres"
+ ddl: |-
+ SELECT
+ region,
+ json_extract_path_text(Properties, 'InferenceProfileIdentifier') as inference_profile_identifier
+ FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::Bedrock::ApplicationInferenceProfile'
+ AND region = 'us-east-1'
+ application_inference_profile_tags:
+ name: application_inference_profile_tags
+ id: aws.bedrock.application_inference_profile_tags
+ x-cfn-schema-name: ApplicationInferenceProfile
+ x-cfn-type-name: AWS::Bedrock::ApplicationInferenceProfile
+ x-type: cloud_control_view
+ methods: {}
+ sqlVerbs:
+ insert: []
+ delete: []
+ update: []
+ config:
+ views:
+ select:
+ predicate: sqlDialect == "sqlite3"
+ ddl: |-
+ SELECT
+ detail.region,
+ JSON_EXTRACT(json_each.value, '$.Key') as tag_key,
+ JSON_EXTRACT(json_each.value, '$.Value') as tag_value,
+ JSON_EXTRACT(detail.Properties, '$.CreatedAt') as created_at,
+ JSON_EXTRACT(detail.Properties, '$.Description') as description,
+ JSON_EXTRACT(detail.Properties, '$.InferenceProfileArn') as inference_profile_arn,
+ JSON_EXTRACT(detail.Properties, '$.InferenceProfileId') as inference_profile_id,
+ JSON_EXTRACT(detail.Properties, '$.InferenceProfileIdentifier') as inference_profile_identifier,
+ JSON_EXTRACT(detail.Properties, '$.InferenceProfileName') as inference_profile_name,
+ JSON_EXTRACT(detail.Properties, '$.ModelSource') as model_source,
+ JSON_EXTRACT(detail.Properties, '$.Models') as models,
+ JSON_EXTRACT(detail.Properties, '$.Status') as status,
+ JSON_EXTRACT(detail.Properties, '$.Type') as type,
+ JSON_EXTRACT(detail.Properties, '$.UpdatedAt') as updated_at
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ ,json_each(JSON_EXTRACT(detail.Properties, '$.Tags'))
+ WHERE listing.data__TypeName = 'AWS::Bedrock::ApplicationInferenceProfile'
+ AND detail.data__TypeName = 'AWS::Bedrock::ApplicationInferenceProfile'
+ AND listing.region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres"
+ ddl: |-
+ SELECT
+ detail.region,
+ json_extract_path_text(json_each.value, 'Key') as tag_key,
+ json_extract_path_text(json_each.value, 'Value') as tag_value,
+ json_extract_path_text(detail.Properties, 'CreatedAt') as created_at,
+ json_extract_path_text(detail.Properties, 'Description') as description,
+ json_extract_path_text(detail.Properties, 'InferenceProfileArn') as inference_profile_arn,
+ json_extract_path_text(detail.Properties, 'InferenceProfileId') as inference_profile_id,
+ json_extract_path_text(detail.Properties, 'InferenceProfileIdentifier') as inference_profile_identifier,
+ json_extract_path_text(detail.Properties, 'InferenceProfileName') as inference_profile_name,
+ json_extract_path_text(detail.Properties, 'ModelSource') as model_source,
+ json_extract_path_text(detail.Properties, 'Models') as models,
+ json_extract_path_text(detail.Properties, 'Status') as status,
+ json_extract_path_text(detail.Properties, 'Type') as type,
+ json_extract_path_text(detail.Properties, 'UpdatedAt') as updated_at
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ ,json_array_elements_text(json_extract_path_text(detail.Properties, 'Tags'))
+ WHERE listing.data__TypeName = 'AWS::Bedrock::ApplicationInferenceProfile'
+ AND detail.data__TypeName = 'AWS::Bedrock::ApplicationInferenceProfile'
+ AND listing.region = 'us-east-1'
+ data_sources:
+ name: data_sources
+ id: aws.bedrock.data_sources
+ x-cfn-schema-name: DataSource
+ x-cfn-type-name: AWS::Bedrock::DataSource
+ x-identifiers:
+ - KnowledgeBaseId
+ - DataSourceId
+ x-type: cloud_control
+ methods:
+ create_resource:
+ config:
+ requestBodyTranslate:
+ algorithm: naive_DesiredState
+ operation:
+ $ref: '#/paths/~1?Action=CreateResource&Version=2021-09-30&__DataSource&__detailTransformed=true/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::Bedrock::DataSource"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ update_resource:
+ operation:
+ $ref: '#/paths/~1?Action=UpdateResource&Version=2021-09-30/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::Bedrock::DataSource"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ delete_resource:
+ operation:
+ $ref: '#/paths/~1?Action=DeleteResource&Version=2021-09-30/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::Bedrock::DataSource"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ sqlVerbs:
+ insert:
+ - $ref: '#/components/x-stackQL-resources/data_sources/methods/create_resource'
+ delete:
+ - $ref: '#/components/x-stackQL-resources/data_sources/methods/delete_resource'
+ update:
+ - $ref: '#/components/x-stackQL-resources/data_sources/methods/update_resource'
+ config:
+ views:
+ select:
+ predicate: sqlDialect == "sqlite3" && requiredParams == [ data__Identifier ]
+ ddl: |-
+ SELECT
+ region,
+ data__Identifier,
+ JSON_EXTRACT(Properties, '$.DataSourceConfiguration') as data_source_configuration,
+ JSON_EXTRACT(Properties, '$.DataSourceId') as data_source_id,
+ JSON_EXTRACT(Properties, '$.Description') as description,
+ JSON_EXTRACT(Properties, '$.KnowledgeBaseId') as knowledge_base_id,
+ JSON_EXTRACT(Properties, '$.DataSourceStatus') as data_source_status,
+ JSON_EXTRACT(Properties, '$.Name') as name,
+ JSON_EXTRACT(Properties, '$.ServerSideEncryptionConfiguration') as server_side_encryption_configuration,
+ JSON_EXTRACT(Properties, '$.VectorIngestionConfiguration') as vector_ingestion_configuration,
+ JSON_EXTRACT(Properties, '$.DataDeletionPolicy') as data_deletion_policy,
+ JSON_EXTRACT(Properties, '$.CreatedAt') as created_at,
+ JSON_EXTRACT(Properties, '$.UpdatedAt') as updated_at,
+ JSON_EXTRACT(Properties, '$.FailureReasons') as failure_reasons
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::Bedrock::DataSource'
+ AND data__Identifier = '|'
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "sqlite3"
+ ddl: |-
+ SELECT
+ detail.region,
+ JSON_EXTRACT(detail.Properties, '$.DataSourceConfiguration') as data_source_configuration,
+ JSON_EXTRACT(detail.Properties, '$.DataSourceId') as data_source_id,
+ JSON_EXTRACT(detail.Properties, '$.Description') as description,
+ JSON_EXTRACT(detail.Properties, '$.KnowledgeBaseId') as knowledge_base_id,
+ JSON_EXTRACT(detail.Properties, '$.DataSourceStatus') as data_source_status,
+ JSON_EXTRACT(detail.Properties, '$.Name') as name,
+ JSON_EXTRACT(detail.Properties, '$.ServerSideEncryptionConfiguration') as server_side_encryption_configuration,
+ JSON_EXTRACT(detail.Properties, '$.VectorIngestionConfiguration') as vector_ingestion_configuration,
+ JSON_EXTRACT(detail.Properties, '$.DataDeletionPolicy') as data_deletion_policy,
+ JSON_EXTRACT(detail.Properties, '$.CreatedAt') as created_at,
+ JSON_EXTRACT(detail.Properties, '$.UpdatedAt') as updated_at,
+ JSON_EXTRACT(detail.Properties, '$.FailureReasons') as failure_reasons
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ WHERE listing.data__TypeName = 'AWS::Bedrock::DataSource'
+ AND detail.data__TypeName = 'AWS::Bedrock::DataSource'
+ AND listing.region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres" && requiredParams == [ data__Identifier ]
+ ddl: |-
+ SELECT
+ region,
+ data__Identifier,
+ json_extract_path_text(Properties, 'DataSourceConfiguration') as data_source_configuration,
+ json_extract_path_text(Properties, 'DataSourceId') as data_source_id,
+ json_extract_path_text(Properties, 'Description') as description,
+ json_extract_path_text(Properties, 'KnowledgeBaseId') as knowledge_base_id,
+ json_extract_path_text(Properties, 'DataSourceStatus') as data_source_status,
+ json_extract_path_text(Properties, 'Name') as name,
+ json_extract_path_text(Properties, 'ServerSideEncryptionConfiguration') as server_side_encryption_configuration,
+ json_extract_path_text(Properties, 'VectorIngestionConfiguration') as vector_ingestion_configuration,
+ json_extract_path_text(Properties, 'DataDeletionPolicy') as data_deletion_policy,
+ json_extract_path_text(Properties, 'CreatedAt') as created_at,
+ json_extract_path_text(Properties, 'UpdatedAt') as updated_at,
+ json_extract_path_text(Properties, 'FailureReasons') as failure_reasons
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::Bedrock::DataSource'
+ AND data__Identifier = '|'
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres"
+ ddl: |-
+ SELECT
+ detail.region,
+ json_extract_path_text(detail.Properties, 'DataSourceConfiguration') as data_source_configuration,
+ json_extract_path_text(detail.Properties, 'DataSourceId') as data_source_id,
+ json_extract_path_text(detail.Properties, 'Description') as description,
+ json_extract_path_text(detail.Properties, 'KnowledgeBaseId') as knowledge_base_id,
+ json_extract_path_text(detail.Properties, 'DataSourceStatus') as data_source_status,
+ json_extract_path_text(detail.Properties, 'Name') as name,
+ json_extract_path_text(detail.Properties, 'ServerSideEncryptionConfiguration') as server_side_encryption_configuration,
+ json_extract_path_text(detail.Properties, 'VectorIngestionConfiguration') as vector_ingestion_configuration,
+ json_extract_path_text(detail.Properties, 'DataDeletionPolicy') as data_deletion_policy,
+ json_extract_path_text(detail.Properties, 'CreatedAt') as created_at,
+ json_extract_path_text(detail.Properties, 'UpdatedAt') as updated_at,
+ json_extract_path_text(detail.Properties, 'FailureReasons') as failure_reasons
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ WHERE listing.data__TypeName = 'AWS::Bedrock::DataSource'
+ AND detail.data__TypeName = 'AWS::Bedrock::DataSource'
+ AND listing.region = 'us-east-1'
+ data_sources_list_only:
+ name: data_sources_list_only
+ id: aws.bedrock.data_sources_list_only
+ x-cfn-schema-name: DataSource
+ x-cfn-type-name: AWS::Bedrock::DataSource
+ x-identifiers:
+ - KnowledgeBaseId
+ - DataSourceId
+ x-type: cloud_control_view
+ methods: {}
+ sqlVerbs:
+ insert: []
+ delete: []
+ update: []
+ config:
+ views:
+ select:
+ predicate: sqlDialect == "sqlite3"
+ ddl: |-
+ SELECT
+ region,
+ JSON_EXTRACT(Properties, '$.KnowledgeBaseId') as knowledge_base_id,
+ JSON_EXTRACT(Properties, '$.DataSourceId') as data_source_id
+ FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::Bedrock::DataSource'
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres"
+ ddl: |-
+ SELECT
+ region,
+ json_extract_path_text(Properties, 'KnowledgeBaseId') as knowledge_base_id,
+ json_extract_path_text(Properties, 'DataSourceId') as data_source_id
+ FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::Bedrock::DataSource'
+ AND region = 'us-east-1'
+ flows:
+ name: flows
+ id: aws.bedrock.flows
+ x-cfn-schema-name: Flow
+ x-cfn-type-name: AWS::Bedrock::Flow
+ x-identifiers:
+ - Arn
+ x-type: cloud_control
+ methods:
+ create_resource:
+ config:
+ requestBodyTranslate:
+ algorithm: naive_DesiredState
+ operation:
+ $ref: '#/paths/~1?Action=CreateResource&Version=2021-09-30&__Flow&__detailTransformed=true/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::Bedrock::Flow"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ update_resource:
+ operation:
+ $ref: '#/paths/~1?Action=UpdateResource&Version=2021-09-30/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::Bedrock::Flow"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ delete_resource:
+ operation:
+ $ref: '#/paths/~1?Action=DeleteResource&Version=2021-09-30/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::Bedrock::Flow"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ sqlVerbs:
+ insert:
+ - $ref: '#/components/x-stackQL-resources/flows/methods/create_resource'
+ delete:
+ - $ref: '#/components/x-stackQL-resources/flows/methods/delete_resource'
+ update:
+ - $ref: '#/components/x-stackQL-resources/flows/methods/update_resource'
+ config:
+ views:
+ select:
+ predicate: sqlDialect == "sqlite3" && requiredParams == [ data__Identifier ]
+ ddl: |-
+ SELECT
+ region,
+ data__Identifier,
+ JSON_EXTRACT(Properties, '$.Arn') as arn,
+ JSON_EXTRACT(Properties, '$.CreatedAt') as created_at,
+ JSON_EXTRACT(Properties, '$.Definition') as definition,
+ JSON_EXTRACT(Properties, '$.DefinitionString') as definition_string,
+ JSON_EXTRACT(Properties, '$.DefinitionS3Location') as definition_s3_location,
+ JSON_EXTRACT(Properties, '$.DefinitionSubstitutions') as definition_substitutions,
+ JSON_EXTRACT(Properties, '$.Description') as description,
+ JSON_EXTRACT(Properties, '$.ExecutionRoleArn') as execution_role_arn,
+ JSON_EXTRACT(Properties, '$.Id') as id,
+ JSON_EXTRACT(Properties, '$.Name') as name,
+ JSON_EXTRACT(Properties, '$.Status') as status,
+ JSON_EXTRACT(Properties, '$.UpdatedAt') as updated_at,
+ JSON_EXTRACT(Properties, '$.CustomerEncryptionKeyArn') as customer_encryption_key_arn,
+ JSON_EXTRACT(Properties, '$.Validations') as validations,
+ JSON_EXTRACT(Properties, '$.Version') as version,
+ JSON_EXTRACT(Properties, '$.Tags') as tags,
+ JSON_EXTRACT(Properties, '$.TestAliasTags') as test_alias_tags
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::Bedrock::Flow'
+ AND data__Identifier = ''
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "sqlite3"
+ ddl: |-
+ SELECT
+ detail.region,
+ JSON_EXTRACT(detail.Properties, '$.Arn') as arn,
+ JSON_EXTRACT(detail.Properties, '$.CreatedAt') as created_at,
+ JSON_EXTRACT(detail.Properties, '$.Definition') as definition,
+ JSON_EXTRACT(detail.Properties, '$.DefinitionString') as definition_string,
+ JSON_EXTRACT(detail.Properties, '$.DefinitionS3Location') as definition_s3_location,
+ JSON_EXTRACT(detail.Properties, '$.DefinitionSubstitutions') as definition_substitutions,
+ JSON_EXTRACT(detail.Properties, '$.Description') as description,
+ JSON_EXTRACT(detail.Properties, '$.ExecutionRoleArn') as execution_role_arn,
+ JSON_EXTRACT(detail.Properties, '$.Id') as id,
+ JSON_EXTRACT(detail.Properties, '$.Name') as name,
+ JSON_EXTRACT(detail.Properties, '$.Status') as status,
+ JSON_EXTRACT(detail.Properties, '$.UpdatedAt') as updated_at,
+ JSON_EXTRACT(detail.Properties, '$.CustomerEncryptionKeyArn') as customer_encryption_key_arn,
+ JSON_EXTRACT(detail.Properties, '$.Validations') as validations,
+ JSON_EXTRACT(detail.Properties, '$.Version') as version,
+ JSON_EXTRACT(detail.Properties, '$.Tags') as tags,
+ JSON_EXTRACT(detail.Properties, '$.TestAliasTags') as test_alias_tags
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ WHERE listing.data__TypeName = 'AWS::Bedrock::Flow'
+ AND detail.data__TypeName = 'AWS::Bedrock::Flow'
+ AND listing.region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres" && requiredParams == [ data__Identifier ]
+ ddl: |-
+ SELECT
+ region,
+ data__Identifier,
+ json_extract_path_text(Properties, 'Arn') as arn,
+ json_extract_path_text(Properties, 'CreatedAt') as created_at,
+ json_extract_path_text(Properties, 'Definition') as definition,
+ json_extract_path_text(Properties, 'DefinitionString') as definition_string,
+ json_extract_path_text(Properties, 'DefinitionS3Location') as definition_s3_location,
+ json_extract_path_text(Properties, 'DefinitionSubstitutions') as definition_substitutions,
+ json_extract_path_text(Properties, 'Description') as description,
+ json_extract_path_text(Properties, 'ExecutionRoleArn') as execution_role_arn,
+ json_extract_path_text(Properties, 'Id') as id,
+ json_extract_path_text(Properties, 'Name') as name,
+ json_extract_path_text(Properties, 'Status') as status,
+ json_extract_path_text(Properties, 'UpdatedAt') as updated_at,
+ json_extract_path_text(Properties, 'CustomerEncryptionKeyArn') as customer_encryption_key_arn,
+ json_extract_path_text(Properties, 'Validations') as validations,
+ json_extract_path_text(Properties, 'Version') as version,
+ json_extract_path_text(Properties, 'Tags') as tags,
+ json_extract_path_text(Properties, 'TestAliasTags') as test_alias_tags
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::Bedrock::Flow'
+ AND data__Identifier = ''
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres"
+ ddl: |-
+ SELECT
+ detail.region,
+ json_extract_path_text(detail.Properties, 'Arn') as arn,
+ json_extract_path_text(detail.Properties, 'CreatedAt') as created_at,
+ json_extract_path_text(detail.Properties, 'Definition') as definition,
+ json_extract_path_text(detail.Properties, 'DefinitionString') as definition_string,
+ json_extract_path_text(detail.Properties, 'DefinitionS3Location') as definition_s3_location,
+ json_extract_path_text(detail.Properties, 'DefinitionSubstitutions') as definition_substitutions,
+ json_extract_path_text(detail.Properties, 'Description') as description,
+ json_extract_path_text(detail.Properties, 'ExecutionRoleArn') as execution_role_arn,
+ json_extract_path_text(detail.Properties, 'Id') as id,
+ json_extract_path_text(detail.Properties, 'Name') as name,
+ json_extract_path_text(detail.Properties, 'Status') as status,
+ json_extract_path_text(detail.Properties, 'UpdatedAt') as updated_at,
+ json_extract_path_text(detail.Properties, 'CustomerEncryptionKeyArn') as customer_encryption_key_arn,
+ json_extract_path_text(detail.Properties, 'Validations') as validations,
+ json_extract_path_text(detail.Properties, 'Version') as version,
+ json_extract_path_text(detail.Properties, 'Tags') as tags,
+ json_extract_path_text(detail.Properties, 'TestAliasTags') as test_alias_tags
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ WHERE listing.data__TypeName = 'AWS::Bedrock::Flow'
+ AND detail.data__TypeName = 'AWS::Bedrock::Flow'
+ AND listing.region = 'us-east-1'
+ flows_list_only:
+ name: flows_list_only
+ id: aws.bedrock.flows_list_only
+ x-cfn-schema-name: Flow
+ x-cfn-type-name: AWS::Bedrock::Flow
+ x-identifiers:
+ - Arn
+ x-type: cloud_control_view
+ methods: {}
+ sqlVerbs:
+ insert: []
+ delete: []
+ update: []
+ config:
+ views:
+ select:
+ predicate: sqlDialect == "sqlite3"
+ ddl: |-
+ SELECT
+ region,
+ JSON_EXTRACT(Properties, '$.Arn') as arn
+ FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::Bedrock::Flow'
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres"
+ ddl: |-
+ SELECT
+ region,
+ json_extract_path_text(Properties, 'Arn') as arn
+ FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::Bedrock::Flow'
+ AND region = 'us-east-1'
+ flow_tags:
+ name: flow_tags
+ id: aws.bedrock.flow_tags
+ x-cfn-schema-name: Flow
+ x-cfn-type-name: AWS::Bedrock::Flow
+ x-type: cloud_control_view
+ methods: {}
+ sqlVerbs:
+ insert: []
+ delete: []
+ update: []
+ config:
+ views:
+ select:
+ predicate: sqlDialect == "sqlite3"
+ ddl: |-
+ SELECT
+ detail.region,
+ JSON_EXTRACT(json_each.value, '$.Key') as tag_key,
+ JSON_EXTRACT(json_each.value, '$.Value') as tag_value,
+ JSON_EXTRACT(detail.Properties, '$.Arn') as arn,
+ JSON_EXTRACT(detail.Properties, '$.CreatedAt') as created_at,
+ JSON_EXTRACT(detail.Properties, '$.Definition') as definition,
+ JSON_EXTRACT(detail.Properties, '$.DefinitionString') as definition_string,
+ JSON_EXTRACT(detail.Properties, '$.DefinitionS3Location') as definition_s3_location,
+ JSON_EXTRACT(detail.Properties, '$.DefinitionSubstitutions') as definition_substitutions,
+ JSON_EXTRACT(detail.Properties, '$.Description') as description,
+ JSON_EXTRACT(detail.Properties, '$.ExecutionRoleArn') as execution_role_arn,
+ JSON_EXTRACT(detail.Properties, '$.Id') as id,
+ JSON_EXTRACT(detail.Properties, '$.Name') as name,
+ JSON_EXTRACT(detail.Properties, '$.Status') as status,
+ JSON_EXTRACT(detail.Properties, '$.UpdatedAt') as updated_at,
+ JSON_EXTRACT(detail.Properties, '$.CustomerEncryptionKeyArn') as customer_encryption_key_arn,
+ JSON_EXTRACT(detail.Properties, '$.Validations') as validations,
+ JSON_EXTRACT(detail.Properties, '$.Version') as version,
+ JSON_EXTRACT(detail.Properties, '$.TestAliasTags') as test_alias_tags
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ ,json_each(JSON_EXTRACT(detail.Properties, '$.Tags'))
+ WHERE listing.data__TypeName = 'AWS::Bedrock::Flow'
+ AND detail.data__TypeName = 'AWS::Bedrock::Flow'
+ AND listing.region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres"
+ ddl: |-
+ SELECT
+ detail.region,
+ json_extract_path_text(json_each.value, 'Key') as tag_key,
+ json_extract_path_text(json_each.value, 'Value') as tag_value,
+ json_extract_path_text(detail.Properties, 'Arn') as arn,
+ json_extract_path_text(detail.Properties, 'CreatedAt') as created_at,
+ json_extract_path_text(detail.Properties, 'Definition') as definition,
+ json_extract_path_text(detail.Properties, 'DefinitionString') as definition_string,
+ json_extract_path_text(detail.Properties, 'DefinitionS3Location') as definition_s3_location,
+ json_extract_path_text(detail.Properties, 'DefinitionSubstitutions') as definition_substitutions,
+ json_extract_path_text(detail.Properties, 'Description') as description,
+ json_extract_path_text(detail.Properties, 'ExecutionRoleArn') as execution_role_arn,
+ json_extract_path_text(detail.Properties, 'Id') as id,
+ json_extract_path_text(detail.Properties, 'Name') as name,
+ json_extract_path_text(detail.Properties, 'Status') as status,
+ json_extract_path_text(detail.Properties, 'UpdatedAt') as updated_at,
+ json_extract_path_text(detail.Properties, 'CustomerEncryptionKeyArn') as customer_encryption_key_arn,
+ json_extract_path_text(detail.Properties, 'Validations') as validations,
+ json_extract_path_text(detail.Properties, 'Version') as version,
+ json_extract_path_text(detail.Properties, 'TestAliasTags') as test_alias_tags
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ ,json_array_elements_text(json_extract_path_text(detail.Properties, 'Tags'))
+ WHERE listing.data__TypeName = 'AWS::Bedrock::Flow'
+ AND detail.data__TypeName = 'AWS::Bedrock::Flow'
+ AND listing.region = 'us-east-1'
+ flow_aliases:
+ name: flow_aliases
+ id: aws.bedrock.flow_aliases
+ x-cfn-schema-name: FlowAlias
+ x-cfn-type-name: AWS::Bedrock::FlowAlias
+ x-identifiers:
+ - Arn
+ - FlowArn
+ x-type: cloud_control
+ methods:
+ create_resource:
+ config:
+ requestBodyTranslate:
+ algorithm: naive_DesiredState
+ operation:
+ $ref: '#/paths/~1?Action=CreateResource&Version=2021-09-30&__FlowAlias&__detailTransformed=true/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::Bedrock::FlowAlias"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ update_resource:
+ operation:
+ $ref: '#/paths/~1?Action=UpdateResource&Version=2021-09-30/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::Bedrock::FlowAlias"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ delete_resource:
+ operation:
+ $ref: '#/paths/~1?Action=DeleteResource&Version=2021-09-30/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::Bedrock::FlowAlias"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ sqlVerbs:
+ insert:
+ - $ref: '#/components/x-stackQL-resources/flow_aliases/methods/create_resource'
+ delete:
+ - $ref: '#/components/x-stackQL-resources/flow_aliases/methods/delete_resource'
+ update:
+ - $ref: '#/components/x-stackQL-resources/flow_aliases/methods/update_resource'
+ config:
+ views:
+ select:
+ predicate: sqlDialect == "sqlite3" && requiredParams == [ data__Identifier ]
+ ddl: |-
+ SELECT
+ region,
+ data__Identifier,
+ JSON_EXTRACT(Properties, '$.Arn') as arn,
+ JSON_EXTRACT(Properties, '$.FlowArn') as flow_arn,
+ JSON_EXTRACT(Properties, '$.CreatedAt') as created_at,
+ JSON_EXTRACT(Properties, '$.Description') as description,
+ JSON_EXTRACT(Properties, '$.FlowId') as flow_id,
+ JSON_EXTRACT(Properties, '$.Id') as id,
+ JSON_EXTRACT(Properties, '$.Name') as name,
+ JSON_EXTRACT(Properties, '$.RoutingConfiguration') as routing_configuration,
+ JSON_EXTRACT(Properties, '$.UpdatedAt') as updated_at,
+ JSON_EXTRACT(Properties, '$.Tags') as tags
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::Bedrock::FlowAlias'
+ AND data__Identifier = '|'
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "sqlite3"
+ ddl: |-
+ SELECT
+ detail.region,
+ JSON_EXTRACT(detail.Properties, '$.Arn') as arn,
+ JSON_EXTRACT(detail.Properties, '$.FlowArn') as flow_arn,
+ JSON_EXTRACT(detail.Properties, '$.CreatedAt') as created_at,
+ JSON_EXTRACT(detail.Properties, '$.Description') as description,
+ JSON_EXTRACT(detail.Properties, '$.FlowId') as flow_id,
+ JSON_EXTRACT(detail.Properties, '$.Id') as id,
+ JSON_EXTRACT(detail.Properties, '$.Name') as name,
+ JSON_EXTRACT(detail.Properties, '$.RoutingConfiguration') as routing_configuration,
+ JSON_EXTRACT(detail.Properties, '$.UpdatedAt') as updated_at,
+ JSON_EXTRACT(detail.Properties, '$.Tags') as tags
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ WHERE listing.data__TypeName = 'AWS::Bedrock::FlowAlias'
+ AND detail.data__TypeName = 'AWS::Bedrock::FlowAlias'
+ AND listing.region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres" && requiredParams == [ data__Identifier ]
+ ddl: |-
+ SELECT
+ region,
+ data__Identifier,
+ json_extract_path_text(Properties, 'Arn') as arn,
+ json_extract_path_text(Properties, 'FlowArn') as flow_arn,
+ json_extract_path_text(Properties, 'CreatedAt') as created_at,
+ json_extract_path_text(Properties, 'Description') as description,
+ json_extract_path_text(Properties, 'FlowId') as flow_id,
+ json_extract_path_text(Properties, 'Id') as id,
+ json_extract_path_text(Properties, 'Name') as name,
+ json_extract_path_text(Properties, 'RoutingConfiguration') as routing_configuration,
+ json_extract_path_text(Properties, 'UpdatedAt') as updated_at,
+ json_extract_path_text(Properties, 'Tags') as tags
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::Bedrock::FlowAlias'
+ AND data__Identifier = '|'
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres"
+ ddl: |-
+ SELECT
+ detail.region,
+ json_extract_path_text(detail.Properties, 'Arn') as arn,
+ json_extract_path_text(detail.Properties, 'FlowArn') as flow_arn,
+ json_extract_path_text(detail.Properties, 'CreatedAt') as created_at,
+ json_extract_path_text(detail.Properties, 'Description') as description,
+ json_extract_path_text(detail.Properties, 'FlowId') as flow_id,
+ json_extract_path_text(detail.Properties, 'Id') as id,
+ json_extract_path_text(detail.Properties, 'Name') as name,
+ json_extract_path_text(detail.Properties, 'RoutingConfiguration') as routing_configuration,
+ json_extract_path_text(detail.Properties, 'UpdatedAt') as updated_at,
+ json_extract_path_text(detail.Properties, 'Tags') as tags
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ WHERE listing.data__TypeName = 'AWS::Bedrock::FlowAlias'
+ AND detail.data__TypeName = 'AWS::Bedrock::FlowAlias'
+ AND listing.region = 'us-east-1'
+ flow_aliases_list_only:
+ name: flow_aliases_list_only
+ id: aws.bedrock.flow_aliases_list_only
+ x-cfn-schema-name: FlowAlias
+ x-cfn-type-name: AWS::Bedrock::FlowAlias
+ x-identifiers:
+ - Arn
+ - FlowArn
+ x-type: cloud_control_view
+ methods: {}
+ sqlVerbs:
+ insert: []
+ delete: []
+ update: []
+ config:
+ views:
+ select:
+ predicate: sqlDialect == "sqlite3"
+ ddl: |-
+ SELECT
+ region,
+ JSON_EXTRACT(Properties, '$.Arn') as arn,
+ JSON_EXTRACT(Properties, '$.FlowArn') as flow_arn
+ FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::Bedrock::FlowAlias'
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres"
+ ddl: |-
+ SELECT
+ region,
+ json_extract_path_text(Properties, 'Arn') as arn,
+ json_extract_path_text(Properties, 'FlowArn') as flow_arn
+ FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::Bedrock::FlowAlias'
+ AND region = 'us-east-1'
+ flow_alias_tags:
+ name: flow_alias_tags
+ id: aws.bedrock.flow_alias_tags
+ x-cfn-schema-name: FlowAlias
+ x-cfn-type-name: AWS::Bedrock::FlowAlias
+ x-type: cloud_control_view
+ methods: {}
+ sqlVerbs:
+ insert: []
+ delete: []
+ update: []
+ config:
+ views:
+ select:
+ predicate: sqlDialect == "sqlite3"
+ ddl: |-
+ SELECT
+ detail.region,
+ JSON_EXTRACT(json_each.value, '$.Key') as tag_key,
+ JSON_EXTRACT(json_each.value, '$.Value') as tag_value,
+ JSON_EXTRACT(detail.Properties, '$.Arn') as arn,
+ JSON_EXTRACT(detail.Properties, '$.FlowArn') as flow_arn,
+ JSON_EXTRACT(detail.Properties, '$.CreatedAt') as created_at,
+ JSON_EXTRACT(detail.Properties, '$.Description') as description,
+ JSON_EXTRACT(detail.Properties, '$.FlowId') as flow_id,
+ JSON_EXTRACT(detail.Properties, '$.Id') as id,
+ JSON_EXTRACT(detail.Properties, '$.Name') as name,
+ JSON_EXTRACT(detail.Properties, '$.RoutingConfiguration') as routing_configuration,
+ JSON_EXTRACT(detail.Properties, '$.UpdatedAt') as updated_at
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ ,json_each(JSON_EXTRACT(detail.Properties, '$.Tags'))
+ WHERE listing.data__TypeName = 'AWS::Bedrock::FlowAlias'
+ AND detail.data__TypeName = 'AWS::Bedrock::FlowAlias'
+ AND listing.region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres"
+ ddl: |-
+ SELECT
+ detail.region,
+ json_extract_path_text(json_each.value, 'Key') as tag_key,
+ json_extract_path_text(json_each.value, 'Value') as tag_value,
+ json_extract_path_text(detail.Properties, 'Arn') as arn,
+ json_extract_path_text(detail.Properties, 'FlowArn') as flow_arn,
+ json_extract_path_text(detail.Properties, 'CreatedAt') as created_at,
+ json_extract_path_text(detail.Properties, 'Description') as description,
+ json_extract_path_text(detail.Properties, 'FlowId') as flow_id,
+ json_extract_path_text(detail.Properties, 'Id') as id,
+ json_extract_path_text(detail.Properties, 'Name') as name,
+ json_extract_path_text(detail.Properties, 'RoutingConfiguration') as routing_configuration,
+ json_extract_path_text(detail.Properties, 'UpdatedAt') as updated_at
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ ,json_array_elements_text(json_extract_path_text(detail.Properties, 'Tags'))
+ WHERE listing.data__TypeName = 'AWS::Bedrock::FlowAlias'
+ AND detail.data__TypeName = 'AWS::Bedrock::FlowAlias'
+ AND listing.region = 'us-east-1'
+ flow_versions:
+ name: flow_versions
+ id: aws.bedrock.flow_versions
+ x-cfn-schema-name: FlowVersion
+ x-cfn-type-name: AWS::Bedrock::FlowVersion
+ x-identifiers:
+ - FlowArn
+ - Version
x-type: cloud_control
methods:
create_resource:
@@ -2608,12 +6840,12 @@ components:
requestBodyTranslate:
algorithm: naive_DesiredState
operation:
- $ref: '#/paths/~1?Action=CreateResource&Version=2021-09-30&__Agent&__detailTransformed=true/post'
+ $ref: '#/paths/~1?Action=CreateResource&Version=2021-09-30&__FlowVersion&__detailTransformed=true/post'
request:
mediaType: application/x-amz-json-1.0
base: |-
{
- "TypeName": "AWS::Bedrock::Agent"
+ "TypeName": "AWS::Bedrock::FlowVersion"
}
response:
mediaType: application/json
@@ -2625,7 +6857,7 @@ components:
mediaType: application/x-amz-json-1.0
base: |-
{
- "TypeName": "AWS::Bedrock::Agent"
+ "TypeName": "AWS::Bedrock::FlowVersion"
}
response:
mediaType: application/json
@@ -2637,18 +6869,18 @@ components:
mediaType: application/x-amz-json-1.0
base: |-
{
- "TypeName": "AWS::Bedrock::Agent"
+ "TypeName": "AWS::Bedrock::FlowVersion"
}
response:
mediaType: application/json
openAPIDocKey: '200'
sqlVerbs:
insert:
- - $ref: '#/components/x-stackQL-resources/agents/methods/create_resource'
+ - $ref: '#/components/x-stackQL-resources/flow_versions/methods/create_resource'
delete:
- - $ref: '#/components/x-stackQL-resources/agents/methods/delete_resource'
+ - $ref: '#/components/x-stackQL-resources/flow_versions/methods/delete_resource'
update:
- - $ref: '#/components/x-stackQL-resources/agents/methods/update_resource'
+ - $ref: '#/components/x-stackQL-resources/flow_versions/methods/update_resource'
config:
views:
select:
@@ -2657,66 +6889,40 @@ components:
SELECT
region,
data__Identifier,
- JSON_EXTRACT(Properties, '$.ActionGroups') as action_groups,
- JSON_EXTRACT(Properties, '$.AgentArn') as agent_arn,
- JSON_EXTRACT(Properties, '$.AgentId') as agent_id,
- JSON_EXTRACT(Properties, '$.AgentName') as agent_name,
- JSON_EXTRACT(Properties, '$.AgentResourceRoleArn') as agent_resource_role_arn,
- JSON_EXTRACT(Properties, '$.AgentStatus') as agent_status,
- JSON_EXTRACT(Properties, '$.AgentVersion') as agent_version,
- JSON_EXTRACT(Properties, '$.AutoPrepare') as auto_prepare,
+ JSON_EXTRACT(Properties, '$.FlowArn') as flow_arn,
JSON_EXTRACT(Properties, '$.CreatedAt') as created_at,
- JSON_EXTRACT(Properties, '$.CustomerEncryptionKeyArn') as customer_encryption_key_arn,
- JSON_EXTRACT(Properties, '$.SkipResourceInUseCheckOnDelete') as skip_resource_in_use_check_on_delete,
+ JSON_EXTRACT(Properties, '$.Definition') as definition,
JSON_EXTRACT(Properties, '$.Description') as description,
- JSON_EXTRACT(Properties, '$.FailureReasons') as failure_reasons,
- JSON_EXTRACT(Properties, '$.FoundationModel') as foundation_model,
- JSON_EXTRACT(Properties, '$.IdleSessionTTLInSeconds') as idle_session_ttl_in_seconds,
- JSON_EXTRACT(Properties, '$.Instruction') as instruction,
- JSON_EXTRACT(Properties, '$.KnowledgeBases') as knowledge_bases,
- JSON_EXTRACT(Properties, '$.PreparedAt') as prepared_at,
- JSON_EXTRACT(Properties, '$.PromptOverrideConfiguration') as prompt_override_configuration,
- JSON_EXTRACT(Properties, '$.RecommendedActions') as recommended_actions,
- JSON_EXTRACT(Properties, '$.Tags') as tags,
- JSON_EXTRACT(Properties, '$.TestAliasTags') as test_alias_tags,
- JSON_EXTRACT(Properties, '$.UpdatedAt') as updated_at
- FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::Bedrock::Agent'
- AND data__Identifier = ''
+ JSON_EXTRACT(Properties, '$.ExecutionRoleArn') as execution_role_arn,
+ JSON_EXTRACT(Properties, '$.FlowId') as flow_id,
+ JSON_EXTRACT(Properties, '$.Name') as name,
+ JSON_EXTRACT(Properties, '$.Status') as status,
+ JSON_EXTRACT(Properties, '$.Version') as version,
+ JSON_EXTRACT(Properties, '$.CustomerEncryptionKeyArn') as customer_encryption_key_arn
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::Bedrock::FlowVersion'
+ AND data__Identifier = '|'
AND region = 'us-east-1'
fallback:
predicate: sqlDialect == "sqlite3"
ddl: |-
SELECT
detail.region,
- JSON_EXTRACT(detail.Properties, '$.ActionGroups') as action_groups,
- JSON_EXTRACT(detail.Properties, '$.AgentArn') as agent_arn,
- JSON_EXTRACT(detail.Properties, '$.AgentId') as agent_id,
- JSON_EXTRACT(detail.Properties, '$.AgentName') as agent_name,
- JSON_EXTRACT(detail.Properties, '$.AgentResourceRoleArn') as agent_resource_role_arn,
- JSON_EXTRACT(detail.Properties, '$.AgentStatus') as agent_status,
- JSON_EXTRACT(detail.Properties, '$.AgentVersion') as agent_version,
- JSON_EXTRACT(detail.Properties, '$.AutoPrepare') as auto_prepare,
+ JSON_EXTRACT(detail.Properties, '$.FlowArn') as flow_arn,
JSON_EXTRACT(detail.Properties, '$.CreatedAt') as created_at,
- JSON_EXTRACT(detail.Properties, '$.CustomerEncryptionKeyArn') as customer_encryption_key_arn,
- JSON_EXTRACT(detail.Properties, '$.SkipResourceInUseCheckOnDelete') as skip_resource_in_use_check_on_delete,
+ JSON_EXTRACT(detail.Properties, '$.Definition') as definition,
JSON_EXTRACT(detail.Properties, '$.Description') as description,
- JSON_EXTRACT(detail.Properties, '$.FailureReasons') as failure_reasons,
- JSON_EXTRACT(detail.Properties, '$.FoundationModel') as foundation_model,
- JSON_EXTRACT(detail.Properties, '$.IdleSessionTTLInSeconds') as idle_session_ttl_in_seconds,
- JSON_EXTRACT(detail.Properties, '$.Instruction') as instruction,
- JSON_EXTRACT(detail.Properties, '$.KnowledgeBases') as knowledge_bases,
- JSON_EXTRACT(detail.Properties, '$.PreparedAt') as prepared_at,
- JSON_EXTRACT(detail.Properties, '$.PromptOverrideConfiguration') as prompt_override_configuration,
- JSON_EXTRACT(detail.Properties, '$.RecommendedActions') as recommended_actions,
- JSON_EXTRACT(detail.Properties, '$.Tags') as tags,
- JSON_EXTRACT(detail.Properties, '$.TestAliasTags') as test_alias_tags,
- JSON_EXTRACT(detail.Properties, '$.UpdatedAt') as updated_at
+ JSON_EXTRACT(detail.Properties, '$.ExecutionRoleArn') as execution_role_arn,
+ JSON_EXTRACT(detail.Properties, '$.FlowId') as flow_id,
+ JSON_EXTRACT(detail.Properties, '$.Name') as name,
+ JSON_EXTRACT(detail.Properties, '$.Status') as status,
+ JSON_EXTRACT(detail.Properties, '$.Version') as version,
+ JSON_EXTRACT(detail.Properties, '$.CustomerEncryptionKeyArn') as customer_encryption_key_arn
FROM aws.cloud_control.resources listing
LEFT OUTER JOIN aws.cloud_control.resource detail
ON detail.data__Identifier = listing.Identifier
AND detail.region = listing.region
- WHERE listing.data__TypeName = 'AWS::Bedrock::Agent'
- AND detail.data__TypeName = 'AWS::Bedrock::Agent'
+ WHERE listing.data__TypeName = 'AWS::Bedrock::FlowVersion'
+ AND detail.data__TypeName = 'AWS::Bedrock::FlowVersion'
AND listing.region = 'us-east-1'
fallback:
predicate: sqlDialect == "postgres" && requiredParams == [ data__Identifier ]
@@ -2724,74 +6930,49 @@ components:
SELECT
region,
data__Identifier,
- json_extract_path_text(Properties, 'ActionGroups') as action_groups,
- json_extract_path_text(Properties, 'AgentArn') as agent_arn,
- json_extract_path_text(Properties, 'AgentId') as agent_id,
- json_extract_path_text(Properties, 'AgentName') as agent_name,
- json_extract_path_text(Properties, 'AgentResourceRoleArn') as agent_resource_role_arn,
- json_extract_path_text(Properties, 'AgentStatus') as agent_status,
- json_extract_path_text(Properties, 'AgentVersion') as agent_version,
- json_extract_path_text(Properties, 'AutoPrepare') as auto_prepare,
+ json_extract_path_text(Properties, 'FlowArn') as flow_arn,
json_extract_path_text(Properties, 'CreatedAt') as created_at,
- json_extract_path_text(Properties, 'CustomerEncryptionKeyArn') as customer_encryption_key_arn,
- json_extract_path_text(Properties, 'SkipResourceInUseCheckOnDelete') as skip_resource_in_use_check_on_delete,
+ json_extract_path_text(Properties, 'Definition') as definition,
json_extract_path_text(Properties, 'Description') as description,
- json_extract_path_text(Properties, 'FailureReasons') as failure_reasons,
- json_extract_path_text(Properties, 'FoundationModel') as foundation_model,
- json_extract_path_text(Properties, 'IdleSessionTTLInSeconds') as idle_session_ttl_in_seconds,
- json_extract_path_text(Properties, 'Instruction') as instruction,
- json_extract_path_text(Properties, 'KnowledgeBases') as knowledge_bases,
- json_extract_path_text(Properties, 'PreparedAt') as prepared_at,
- json_extract_path_text(Properties, 'PromptOverrideConfiguration') as prompt_override_configuration,
- json_extract_path_text(Properties, 'RecommendedActions') as recommended_actions,
- json_extract_path_text(Properties, 'Tags') as tags,
- json_extract_path_text(Properties, 'TestAliasTags') as test_alias_tags,
- json_extract_path_text(Properties, 'UpdatedAt') as updated_at
- FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::Bedrock::Agent'
- AND data__Identifier = ''
+ json_extract_path_text(Properties, 'ExecutionRoleArn') as execution_role_arn,
+ json_extract_path_text(Properties, 'FlowId') as flow_id,
+ json_extract_path_text(Properties, 'Name') as name,
+ json_extract_path_text(Properties, 'Status') as status,
+ json_extract_path_text(Properties, 'Version') as version,
+ json_extract_path_text(Properties, 'CustomerEncryptionKeyArn') as customer_encryption_key_arn
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::Bedrock::FlowVersion'
+ AND data__Identifier = '|'
AND region = 'us-east-1'
fallback:
predicate: sqlDialect == "postgres"
ddl: |-
SELECT
detail.region,
- json_extract_path_text(detail.Properties, 'ActionGroups') as action_groups,
- json_extract_path_text(detail.Properties, 'AgentArn') as agent_arn,
- json_extract_path_text(detail.Properties, 'AgentId') as agent_id,
- json_extract_path_text(detail.Properties, 'AgentName') as agent_name,
- json_extract_path_text(detail.Properties, 'AgentResourceRoleArn') as agent_resource_role_arn,
- json_extract_path_text(detail.Properties, 'AgentStatus') as agent_status,
- json_extract_path_text(detail.Properties, 'AgentVersion') as agent_version,
- json_extract_path_text(detail.Properties, 'AutoPrepare') as auto_prepare,
+ json_extract_path_text(detail.Properties, 'FlowArn') as flow_arn,
json_extract_path_text(detail.Properties, 'CreatedAt') as created_at,
- json_extract_path_text(detail.Properties, 'CustomerEncryptionKeyArn') as customer_encryption_key_arn,
- json_extract_path_text(detail.Properties, 'SkipResourceInUseCheckOnDelete') as skip_resource_in_use_check_on_delete,
+ json_extract_path_text(detail.Properties, 'Definition') as definition,
json_extract_path_text(detail.Properties, 'Description') as description,
- json_extract_path_text(detail.Properties, 'FailureReasons') as failure_reasons,
- json_extract_path_text(detail.Properties, 'FoundationModel') as foundation_model,
- json_extract_path_text(detail.Properties, 'IdleSessionTTLInSeconds') as idle_session_ttl_in_seconds,
- json_extract_path_text(detail.Properties, 'Instruction') as instruction,
- json_extract_path_text(detail.Properties, 'KnowledgeBases') as knowledge_bases,
- json_extract_path_text(detail.Properties, 'PreparedAt') as prepared_at,
- json_extract_path_text(detail.Properties, 'PromptOverrideConfiguration') as prompt_override_configuration,
- json_extract_path_text(detail.Properties, 'RecommendedActions') as recommended_actions,
- json_extract_path_text(detail.Properties, 'Tags') as tags,
- json_extract_path_text(detail.Properties, 'TestAliasTags') as test_alias_tags,
- json_extract_path_text(detail.Properties, 'UpdatedAt') as updated_at
+ json_extract_path_text(detail.Properties, 'ExecutionRoleArn') as execution_role_arn,
+ json_extract_path_text(detail.Properties, 'FlowId') as flow_id,
+ json_extract_path_text(detail.Properties, 'Name') as name,
+ json_extract_path_text(detail.Properties, 'Status') as status,
+ json_extract_path_text(detail.Properties, 'Version') as version,
+ json_extract_path_text(detail.Properties, 'CustomerEncryptionKeyArn') as customer_encryption_key_arn
FROM aws.cloud_control.resources listing
LEFT OUTER JOIN aws.cloud_control.resource detail
ON detail.data__Identifier = listing.Identifier
AND detail.region = listing.region
- WHERE listing.data__TypeName = 'AWS::Bedrock::Agent'
- AND detail.data__TypeName = 'AWS::Bedrock::Agent'
+ WHERE listing.data__TypeName = 'AWS::Bedrock::FlowVersion'
+ AND detail.data__TypeName = 'AWS::Bedrock::FlowVersion'
AND listing.region = 'us-east-1'
- agents_list_only:
- name: agents_list_only
- id: aws.bedrock.agents_list_only
- x-cfn-schema-name: Agent
- x-cfn-type-name: AWS::Bedrock::Agent
+ flow_versions_list_only:
+ name: flow_versions_list_only
+ id: aws.bedrock.flow_versions_list_only
+ x-cfn-schema-name: FlowVersion
+ x-cfn-type-name: AWS::Bedrock::FlowVersion
x-identifiers:
- - AgentId
+ - FlowArn
+ - Version
x-type: cloud_control_view
methods: {}
sqlVerbs:
@@ -2805,112 +6986,26 @@ components:
ddl: |-
SELECT
region,
- JSON_EXTRACT(Properties, '$.AgentId') as agent_id
- FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::Bedrock::Agent'
+ JSON_EXTRACT(Properties, '$.FlowArn') as flow_arn,
+ JSON_EXTRACT(Properties, '$.Version') as version
+ FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::Bedrock::FlowVersion'
AND region = 'us-east-1'
fallback:
predicate: sqlDialect == "postgres"
ddl: |-
SELECT
region,
- json_extract_path_text(Properties, 'AgentId') as agent_id
- FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::Bedrock::Agent'
+ json_extract_path_text(Properties, 'FlowArn') as flow_arn,
+ json_extract_path_text(Properties, 'Version') as version
+ FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::Bedrock::FlowVersion'
AND region = 'us-east-1'
- agent_tags:
- name: agent_tags
- id: aws.bedrock.agent_tags
- x-cfn-schema-name: Agent
- x-cfn-type-name: AWS::Bedrock::Agent
- x-type: cloud_control_view
- methods: {}
- sqlVerbs:
- insert: []
- delete: []
- update: []
- config:
- views:
- select:
- predicate: sqlDialect == "sqlite3"
- ddl: |-
- SELECT
- detail.region,
- JSON_EXTRACT(json_each.value, '$.Key') as tag_key,
- JSON_EXTRACT(json_each.value, '$.Value') as tag_value,
- JSON_EXTRACT(detail.Properties, '$.ActionGroups') as action_groups,
- JSON_EXTRACT(detail.Properties, '$.AgentArn') as agent_arn,
- JSON_EXTRACT(detail.Properties, '$.AgentId') as agent_id,
- JSON_EXTRACT(detail.Properties, '$.AgentName') as agent_name,
- JSON_EXTRACT(detail.Properties, '$.AgentResourceRoleArn') as agent_resource_role_arn,
- JSON_EXTRACT(detail.Properties, '$.AgentStatus') as agent_status,
- JSON_EXTRACT(detail.Properties, '$.AgentVersion') as agent_version,
- JSON_EXTRACT(detail.Properties, '$.AutoPrepare') as auto_prepare,
- JSON_EXTRACT(detail.Properties, '$.CreatedAt') as created_at,
- JSON_EXTRACT(detail.Properties, '$.CustomerEncryptionKeyArn') as customer_encryption_key_arn,
- JSON_EXTRACT(detail.Properties, '$.SkipResourceInUseCheckOnDelete') as skip_resource_in_use_check_on_delete,
- JSON_EXTRACT(detail.Properties, '$.Description') as description,
- JSON_EXTRACT(detail.Properties, '$.FailureReasons') as failure_reasons,
- JSON_EXTRACT(detail.Properties, '$.FoundationModel') as foundation_model,
- JSON_EXTRACT(detail.Properties, '$.IdleSessionTTLInSeconds') as idle_session_ttl_in_seconds,
- JSON_EXTRACT(detail.Properties, '$.Instruction') as instruction,
- JSON_EXTRACT(detail.Properties, '$.KnowledgeBases') as knowledge_bases,
- JSON_EXTRACT(detail.Properties, '$.PreparedAt') as prepared_at,
- JSON_EXTRACT(detail.Properties, '$.PromptOverrideConfiguration') as prompt_override_configuration,
- JSON_EXTRACT(detail.Properties, '$.RecommendedActions') as recommended_actions,
- JSON_EXTRACT(detail.Properties, '$.TestAliasTags') as test_alias_tags,
- JSON_EXTRACT(detail.Properties, '$.UpdatedAt') as updated_at
- FROM aws.cloud_control.resources listing
- LEFT OUTER JOIN aws.cloud_control.resource detail
- ON detail.data__Identifier = listing.Identifier
- AND detail.region = listing.region
- ,json_each(JSON_EXTRACT(detail.Properties, '$.Tags'))
- WHERE listing.data__TypeName = 'AWS::Bedrock::Agent'
- AND detail.data__TypeName = 'AWS::Bedrock::Agent'
- AND listing.region = 'us-east-1'
- fallback:
- predicate: sqlDialect == "postgres"
- ddl: |-
- SELECT
- detail.region,
- json_extract_path_text(json_each.value, 'Key') as tag_key,
- json_extract_path_text(json_each.value, 'Value') as tag_value,
- json_extract_path_text(detail.Properties, 'ActionGroups') as action_groups,
- json_extract_path_text(detail.Properties, 'AgentArn') as agent_arn,
- json_extract_path_text(detail.Properties, 'AgentId') as agent_id,
- json_extract_path_text(detail.Properties, 'AgentName') as agent_name,
- json_extract_path_text(detail.Properties, 'AgentResourceRoleArn') as agent_resource_role_arn,
- json_extract_path_text(detail.Properties, 'AgentStatus') as agent_status,
- json_extract_path_text(detail.Properties, 'AgentVersion') as agent_version,
- json_extract_path_text(detail.Properties, 'AutoPrepare') as auto_prepare,
- json_extract_path_text(detail.Properties, 'CreatedAt') as created_at,
- json_extract_path_text(detail.Properties, 'CustomerEncryptionKeyArn') as customer_encryption_key_arn,
- json_extract_path_text(detail.Properties, 'SkipResourceInUseCheckOnDelete') as skip_resource_in_use_check_on_delete,
- json_extract_path_text(detail.Properties, 'Description') as description,
- json_extract_path_text(detail.Properties, 'FailureReasons') as failure_reasons,
- json_extract_path_text(detail.Properties, 'FoundationModel') as foundation_model,
- json_extract_path_text(detail.Properties, 'IdleSessionTTLInSeconds') as idle_session_ttl_in_seconds,
- json_extract_path_text(detail.Properties, 'Instruction') as instruction,
- json_extract_path_text(detail.Properties, 'KnowledgeBases') as knowledge_bases,
- json_extract_path_text(detail.Properties, 'PreparedAt') as prepared_at,
- json_extract_path_text(detail.Properties, 'PromptOverrideConfiguration') as prompt_override_configuration,
- json_extract_path_text(detail.Properties, 'RecommendedActions') as recommended_actions,
- json_extract_path_text(detail.Properties, 'TestAliasTags') as test_alias_tags,
- json_extract_path_text(detail.Properties, 'UpdatedAt') as updated_at
- FROM aws.cloud_control.resources listing
- LEFT OUTER JOIN aws.cloud_control.resource detail
- ON detail.data__Identifier = listing.Identifier
- AND detail.region = listing.region
- ,json_array_elements_text(json_extract_path_text(detail.Properties, 'Tags'))
- WHERE listing.data__TypeName = 'AWS::Bedrock::Agent'
- AND detail.data__TypeName = 'AWS::Bedrock::Agent'
- AND listing.region = 'us-east-1'
- agent_aliases:
- name: agent_aliases
- id: aws.bedrock.agent_aliases
- x-cfn-schema-name: AgentAlias
- x-cfn-type-name: AWS::Bedrock::AgentAlias
+ guardrails:
+ name: guardrails
+ id: aws.bedrock.guardrails
+ x-cfn-schema-name: Guardrail
+ x-cfn-type-name: AWS::Bedrock::Guardrail
x-identifiers:
- - AgentId
- - AgentAliasId
+ - GuardrailArn
x-type: cloud_control
methods:
create_resource:
@@ -2918,12 +7013,12 @@ components:
requestBodyTranslate:
algorithm: naive_DesiredState
operation:
- $ref: '#/paths/~1?Action=CreateResource&Version=2021-09-30&__AgentAlias&__detailTransformed=true/post'
+ $ref: '#/paths/~1?Action=CreateResource&Version=2021-09-30&__Guardrail&__detailTransformed=true/post'
request:
mediaType: application/x-amz-json-1.0
base: |-
{
- "TypeName": "AWS::Bedrock::AgentAlias"
+ "TypeName": "AWS::Bedrock::Guardrail"
}
response:
mediaType: application/json
@@ -2935,7 +7030,7 @@ components:
mediaType: application/x-amz-json-1.0
base: |-
{
- "TypeName": "AWS::Bedrock::AgentAlias"
+ "TypeName": "AWS::Bedrock::Guardrail"
}
response:
mediaType: application/json
@@ -2947,18 +7042,18 @@ components:
mediaType: application/x-amz-json-1.0
base: |-
{
- "TypeName": "AWS::Bedrock::AgentAlias"
+ "TypeName": "AWS::Bedrock::Guardrail"
}
response:
mediaType: application/json
openAPIDocKey: '200'
sqlVerbs:
insert:
- - $ref: '#/components/x-stackQL-resources/agent_aliases/methods/create_resource'
+ - $ref: '#/components/x-stackQL-resources/guardrails/methods/create_resource'
delete:
- - $ref: '#/components/x-stackQL-resources/agent_aliases/methods/delete_resource'
+ - $ref: '#/components/x-stackQL-resources/guardrails/methods/delete_resource'
update:
- - $ref: '#/components/x-stackQL-resources/agent_aliases/methods/update_resource'
+ - $ref: '#/components/x-stackQL-resources/guardrails/methods/update_resource'
config:
views:
select:
@@ -2967,42 +7062,58 @@ components:
SELECT
region,
data__Identifier,
- JSON_EXTRACT(Properties, '$.AgentAliasArn') as agent_alias_arn,
- JSON_EXTRACT(Properties, '$.AgentAliasHistoryEvents') as agent_alias_history_events,
- JSON_EXTRACT(Properties, '$.AgentAliasId') as agent_alias_id,
- JSON_EXTRACT(Properties, '$.AgentAliasName') as agent_alias_name,
- JSON_EXTRACT(Properties, '$.AgentAliasStatus') as agent_alias_status,
- JSON_EXTRACT(Properties, '$.AgentId') as agent_id,
+ JSON_EXTRACT(Properties, '$.BlockedInputMessaging') as blocked_input_messaging,
+ JSON_EXTRACT(Properties, '$.BlockedOutputsMessaging') as blocked_outputs_messaging,
+ JSON_EXTRACT(Properties, '$.ContentPolicyConfig') as content_policy_config,
+ JSON_EXTRACT(Properties, '$.ContextualGroundingPolicyConfig') as contextual_grounding_policy_config,
JSON_EXTRACT(Properties, '$.CreatedAt') as created_at,
JSON_EXTRACT(Properties, '$.Description') as description,
- JSON_EXTRACT(Properties, '$.RoutingConfiguration') as routing_configuration,
+ JSON_EXTRACT(Properties, '$.FailureRecommendations') as failure_recommendations,
+ JSON_EXTRACT(Properties, '$.GuardrailArn') as guardrail_arn,
+ JSON_EXTRACT(Properties, '$.GuardrailId') as guardrail_id,
+ JSON_EXTRACT(Properties, '$.KmsKeyArn') as kms_key_arn,
+ JSON_EXTRACT(Properties, '$.Name') as name,
+ JSON_EXTRACT(Properties, '$.SensitiveInformationPolicyConfig') as sensitive_information_policy_config,
+ JSON_EXTRACT(Properties, '$.Status') as status,
+ JSON_EXTRACT(Properties, '$.StatusReasons') as status_reasons,
JSON_EXTRACT(Properties, '$.Tags') as tags,
- JSON_EXTRACT(Properties, '$.UpdatedAt') as updated_at
- FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::Bedrock::AgentAlias'
- AND data__Identifier = '|'
+ JSON_EXTRACT(Properties, '$.TopicPolicyConfig') as topic_policy_config,
+ JSON_EXTRACT(Properties, '$.UpdatedAt') as updated_at,
+ JSON_EXTRACT(Properties, '$.Version') as version,
+ JSON_EXTRACT(Properties, '$.WordPolicyConfig') as word_policy_config
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::Bedrock::Guardrail'
+ AND data__Identifier = ''
AND region = 'us-east-1'
fallback:
predicate: sqlDialect == "sqlite3"
ddl: |-
SELECT
detail.region,
- JSON_EXTRACT(detail.Properties, '$.AgentAliasArn') as agent_alias_arn,
- JSON_EXTRACT(detail.Properties, '$.AgentAliasHistoryEvents') as agent_alias_history_events,
- JSON_EXTRACT(detail.Properties, '$.AgentAliasId') as agent_alias_id,
- JSON_EXTRACT(detail.Properties, '$.AgentAliasName') as agent_alias_name,
- JSON_EXTRACT(detail.Properties, '$.AgentAliasStatus') as agent_alias_status,
- JSON_EXTRACT(detail.Properties, '$.AgentId') as agent_id,
+ JSON_EXTRACT(detail.Properties, '$.BlockedInputMessaging') as blocked_input_messaging,
+ JSON_EXTRACT(detail.Properties, '$.BlockedOutputsMessaging') as blocked_outputs_messaging,
+ JSON_EXTRACT(detail.Properties, '$.ContentPolicyConfig') as content_policy_config,
+ JSON_EXTRACT(detail.Properties, '$.ContextualGroundingPolicyConfig') as contextual_grounding_policy_config,
JSON_EXTRACT(detail.Properties, '$.CreatedAt') as created_at,
JSON_EXTRACT(detail.Properties, '$.Description') as description,
- JSON_EXTRACT(detail.Properties, '$.RoutingConfiguration') as routing_configuration,
+ JSON_EXTRACT(detail.Properties, '$.FailureRecommendations') as failure_recommendations,
+ JSON_EXTRACT(detail.Properties, '$.GuardrailArn') as guardrail_arn,
+ JSON_EXTRACT(detail.Properties, '$.GuardrailId') as guardrail_id,
+ JSON_EXTRACT(detail.Properties, '$.KmsKeyArn') as kms_key_arn,
+ JSON_EXTRACT(detail.Properties, '$.Name') as name,
+ JSON_EXTRACT(detail.Properties, '$.SensitiveInformationPolicyConfig') as sensitive_information_policy_config,
+ JSON_EXTRACT(detail.Properties, '$.Status') as status,
+ JSON_EXTRACT(detail.Properties, '$.StatusReasons') as status_reasons,
JSON_EXTRACT(detail.Properties, '$.Tags') as tags,
- JSON_EXTRACT(detail.Properties, '$.UpdatedAt') as updated_at
+ JSON_EXTRACT(detail.Properties, '$.TopicPolicyConfig') as topic_policy_config,
+ JSON_EXTRACT(detail.Properties, '$.UpdatedAt') as updated_at,
+ JSON_EXTRACT(detail.Properties, '$.Version') as version,
+ JSON_EXTRACT(detail.Properties, '$.WordPolicyConfig') as word_policy_config
FROM aws.cloud_control.resources listing
LEFT OUTER JOIN aws.cloud_control.resource detail
ON detail.data__Identifier = listing.Identifier
AND detail.region = listing.region
- WHERE listing.data__TypeName = 'AWS::Bedrock::AgentAlias'
- AND detail.data__TypeName = 'AWS::Bedrock::AgentAlias'
+ WHERE listing.data__TypeName = 'AWS::Bedrock::Guardrail'
+ AND detail.data__TypeName = 'AWS::Bedrock::Guardrail'
AND listing.region = 'us-east-1'
fallback:
predicate: sqlDialect == "postgres" && requiredParams == [ data__Identifier ]
@@ -3010,51 +7121,66 @@ components:
SELECT
region,
data__Identifier,
- json_extract_path_text(Properties, 'AgentAliasArn') as agent_alias_arn,
- json_extract_path_text(Properties, 'AgentAliasHistoryEvents') as agent_alias_history_events,
- json_extract_path_text(Properties, 'AgentAliasId') as agent_alias_id,
- json_extract_path_text(Properties, 'AgentAliasName') as agent_alias_name,
- json_extract_path_text(Properties, 'AgentAliasStatus') as agent_alias_status,
- json_extract_path_text(Properties, 'AgentId') as agent_id,
+ json_extract_path_text(Properties, 'BlockedInputMessaging') as blocked_input_messaging,
+ json_extract_path_text(Properties, 'BlockedOutputsMessaging') as blocked_outputs_messaging,
+ json_extract_path_text(Properties, 'ContentPolicyConfig') as content_policy_config,
+ json_extract_path_text(Properties, 'ContextualGroundingPolicyConfig') as contextual_grounding_policy_config,
json_extract_path_text(Properties, 'CreatedAt') as created_at,
json_extract_path_text(Properties, 'Description') as description,
- json_extract_path_text(Properties, 'RoutingConfiguration') as routing_configuration,
+ json_extract_path_text(Properties, 'FailureRecommendations') as failure_recommendations,
+ json_extract_path_text(Properties, 'GuardrailArn') as guardrail_arn,
+ json_extract_path_text(Properties, 'GuardrailId') as guardrail_id,
+ json_extract_path_text(Properties, 'KmsKeyArn') as kms_key_arn,
+ json_extract_path_text(Properties, 'Name') as name,
+ json_extract_path_text(Properties, 'SensitiveInformationPolicyConfig') as sensitive_information_policy_config,
+ json_extract_path_text(Properties, 'Status') as status,
+ json_extract_path_text(Properties, 'StatusReasons') as status_reasons,
json_extract_path_text(Properties, 'Tags') as tags,
- json_extract_path_text(Properties, 'UpdatedAt') as updated_at
- FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::Bedrock::AgentAlias'
- AND data__Identifier = '|'
+ json_extract_path_text(Properties, 'TopicPolicyConfig') as topic_policy_config,
+ json_extract_path_text(Properties, 'UpdatedAt') as updated_at,
+ json_extract_path_text(Properties, 'Version') as version,
+ json_extract_path_text(Properties, 'WordPolicyConfig') as word_policy_config
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::Bedrock::Guardrail'
+ AND data__Identifier = ''
AND region = 'us-east-1'
fallback:
predicate: sqlDialect == "postgres"
ddl: |-
SELECT
detail.region,
- json_extract_path_text(detail.Properties, 'AgentAliasArn') as agent_alias_arn,
- json_extract_path_text(detail.Properties, 'AgentAliasHistoryEvents') as agent_alias_history_events,
- json_extract_path_text(detail.Properties, 'AgentAliasId') as agent_alias_id,
- json_extract_path_text(detail.Properties, 'AgentAliasName') as agent_alias_name,
- json_extract_path_text(detail.Properties, 'AgentAliasStatus') as agent_alias_status,
- json_extract_path_text(detail.Properties, 'AgentId') as agent_id,
+ json_extract_path_text(detail.Properties, 'BlockedInputMessaging') as blocked_input_messaging,
+ json_extract_path_text(detail.Properties, 'BlockedOutputsMessaging') as blocked_outputs_messaging,
+ json_extract_path_text(detail.Properties, 'ContentPolicyConfig') as content_policy_config,
+ json_extract_path_text(detail.Properties, 'ContextualGroundingPolicyConfig') as contextual_grounding_policy_config,
json_extract_path_text(detail.Properties, 'CreatedAt') as created_at,
json_extract_path_text(detail.Properties, 'Description') as description,
- json_extract_path_text(detail.Properties, 'RoutingConfiguration') as routing_configuration,
+ json_extract_path_text(detail.Properties, 'FailureRecommendations') as failure_recommendations,
+ json_extract_path_text(detail.Properties, 'GuardrailArn') as guardrail_arn,
+ json_extract_path_text(detail.Properties, 'GuardrailId') as guardrail_id,
+ json_extract_path_text(detail.Properties, 'KmsKeyArn') as kms_key_arn,
+ json_extract_path_text(detail.Properties, 'Name') as name,
+ json_extract_path_text(detail.Properties, 'SensitiveInformationPolicyConfig') as sensitive_information_policy_config,
+ json_extract_path_text(detail.Properties, 'Status') as status,
+ json_extract_path_text(detail.Properties, 'StatusReasons') as status_reasons,
json_extract_path_text(detail.Properties, 'Tags') as tags,
- json_extract_path_text(detail.Properties, 'UpdatedAt') as updated_at
+ json_extract_path_text(detail.Properties, 'TopicPolicyConfig') as topic_policy_config,
+ json_extract_path_text(detail.Properties, 'UpdatedAt') as updated_at,
+ json_extract_path_text(detail.Properties, 'Version') as version,
+ json_extract_path_text(detail.Properties, 'WordPolicyConfig') as word_policy_config
FROM aws.cloud_control.resources listing
LEFT OUTER JOIN aws.cloud_control.resource detail
ON detail.data__Identifier = listing.Identifier
AND detail.region = listing.region
- WHERE listing.data__TypeName = 'AWS::Bedrock::AgentAlias'
- AND detail.data__TypeName = 'AWS::Bedrock::AgentAlias'
+ WHERE listing.data__TypeName = 'AWS::Bedrock::Guardrail'
+ AND detail.data__TypeName = 'AWS::Bedrock::Guardrail'
AND listing.region = 'us-east-1'
- agent_aliases_list_only:
- name: agent_aliases_list_only
- id: aws.bedrock.agent_aliases_list_only
- x-cfn-schema-name: AgentAlias
- x-cfn-type-name: AWS::Bedrock::AgentAlias
+ guardrails_list_only:
+ name: guardrails_list_only
+ id: aws.bedrock.guardrails_list_only
+ x-cfn-schema-name: Guardrail
+ x-cfn-type-name: AWS::Bedrock::Guardrail
x-identifiers:
- - AgentId
- - AgentAliasId
+ - GuardrailArn
x-type: cloud_control_view
methods: {}
sqlVerbs:
@@ -3068,24 +7194,22 @@ components:
ddl: |-
SELECT
region,
- JSON_EXTRACT(Properties, '$.AgentId') as agent_id,
- JSON_EXTRACT(Properties, '$.AgentAliasId') as agent_alias_id
- FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::Bedrock::AgentAlias'
+ JSON_EXTRACT(Properties, '$.GuardrailArn') as guardrail_arn
+ FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::Bedrock::Guardrail'
AND region = 'us-east-1'
fallback:
predicate: sqlDialect == "postgres"
ddl: |-
SELECT
region,
- json_extract_path_text(Properties, 'AgentId') as agent_id,
- json_extract_path_text(Properties, 'AgentAliasId') as agent_alias_id
- FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::Bedrock::AgentAlias'
+ json_extract_path_text(Properties, 'GuardrailArn') as guardrail_arn
+ FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::Bedrock::Guardrail'
AND region = 'us-east-1'
- agent_alias_tags:
- name: agent_alias_tags
- id: aws.bedrock.agent_alias_tags
- x-cfn-schema-name: AgentAlias
- x-cfn-type-name: AWS::Bedrock::AgentAlias
+ guardrail_tags:
+ name: guardrail_tags
+ id: aws.bedrock.guardrail_tags
+ x-cfn-schema-name: Guardrail
+ x-cfn-type-name: AWS::Bedrock::Guardrail
x-type: cloud_control_view
methods: {}
sqlVerbs:
@@ -3101,23 +7225,31 @@ components:
detail.region,
JSON_EXTRACT(json_each.value, '$.Key') as tag_key,
JSON_EXTRACT(json_each.value, '$.Value') as tag_value,
- JSON_EXTRACT(detail.Properties, '$.AgentAliasArn') as agent_alias_arn,
- JSON_EXTRACT(detail.Properties, '$.AgentAliasHistoryEvents') as agent_alias_history_events,
- JSON_EXTRACT(detail.Properties, '$.AgentAliasId') as agent_alias_id,
- JSON_EXTRACT(detail.Properties, '$.AgentAliasName') as agent_alias_name,
- JSON_EXTRACT(detail.Properties, '$.AgentAliasStatus') as agent_alias_status,
- JSON_EXTRACT(detail.Properties, '$.AgentId') as agent_id,
+ JSON_EXTRACT(detail.Properties, '$.BlockedInputMessaging') as blocked_input_messaging,
+ JSON_EXTRACT(detail.Properties, '$.BlockedOutputsMessaging') as blocked_outputs_messaging,
+ JSON_EXTRACT(detail.Properties, '$.ContentPolicyConfig') as content_policy_config,
+ JSON_EXTRACT(detail.Properties, '$.ContextualGroundingPolicyConfig') as contextual_grounding_policy_config,
JSON_EXTRACT(detail.Properties, '$.CreatedAt') as created_at,
JSON_EXTRACT(detail.Properties, '$.Description') as description,
- JSON_EXTRACT(detail.Properties, '$.RoutingConfiguration') as routing_configuration,
- JSON_EXTRACT(detail.Properties, '$.UpdatedAt') as updated_at
+ JSON_EXTRACT(detail.Properties, '$.FailureRecommendations') as failure_recommendations,
+ JSON_EXTRACT(detail.Properties, '$.GuardrailArn') as guardrail_arn,
+ JSON_EXTRACT(detail.Properties, '$.GuardrailId') as guardrail_id,
+ JSON_EXTRACT(detail.Properties, '$.KmsKeyArn') as kms_key_arn,
+ JSON_EXTRACT(detail.Properties, '$.Name') as name,
+ JSON_EXTRACT(detail.Properties, '$.SensitiveInformationPolicyConfig') as sensitive_information_policy_config,
+ JSON_EXTRACT(detail.Properties, '$.Status') as status,
+ JSON_EXTRACT(detail.Properties, '$.StatusReasons') as status_reasons,
+ JSON_EXTRACT(detail.Properties, '$.TopicPolicyConfig') as topic_policy_config,
+ JSON_EXTRACT(detail.Properties, '$.UpdatedAt') as updated_at,
+ JSON_EXTRACT(detail.Properties, '$.Version') as version,
+ JSON_EXTRACT(detail.Properties, '$.WordPolicyConfig') as word_policy_config
FROM aws.cloud_control.resources listing
LEFT OUTER JOIN aws.cloud_control.resource detail
ON detail.data__Identifier = listing.Identifier
AND detail.region = listing.region
,json_each(JSON_EXTRACT(detail.Properties, '$.Tags'))
- WHERE listing.data__TypeName = 'AWS::Bedrock::AgentAlias'
- AND detail.data__TypeName = 'AWS::Bedrock::AgentAlias'
+ WHERE listing.data__TypeName = 'AWS::Bedrock::Guardrail'
+ AND detail.data__TypeName = 'AWS::Bedrock::Guardrail'
AND listing.region = 'us-east-1'
fallback:
predicate: sqlDialect == "postgres"
@@ -3126,32 +7258,112 @@ components:
detail.region,
json_extract_path_text(json_each.value, 'Key') as tag_key,
json_extract_path_text(json_each.value, 'Value') as tag_value,
- json_extract_path_text(detail.Properties, 'AgentAliasArn') as agent_alias_arn,
- json_extract_path_text(detail.Properties, 'AgentAliasHistoryEvents') as agent_alias_history_events,
- json_extract_path_text(detail.Properties, 'AgentAliasId') as agent_alias_id,
- json_extract_path_text(detail.Properties, 'AgentAliasName') as agent_alias_name,
- json_extract_path_text(detail.Properties, 'AgentAliasStatus') as agent_alias_status,
- json_extract_path_text(detail.Properties, 'AgentId') as agent_id,
+ json_extract_path_text(detail.Properties, 'BlockedInputMessaging') as blocked_input_messaging,
+ json_extract_path_text(detail.Properties, 'BlockedOutputsMessaging') as blocked_outputs_messaging,
+ json_extract_path_text(detail.Properties, 'ContentPolicyConfig') as content_policy_config,
+ json_extract_path_text(detail.Properties, 'ContextualGroundingPolicyConfig') as contextual_grounding_policy_config,
json_extract_path_text(detail.Properties, 'CreatedAt') as created_at,
json_extract_path_text(detail.Properties, 'Description') as description,
- json_extract_path_text(detail.Properties, 'RoutingConfiguration') as routing_configuration,
- json_extract_path_text(detail.Properties, 'UpdatedAt') as updated_at
+ json_extract_path_text(detail.Properties, 'FailureRecommendations') as failure_recommendations,
+ json_extract_path_text(detail.Properties, 'GuardrailArn') as guardrail_arn,
+ json_extract_path_text(detail.Properties, 'GuardrailId') as guardrail_id,
+ json_extract_path_text(detail.Properties, 'KmsKeyArn') as kms_key_arn,
+ json_extract_path_text(detail.Properties, 'Name') as name,
+ json_extract_path_text(detail.Properties, 'SensitiveInformationPolicyConfig') as sensitive_information_policy_config,
+ json_extract_path_text(detail.Properties, 'Status') as status,
+ json_extract_path_text(detail.Properties, 'StatusReasons') as status_reasons,
+ json_extract_path_text(detail.Properties, 'TopicPolicyConfig') as topic_policy_config,
+ json_extract_path_text(detail.Properties, 'UpdatedAt') as updated_at,
+ json_extract_path_text(detail.Properties, 'Version') as version,
+ json_extract_path_text(detail.Properties, 'WordPolicyConfig') as word_policy_config
FROM aws.cloud_control.resources listing
LEFT OUTER JOIN aws.cloud_control.resource detail
ON detail.data__Identifier = listing.Identifier
AND detail.region = listing.region
,json_array_elements_text(json_extract_path_text(detail.Properties, 'Tags'))
- WHERE listing.data__TypeName = 'AWS::Bedrock::AgentAlias'
- AND detail.data__TypeName = 'AWS::Bedrock::AgentAlias'
+ WHERE listing.data__TypeName = 'AWS::Bedrock::Guardrail'
+ AND detail.data__TypeName = 'AWS::Bedrock::Guardrail'
AND listing.region = 'us-east-1'
- data_sources:
- name: data_sources
- id: aws.bedrock.data_sources
- x-cfn-schema-name: DataSource
- x-cfn-type-name: AWS::Bedrock::DataSource
+ guardrail_versions:
+ name: guardrail_versions
+ id: aws.bedrock.guardrail_versions
+ x-cfn-schema-name: GuardrailVersion
+ x-cfn-type-name: AWS::Bedrock::GuardrailVersion
+ x-identifiers:
+ - GuardrailId
+ - Version
+ x-type: cloud_control
+ methods:
+ create_resource:
+ config:
+ requestBodyTranslate:
+ algorithm: naive_DesiredState
+ operation:
+ $ref: '#/paths/~1?Action=CreateResource&Version=2021-09-30&__GuardrailVersion&__detailTransformed=true/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::Bedrock::GuardrailVersion"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ delete_resource:
+ operation:
+ $ref: '#/paths/~1?Action=DeleteResource&Version=2021-09-30/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::Bedrock::GuardrailVersion"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ sqlVerbs:
+ insert:
+ - $ref: '#/components/x-stackQL-resources/guardrail_versions/methods/create_resource'
+ delete:
+ - $ref: '#/components/x-stackQL-resources/guardrail_versions/methods/delete_resource'
+ update: []
+ config:
+ views:
+ select:
+ predicate: sqlDialect == "sqlite3" && requiredParams == [ data__Identifier ]
+ ddl: |-
+ SELECT
+ region,
+ data__Identifier,
+ JSON_EXTRACT(Properties, '$.Description') as description,
+ JSON_EXTRACT(Properties, '$.GuardrailArn') as guardrail_arn,
+ JSON_EXTRACT(Properties, '$.GuardrailId') as guardrail_id,
+ JSON_EXTRACT(Properties, '$.GuardrailIdentifier') as guardrail_identifier,
+ JSON_EXTRACT(Properties, '$.Version') as version
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::Bedrock::GuardrailVersion'
+ AND data__Identifier = '|'
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres" && requiredParams == [ data__Identifier ]
+ ddl: |-
+ SELECT
+ region,
+ data__Identifier,
+ json_extract_path_text(Properties, 'Description') as description,
+ json_extract_path_text(Properties, 'GuardrailArn') as guardrail_arn,
+ json_extract_path_text(Properties, 'GuardrailId') as guardrail_id,
+ json_extract_path_text(Properties, 'GuardrailIdentifier') as guardrail_identifier,
+ json_extract_path_text(Properties, 'Version') as version
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::Bedrock::GuardrailVersion'
+ AND data__Identifier = '|'
+ AND region = 'us-east-1'
+ knowledge_bases:
+ name: knowledge_bases
+ id: aws.bedrock.knowledge_bases
+ x-cfn-schema-name: KnowledgeBase
+ x-cfn-type-name: AWS::Bedrock::KnowledgeBase
x-identifiers:
- KnowledgeBaseId
- - DataSourceId
x-type: cloud_control
methods:
create_resource:
@@ -3159,12 +7371,12 @@ components:
requestBodyTranslate:
algorithm: naive_DesiredState
operation:
- $ref: '#/paths/~1?Action=CreateResource&Version=2021-09-30&__DataSource&__detailTransformed=true/post'
+ $ref: '#/paths/~1?Action=CreateResource&Version=2021-09-30&__KnowledgeBase&__detailTransformed=true/post'
request:
mediaType: application/x-amz-json-1.0
base: |-
{
- "TypeName": "AWS::Bedrock::DataSource"
+ "TypeName": "AWS::Bedrock::KnowledgeBase"
}
response:
mediaType: application/json
@@ -3176,7 +7388,7 @@ components:
mediaType: application/x-amz-json-1.0
base: |-
{
- "TypeName": "AWS::Bedrock::DataSource"
+ "TypeName": "AWS::Bedrock::KnowledgeBase"
}
response:
mediaType: application/json
@@ -3188,18 +7400,18 @@ components:
mediaType: application/x-amz-json-1.0
base: |-
{
- "TypeName": "AWS::Bedrock::DataSource"
+ "TypeName": "AWS::Bedrock::KnowledgeBase"
}
response:
mediaType: application/json
openAPIDocKey: '200'
sqlVerbs:
insert:
- - $ref: '#/components/x-stackQL-resources/data_sources/methods/create_resource'
+ - $ref: '#/components/x-stackQL-resources/knowledge_bases/methods/create_resource'
delete:
- - $ref: '#/components/x-stackQL-resources/data_sources/methods/delete_resource'
+ - $ref: '#/components/x-stackQL-resources/knowledge_bases/methods/delete_resource'
update:
- - $ref: '#/components/x-stackQL-resources/data_sources/methods/update_resource'
+ - $ref: '#/components/x-stackQL-resources/knowledge_bases/methods/update_resource'
config:
views:
select:
@@ -3208,44 +7420,44 @@ components:
SELECT
region,
data__Identifier,
- JSON_EXTRACT(Properties, '$.DataSourceConfiguration') as data_source_configuration,
- JSON_EXTRACT(Properties, '$.DataSourceId') as data_source_id,
JSON_EXTRACT(Properties, '$.Description') as description,
+ JSON_EXTRACT(Properties, '$.KnowledgeBaseConfiguration') as knowledge_base_configuration,
JSON_EXTRACT(Properties, '$.KnowledgeBaseId') as knowledge_base_id,
- JSON_EXTRACT(Properties, '$.DataSourceStatus') as data_source_status,
+ JSON_EXTRACT(Properties, '$.KnowledgeBaseArn') as knowledge_base_arn,
JSON_EXTRACT(Properties, '$.Name') as name,
- JSON_EXTRACT(Properties, '$.ServerSideEncryptionConfiguration') as server_side_encryption_configuration,
- JSON_EXTRACT(Properties, '$.VectorIngestionConfiguration') as vector_ingestion_configuration,
- JSON_EXTRACT(Properties, '$.DataDeletionPolicy') as data_deletion_policy,
+ JSON_EXTRACT(Properties, '$.Status') as status,
+ JSON_EXTRACT(Properties, '$.RoleArn') as role_arn,
JSON_EXTRACT(Properties, '$.CreatedAt') as created_at,
+ JSON_EXTRACT(Properties, '$.FailureReasons') as failure_reasons,
JSON_EXTRACT(Properties, '$.UpdatedAt') as updated_at,
- JSON_EXTRACT(Properties, '$.FailureReasons') as failure_reasons
- FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::Bedrock::DataSource'
- AND data__Identifier = '|'
+ JSON_EXTRACT(Properties, '$.StorageConfiguration') as storage_configuration,
+ JSON_EXTRACT(Properties, '$.Tags') as tags
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::Bedrock::KnowledgeBase'
+ AND data__Identifier = ''
AND region = 'us-east-1'
fallback:
predicate: sqlDialect == "sqlite3"
ddl: |-
SELECT
detail.region,
- JSON_EXTRACT(detail.Properties, '$.DataSourceConfiguration') as data_source_configuration,
- JSON_EXTRACT(detail.Properties, '$.DataSourceId') as data_source_id,
JSON_EXTRACT(detail.Properties, '$.Description') as description,
+ JSON_EXTRACT(detail.Properties, '$.KnowledgeBaseConfiguration') as knowledge_base_configuration,
JSON_EXTRACT(detail.Properties, '$.KnowledgeBaseId') as knowledge_base_id,
- JSON_EXTRACT(detail.Properties, '$.DataSourceStatus') as data_source_status,
+ JSON_EXTRACT(detail.Properties, '$.KnowledgeBaseArn') as knowledge_base_arn,
JSON_EXTRACT(detail.Properties, '$.Name') as name,
- JSON_EXTRACT(detail.Properties, '$.ServerSideEncryptionConfiguration') as server_side_encryption_configuration,
- JSON_EXTRACT(detail.Properties, '$.VectorIngestionConfiguration') as vector_ingestion_configuration,
- JSON_EXTRACT(detail.Properties, '$.DataDeletionPolicy') as data_deletion_policy,
+ JSON_EXTRACT(detail.Properties, '$.Status') as status,
+ JSON_EXTRACT(detail.Properties, '$.RoleArn') as role_arn,
JSON_EXTRACT(detail.Properties, '$.CreatedAt') as created_at,
+ JSON_EXTRACT(detail.Properties, '$.FailureReasons') as failure_reasons,
JSON_EXTRACT(detail.Properties, '$.UpdatedAt') as updated_at,
- JSON_EXTRACT(detail.Properties, '$.FailureReasons') as failure_reasons
+ JSON_EXTRACT(detail.Properties, '$.StorageConfiguration') as storage_configuration,
+ JSON_EXTRACT(detail.Properties, '$.Tags') as tags
FROM aws.cloud_control.resources listing
LEFT OUTER JOIN aws.cloud_control.resource detail
ON detail.data__Identifier = listing.Identifier
AND detail.region = listing.region
- WHERE listing.data__TypeName = 'AWS::Bedrock::DataSource'
- AND detail.data__TypeName = 'AWS::Bedrock::DataSource'
+ WHERE listing.data__TypeName = 'AWS::Bedrock::KnowledgeBase'
+ AND detail.data__TypeName = 'AWS::Bedrock::KnowledgeBase'
AND listing.region = 'us-east-1'
fallback:
predicate: sqlDialect == "postgres" && requiredParams == [ data__Identifier ]
@@ -3253,53 +7465,52 @@ components:
SELECT
region,
data__Identifier,
- json_extract_path_text(Properties, 'DataSourceConfiguration') as data_source_configuration,
- json_extract_path_text(Properties, 'DataSourceId') as data_source_id,
json_extract_path_text(Properties, 'Description') as description,
+ json_extract_path_text(Properties, 'KnowledgeBaseConfiguration') as knowledge_base_configuration,
json_extract_path_text(Properties, 'KnowledgeBaseId') as knowledge_base_id,
- json_extract_path_text(Properties, 'DataSourceStatus') as data_source_status,
+ json_extract_path_text(Properties, 'KnowledgeBaseArn') as knowledge_base_arn,
json_extract_path_text(Properties, 'Name') as name,
- json_extract_path_text(Properties, 'ServerSideEncryptionConfiguration') as server_side_encryption_configuration,
- json_extract_path_text(Properties, 'VectorIngestionConfiguration') as vector_ingestion_configuration,
- json_extract_path_text(Properties, 'DataDeletionPolicy') as data_deletion_policy,
+ json_extract_path_text(Properties, 'Status') as status,
+ json_extract_path_text(Properties, 'RoleArn') as role_arn,
json_extract_path_text(Properties, 'CreatedAt') as created_at,
+ json_extract_path_text(Properties, 'FailureReasons') as failure_reasons,
json_extract_path_text(Properties, 'UpdatedAt') as updated_at,
- json_extract_path_text(Properties, 'FailureReasons') as failure_reasons
- FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::Bedrock::DataSource'
- AND data__Identifier = '|'
+ json_extract_path_text(Properties, 'StorageConfiguration') as storage_configuration,
+ json_extract_path_text(Properties, 'Tags') as tags
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::Bedrock::KnowledgeBase'
+ AND data__Identifier = ''
AND region = 'us-east-1'
fallback:
predicate: sqlDialect == "postgres"
ddl: |-
SELECT
detail.region,
- json_extract_path_text(detail.Properties, 'DataSourceConfiguration') as data_source_configuration,
- json_extract_path_text(detail.Properties, 'DataSourceId') as data_source_id,
json_extract_path_text(detail.Properties, 'Description') as description,
+ json_extract_path_text(detail.Properties, 'KnowledgeBaseConfiguration') as knowledge_base_configuration,
json_extract_path_text(detail.Properties, 'KnowledgeBaseId') as knowledge_base_id,
- json_extract_path_text(detail.Properties, 'DataSourceStatus') as data_source_status,
+ json_extract_path_text(detail.Properties, 'KnowledgeBaseArn') as knowledge_base_arn,
json_extract_path_text(detail.Properties, 'Name') as name,
- json_extract_path_text(detail.Properties, 'ServerSideEncryptionConfiguration') as server_side_encryption_configuration,
- json_extract_path_text(detail.Properties, 'VectorIngestionConfiguration') as vector_ingestion_configuration,
- json_extract_path_text(detail.Properties, 'DataDeletionPolicy') as data_deletion_policy,
+ json_extract_path_text(detail.Properties, 'Status') as status,
+ json_extract_path_text(detail.Properties, 'RoleArn') as role_arn,
json_extract_path_text(detail.Properties, 'CreatedAt') as created_at,
+ json_extract_path_text(detail.Properties, 'FailureReasons') as failure_reasons,
json_extract_path_text(detail.Properties, 'UpdatedAt') as updated_at,
- json_extract_path_text(detail.Properties, 'FailureReasons') as failure_reasons
+ json_extract_path_text(detail.Properties, 'StorageConfiguration') as storage_configuration,
+ json_extract_path_text(detail.Properties, 'Tags') as tags
FROM aws.cloud_control.resources listing
LEFT OUTER JOIN aws.cloud_control.resource detail
ON detail.data__Identifier = listing.Identifier
AND detail.region = listing.region
- WHERE listing.data__TypeName = 'AWS::Bedrock::DataSource'
- AND detail.data__TypeName = 'AWS::Bedrock::DataSource'
+ WHERE listing.data__TypeName = 'AWS::Bedrock::KnowledgeBase'
+ AND detail.data__TypeName = 'AWS::Bedrock::KnowledgeBase'
AND listing.region = 'us-east-1'
- data_sources_list_only:
- name: data_sources_list_only
- id: aws.bedrock.data_sources_list_only
- x-cfn-schema-name: DataSource
- x-cfn-type-name: AWS::Bedrock::DataSource
+ knowledge_bases_list_only:
+ name: knowledge_bases_list_only
+ id: aws.bedrock.knowledge_bases_list_only
+ x-cfn-schema-name: KnowledgeBase
+ x-cfn-type-name: AWS::Bedrock::KnowledgeBase
x-identifiers:
- KnowledgeBaseId
- - DataSourceId
x-type: cloud_control_view
methods: {}
sqlVerbs:
@@ -3313,26 +7524,89 @@ components:
ddl: |-
SELECT
region,
- JSON_EXTRACT(Properties, '$.KnowledgeBaseId') as knowledge_base_id,
- JSON_EXTRACT(Properties, '$.DataSourceId') as data_source_id
- FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::Bedrock::DataSource'
+ JSON_EXTRACT(Properties, '$.KnowledgeBaseId') as knowledge_base_id
+ FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::Bedrock::KnowledgeBase'
AND region = 'us-east-1'
fallback:
predicate: sqlDialect == "postgres"
ddl: |-
SELECT
region,
- json_extract_path_text(Properties, 'KnowledgeBaseId') as knowledge_base_id,
- json_extract_path_text(Properties, 'DataSourceId') as data_source_id
- FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::Bedrock::DataSource'
+ json_extract_path_text(Properties, 'KnowledgeBaseId') as knowledge_base_id
+ FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::Bedrock::KnowledgeBase'
AND region = 'us-east-1'
- guardrails:
- name: guardrails
- id: aws.bedrock.guardrails
- x-cfn-schema-name: Guardrail
- x-cfn-type-name: AWS::Bedrock::Guardrail
+ knowledge_base_tags:
+ name: knowledge_base_tags
+ id: aws.bedrock.knowledge_base_tags
+ x-cfn-schema-name: KnowledgeBase
+ x-cfn-type-name: AWS::Bedrock::KnowledgeBase
+ x-type: cloud_control_view
+ methods: {}
+ sqlVerbs:
+ insert: []
+ delete: []
+ update: []
+ config:
+ views:
+ select:
+ predicate: sqlDialect == "sqlite3"
+ ddl: |-
+ SELECT
+ detail.region,
+ JSON_EXTRACT(json_each.value, '$.Key') as tag_key,
+ JSON_EXTRACT(json_each.value, '$.Value') as tag_value,
+ JSON_EXTRACT(detail.Properties, '$.Description') as description,
+ JSON_EXTRACT(detail.Properties, '$.KnowledgeBaseConfiguration') as knowledge_base_configuration,
+ JSON_EXTRACT(detail.Properties, '$.KnowledgeBaseId') as knowledge_base_id,
+ JSON_EXTRACT(detail.Properties, '$.KnowledgeBaseArn') as knowledge_base_arn,
+ JSON_EXTRACT(detail.Properties, '$.Name') as name,
+ JSON_EXTRACT(detail.Properties, '$.Status') as status,
+ JSON_EXTRACT(detail.Properties, '$.RoleArn') as role_arn,
+ JSON_EXTRACT(detail.Properties, '$.CreatedAt') as created_at,
+ JSON_EXTRACT(detail.Properties, '$.FailureReasons') as failure_reasons,
+ JSON_EXTRACT(detail.Properties, '$.UpdatedAt') as updated_at,
+ JSON_EXTRACT(detail.Properties, '$.StorageConfiguration') as storage_configuration
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ ,json_each(JSON_EXTRACT(detail.Properties, '$.Tags'))
+ WHERE listing.data__TypeName = 'AWS::Bedrock::KnowledgeBase'
+ AND detail.data__TypeName = 'AWS::Bedrock::KnowledgeBase'
+ AND listing.region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres"
+ ddl: |-
+ SELECT
+ detail.region,
+ json_extract_path_text(json_each.value, 'Key') as tag_key,
+ json_extract_path_text(json_each.value, 'Value') as tag_value,
+ json_extract_path_text(detail.Properties, 'Description') as description,
+ json_extract_path_text(detail.Properties, 'KnowledgeBaseConfiguration') as knowledge_base_configuration,
+ json_extract_path_text(detail.Properties, 'KnowledgeBaseId') as knowledge_base_id,
+ json_extract_path_text(detail.Properties, 'KnowledgeBaseArn') as knowledge_base_arn,
+ json_extract_path_text(detail.Properties, 'Name') as name,
+ json_extract_path_text(detail.Properties, 'Status') as status,
+ json_extract_path_text(detail.Properties, 'RoleArn') as role_arn,
+ json_extract_path_text(detail.Properties, 'CreatedAt') as created_at,
+ json_extract_path_text(detail.Properties, 'FailureReasons') as failure_reasons,
+ json_extract_path_text(detail.Properties, 'UpdatedAt') as updated_at,
+ json_extract_path_text(detail.Properties, 'StorageConfiguration') as storage_configuration
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ ,json_array_elements_text(json_extract_path_text(detail.Properties, 'Tags'))
+ WHERE listing.data__TypeName = 'AWS::Bedrock::KnowledgeBase'
+ AND detail.data__TypeName = 'AWS::Bedrock::KnowledgeBase'
+ AND listing.region = 'us-east-1'
+ prompts:
+ name: prompts
+ id: aws.bedrock.prompts
+ x-cfn-schema-name: Prompt
+ x-cfn-type-name: AWS::Bedrock::Prompt
x-identifiers:
- - GuardrailArn
+ - Arn
x-type: cloud_control
methods:
create_resource:
@@ -3340,12 +7614,12 @@ components:
requestBodyTranslate:
algorithm: naive_DesiredState
operation:
- $ref: '#/paths/~1?Action=CreateResource&Version=2021-09-30&__Guardrail&__detailTransformed=true/post'
+ $ref: '#/paths/~1?Action=CreateResource&Version=2021-09-30&__Prompt&__detailTransformed=true/post'
request:
mediaType: application/x-amz-json-1.0
base: |-
{
- "TypeName": "AWS::Bedrock::Guardrail"
+ "TypeName": "AWS::Bedrock::Prompt"
}
response:
mediaType: application/json
@@ -3357,7 +7631,7 @@ components:
mediaType: application/x-amz-json-1.0
base: |-
{
- "TypeName": "AWS::Bedrock::Guardrail"
+ "TypeName": "AWS::Bedrock::Prompt"
}
response:
mediaType: application/json
@@ -3369,18 +7643,18 @@ components:
mediaType: application/x-amz-json-1.0
base: |-
{
- "TypeName": "AWS::Bedrock::Guardrail"
+ "TypeName": "AWS::Bedrock::Prompt"
}
response:
mediaType: application/json
openAPIDocKey: '200'
sqlVerbs:
insert:
- - $ref: '#/components/x-stackQL-resources/guardrails/methods/create_resource'
+ - $ref: '#/components/x-stackQL-resources/prompts/methods/create_resource'
delete:
- - $ref: '#/components/x-stackQL-resources/guardrails/methods/delete_resource'
+ - $ref: '#/components/x-stackQL-resources/prompts/methods/delete_resource'
update:
- - $ref: '#/components/x-stackQL-resources/guardrails/methods/update_resource'
+ - $ref: '#/components/x-stackQL-resources/prompts/methods/update_resource'
config:
views:
select:
@@ -3389,56 +7663,42 @@ components:
SELECT
region,
data__Identifier,
- JSON_EXTRACT(Properties, '$.BlockedInputMessaging') as blocked_input_messaging,
- JSON_EXTRACT(Properties, '$.BlockedOutputsMessaging') as blocked_outputs_messaging,
- JSON_EXTRACT(Properties, '$.ContentPolicyConfig') as content_policy_config,
+ JSON_EXTRACT(Properties, '$.Arn') as arn,
JSON_EXTRACT(Properties, '$.CreatedAt') as created_at,
+ JSON_EXTRACT(Properties, '$.DefaultVariant') as default_variant,
JSON_EXTRACT(Properties, '$.Description') as description,
- JSON_EXTRACT(Properties, '$.FailureRecommendations') as failure_recommendations,
- JSON_EXTRACT(Properties, '$.GuardrailArn') as guardrail_arn,
- JSON_EXTRACT(Properties, '$.GuardrailId') as guardrail_id,
- JSON_EXTRACT(Properties, '$.KmsKeyArn') as kms_key_arn,
+ JSON_EXTRACT(Properties, '$.Id') as id,
JSON_EXTRACT(Properties, '$.Name') as name,
- JSON_EXTRACT(Properties, '$.SensitiveInformationPolicyConfig') as sensitive_information_policy_config,
- JSON_EXTRACT(Properties, '$.Status') as status,
- JSON_EXTRACT(Properties, '$.StatusReasons') as status_reasons,
- JSON_EXTRACT(Properties, '$.Tags') as tags,
- JSON_EXTRACT(Properties, '$.TopicPolicyConfig') as topic_policy_config,
JSON_EXTRACT(Properties, '$.UpdatedAt') as updated_at,
- JSON_EXTRACT(Properties, '$.Version') as version,
- JSON_EXTRACT(Properties, '$.WordPolicyConfig') as word_policy_config
- FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::Bedrock::Guardrail'
- AND data__Identifier = ''
+ JSON_EXTRACT(Properties, '$.Variants') as variants,
+ JSON_EXTRACT(Properties, '$.Tags') as tags,
+ JSON_EXTRACT(Properties, '$.CustomerEncryptionKeyArn') as customer_encryption_key_arn,
+ JSON_EXTRACT(Properties, '$.Version') as version
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::Bedrock::Prompt'
+ AND data__Identifier = ''
AND region = 'us-east-1'
fallback:
predicate: sqlDialect == "sqlite3"
ddl: |-
SELECT
detail.region,
- JSON_EXTRACT(detail.Properties, '$.BlockedInputMessaging') as blocked_input_messaging,
- JSON_EXTRACT(detail.Properties, '$.BlockedOutputsMessaging') as blocked_outputs_messaging,
- JSON_EXTRACT(detail.Properties, '$.ContentPolicyConfig') as content_policy_config,
+ JSON_EXTRACT(detail.Properties, '$.Arn') as arn,
JSON_EXTRACT(detail.Properties, '$.CreatedAt') as created_at,
+ JSON_EXTRACT(detail.Properties, '$.DefaultVariant') as default_variant,
JSON_EXTRACT(detail.Properties, '$.Description') as description,
- JSON_EXTRACT(detail.Properties, '$.FailureRecommendations') as failure_recommendations,
- JSON_EXTRACT(detail.Properties, '$.GuardrailArn') as guardrail_arn,
- JSON_EXTRACT(detail.Properties, '$.GuardrailId') as guardrail_id,
- JSON_EXTRACT(detail.Properties, '$.KmsKeyArn') as kms_key_arn,
+ JSON_EXTRACT(detail.Properties, '$.Id') as id,
JSON_EXTRACT(detail.Properties, '$.Name') as name,
- JSON_EXTRACT(detail.Properties, '$.SensitiveInformationPolicyConfig') as sensitive_information_policy_config,
- JSON_EXTRACT(detail.Properties, '$.Status') as status,
- JSON_EXTRACT(detail.Properties, '$.StatusReasons') as status_reasons,
- JSON_EXTRACT(detail.Properties, '$.Tags') as tags,
- JSON_EXTRACT(detail.Properties, '$.TopicPolicyConfig') as topic_policy_config,
JSON_EXTRACT(detail.Properties, '$.UpdatedAt') as updated_at,
- JSON_EXTRACT(detail.Properties, '$.Version') as version,
- JSON_EXTRACT(detail.Properties, '$.WordPolicyConfig') as word_policy_config
+ JSON_EXTRACT(detail.Properties, '$.Variants') as variants,
+ JSON_EXTRACT(detail.Properties, '$.Tags') as tags,
+ JSON_EXTRACT(detail.Properties, '$.CustomerEncryptionKeyArn') as customer_encryption_key_arn,
+ JSON_EXTRACT(detail.Properties, '$.Version') as version
FROM aws.cloud_control.resources listing
LEFT OUTER JOIN aws.cloud_control.resource detail
ON detail.data__Identifier = listing.Identifier
AND detail.region = listing.region
- WHERE listing.data__TypeName = 'AWS::Bedrock::Guardrail'
- AND detail.data__TypeName = 'AWS::Bedrock::Guardrail'
+ WHERE listing.data__TypeName = 'AWS::Bedrock::Prompt'
+ AND detail.data__TypeName = 'AWS::Bedrock::Prompt'
AND listing.region = 'us-east-1'
fallback:
predicate: sqlDialect == "postgres" && requiredParams == [ data__Identifier ]
@@ -3446,64 +7706,50 @@ components:
SELECT
region,
data__Identifier,
- json_extract_path_text(Properties, 'BlockedInputMessaging') as blocked_input_messaging,
- json_extract_path_text(Properties, 'BlockedOutputsMessaging') as blocked_outputs_messaging,
- json_extract_path_text(Properties, 'ContentPolicyConfig') as content_policy_config,
+ json_extract_path_text(Properties, 'Arn') as arn,
json_extract_path_text(Properties, 'CreatedAt') as created_at,
+ json_extract_path_text(Properties, 'DefaultVariant') as default_variant,
json_extract_path_text(Properties, 'Description') as description,
- json_extract_path_text(Properties, 'FailureRecommendations') as failure_recommendations,
- json_extract_path_text(Properties, 'GuardrailArn') as guardrail_arn,
- json_extract_path_text(Properties, 'GuardrailId') as guardrail_id,
- json_extract_path_text(Properties, 'KmsKeyArn') as kms_key_arn,
+ json_extract_path_text(Properties, 'Id') as id,
json_extract_path_text(Properties, 'Name') as name,
- json_extract_path_text(Properties, 'SensitiveInformationPolicyConfig') as sensitive_information_policy_config,
- json_extract_path_text(Properties, 'Status') as status,
- json_extract_path_text(Properties, 'StatusReasons') as status_reasons,
- json_extract_path_text(Properties, 'Tags') as tags,
- json_extract_path_text(Properties, 'TopicPolicyConfig') as topic_policy_config,
json_extract_path_text(Properties, 'UpdatedAt') as updated_at,
- json_extract_path_text(Properties, 'Version') as version,
- json_extract_path_text(Properties, 'WordPolicyConfig') as word_policy_config
- FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::Bedrock::Guardrail'
- AND data__Identifier = ''
+ json_extract_path_text(Properties, 'Variants') as variants,
+ json_extract_path_text(Properties, 'Tags') as tags,
+ json_extract_path_text(Properties, 'CustomerEncryptionKeyArn') as customer_encryption_key_arn,
+ json_extract_path_text(Properties, 'Version') as version
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::Bedrock::Prompt'
+ AND data__Identifier = ''
AND region = 'us-east-1'
fallback:
predicate: sqlDialect == "postgres"
ddl: |-
SELECT
detail.region,
- json_extract_path_text(detail.Properties, 'BlockedInputMessaging') as blocked_input_messaging,
- json_extract_path_text(detail.Properties, 'BlockedOutputsMessaging') as blocked_outputs_messaging,
- json_extract_path_text(detail.Properties, 'ContentPolicyConfig') as content_policy_config,
+ json_extract_path_text(detail.Properties, 'Arn') as arn,
json_extract_path_text(detail.Properties, 'CreatedAt') as created_at,
+ json_extract_path_text(detail.Properties, 'DefaultVariant') as default_variant,
json_extract_path_text(detail.Properties, 'Description') as description,
- json_extract_path_text(detail.Properties, 'FailureRecommendations') as failure_recommendations,
- json_extract_path_text(detail.Properties, 'GuardrailArn') as guardrail_arn,
- json_extract_path_text(detail.Properties, 'GuardrailId') as guardrail_id,
- json_extract_path_text(detail.Properties, 'KmsKeyArn') as kms_key_arn,
+ json_extract_path_text(detail.Properties, 'Id') as id,
json_extract_path_text(detail.Properties, 'Name') as name,
- json_extract_path_text(detail.Properties, 'SensitiveInformationPolicyConfig') as sensitive_information_policy_config,
- json_extract_path_text(detail.Properties, 'Status') as status,
- json_extract_path_text(detail.Properties, 'StatusReasons') as status_reasons,
- json_extract_path_text(detail.Properties, 'Tags') as tags,
- json_extract_path_text(detail.Properties, 'TopicPolicyConfig') as topic_policy_config,
json_extract_path_text(detail.Properties, 'UpdatedAt') as updated_at,
- json_extract_path_text(detail.Properties, 'Version') as version,
- json_extract_path_text(detail.Properties, 'WordPolicyConfig') as word_policy_config
+ json_extract_path_text(detail.Properties, 'Variants') as variants,
+ json_extract_path_text(detail.Properties, 'Tags') as tags,
+ json_extract_path_text(detail.Properties, 'CustomerEncryptionKeyArn') as customer_encryption_key_arn,
+ json_extract_path_text(detail.Properties, 'Version') as version
FROM aws.cloud_control.resources listing
LEFT OUTER JOIN aws.cloud_control.resource detail
ON detail.data__Identifier = listing.Identifier
AND detail.region = listing.region
- WHERE listing.data__TypeName = 'AWS::Bedrock::Guardrail'
- AND detail.data__TypeName = 'AWS::Bedrock::Guardrail'
+ WHERE listing.data__TypeName = 'AWS::Bedrock::Prompt'
+ AND detail.data__TypeName = 'AWS::Bedrock::Prompt'
AND listing.region = 'us-east-1'
- guardrails_list_only:
- name: guardrails_list_only
- id: aws.bedrock.guardrails_list_only
- x-cfn-schema-name: Guardrail
- x-cfn-type-name: AWS::Bedrock::Guardrail
+ prompts_list_only:
+ name: prompts_list_only
+ id: aws.bedrock.prompts_list_only
+ x-cfn-schema-name: Prompt
+ x-cfn-type-name: AWS::Bedrock::Prompt
x-identifiers:
- - GuardrailArn
+ - Arn
x-type: cloud_control_view
methods: {}
sqlVerbs:
@@ -3517,22 +7763,22 @@ components:
ddl: |-
SELECT
region,
- JSON_EXTRACT(Properties, '$.GuardrailArn') as guardrail_arn
- FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::Bedrock::Guardrail'
+ JSON_EXTRACT(Properties, '$.Arn') as arn
+ FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::Bedrock::Prompt'
AND region = 'us-east-1'
fallback:
predicate: sqlDialect == "postgres"
ddl: |-
SELECT
region,
- json_extract_path_text(Properties, 'GuardrailArn') as guardrail_arn
- FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::Bedrock::Guardrail'
+ json_extract_path_text(Properties, 'Arn') as arn
+ FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::Bedrock::Prompt'
AND region = 'us-east-1'
- guardrail_tags:
- name: guardrail_tags
- id: aws.bedrock.guardrail_tags
- x-cfn-schema-name: Guardrail
- x-cfn-type-name: AWS::Bedrock::Guardrail
+ prompt_tags:
+ name: prompt_tags
+ id: aws.bedrock.prompt_tags
+ x-cfn-schema-name: Prompt
+ x-cfn-type-name: AWS::Bedrock::Prompt
x-type: cloud_control_view
methods: {}
sqlVerbs:
@@ -3548,30 +7794,23 @@ components:
detail.region,
JSON_EXTRACT(json_each.value, '$.Key') as tag_key,
JSON_EXTRACT(json_each.value, '$.Value') as tag_value,
- JSON_EXTRACT(detail.Properties, '$.BlockedInputMessaging') as blocked_input_messaging,
- JSON_EXTRACT(detail.Properties, '$.BlockedOutputsMessaging') as blocked_outputs_messaging,
- JSON_EXTRACT(detail.Properties, '$.ContentPolicyConfig') as content_policy_config,
+ JSON_EXTRACT(detail.Properties, '$.Arn') as arn,
JSON_EXTRACT(detail.Properties, '$.CreatedAt') as created_at,
+ JSON_EXTRACT(detail.Properties, '$.DefaultVariant') as default_variant,
JSON_EXTRACT(detail.Properties, '$.Description') as description,
- JSON_EXTRACT(detail.Properties, '$.FailureRecommendations') as failure_recommendations,
- JSON_EXTRACT(detail.Properties, '$.GuardrailArn') as guardrail_arn,
- JSON_EXTRACT(detail.Properties, '$.GuardrailId') as guardrail_id,
- JSON_EXTRACT(detail.Properties, '$.KmsKeyArn') as kms_key_arn,
+ JSON_EXTRACT(detail.Properties, '$.Id') as id,
JSON_EXTRACT(detail.Properties, '$.Name') as name,
- JSON_EXTRACT(detail.Properties, '$.SensitiveInformationPolicyConfig') as sensitive_information_policy_config,
- JSON_EXTRACT(detail.Properties, '$.Status') as status,
- JSON_EXTRACT(detail.Properties, '$.StatusReasons') as status_reasons,
- JSON_EXTRACT(detail.Properties, '$.TopicPolicyConfig') as topic_policy_config,
JSON_EXTRACT(detail.Properties, '$.UpdatedAt') as updated_at,
- JSON_EXTRACT(detail.Properties, '$.Version') as version,
- JSON_EXTRACT(detail.Properties, '$.WordPolicyConfig') as word_policy_config
+ JSON_EXTRACT(detail.Properties, '$.Variants') as variants,
+ JSON_EXTRACT(detail.Properties, '$.CustomerEncryptionKeyArn') as customer_encryption_key_arn,
+ JSON_EXTRACT(detail.Properties, '$.Version') as version
FROM aws.cloud_control.resources listing
LEFT OUTER JOIN aws.cloud_control.resource detail
ON detail.data__Identifier = listing.Identifier
AND detail.region = listing.region
,json_each(JSON_EXTRACT(detail.Properties, '$.Tags'))
- WHERE listing.data__TypeName = 'AWS::Bedrock::Guardrail'
- AND detail.data__TypeName = 'AWS::Bedrock::Guardrail'
+ WHERE listing.data__TypeName = 'AWS::Bedrock::Prompt'
+ AND detail.data__TypeName = 'AWS::Bedrock::Prompt'
AND listing.region = 'us-east-1'
fallback:
predicate: sqlDialect == "postgres"
@@ -3580,39 +7819,31 @@ components:
detail.region,
json_extract_path_text(json_each.value, 'Key') as tag_key,
json_extract_path_text(json_each.value, 'Value') as tag_value,
- json_extract_path_text(detail.Properties, 'BlockedInputMessaging') as blocked_input_messaging,
- json_extract_path_text(detail.Properties, 'BlockedOutputsMessaging') as blocked_outputs_messaging,
- json_extract_path_text(detail.Properties, 'ContentPolicyConfig') as content_policy_config,
+ json_extract_path_text(detail.Properties, 'Arn') as arn,
json_extract_path_text(detail.Properties, 'CreatedAt') as created_at,
+ json_extract_path_text(detail.Properties, 'DefaultVariant') as default_variant,
json_extract_path_text(detail.Properties, 'Description') as description,
- json_extract_path_text(detail.Properties, 'FailureRecommendations') as failure_recommendations,
- json_extract_path_text(detail.Properties, 'GuardrailArn') as guardrail_arn,
- json_extract_path_text(detail.Properties, 'GuardrailId') as guardrail_id,
- json_extract_path_text(detail.Properties, 'KmsKeyArn') as kms_key_arn,
+ json_extract_path_text(detail.Properties, 'Id') as id,
json_extract_path_text(detail.Properties, 'Name') as name,
- json_extract_path_text(detail.Properties, 'SensitiveInformationPolicyConfig') as sensitive_information_policy_config,
- json_extract_path_text(detail.Properties, 'Status') as status,
- json_extract_path_text(detail.Properties, 'StatusReasons') as status_reasons,
- json_extract_path_text(detail.Properties, 'TopicPolicyConfig') as topic_policy_config,
json_extract_path_text(detail.Properties, 'UpdatedAt') as updated_at,
- json_extract_path_text(detail.Properties, 'Version') as version,
- json_extract_path_text(detail.Properties, 'WordPolicyConfig') as word_policy_config
+ json_extract_path_text(detail.Properties, 'Variants') as variants,
+ json_extract_path_text(detail.Properties, 'CustomerEncryptionKeyArn') as customer_encryption_key_arn,
+ json_extract_path_text(detail.Properties, 'Version') as version
FROM aws.cloud_control.resources listing
LEFT OUTER JOIN aws.cloud_control.resource detail
ON detail.data__Identifier = listing.Identifier
AND detail.region = listing.region
,json_array_elements_text(json_extract_path_text(detail.Properties, 'Tags'))
- WHERE listing.data__TypeName = 'AWS::Bedrock::Guardrail'
- AND detail.data__TypeName = 'AWS::Bedrock::Guardrail'
+ WHERE listing.data__TypeName = 'AWS::Bedrock::Prompt'
+ AND detail.data__TypeName = 'AWS::Bedrock::Prompt'
AND listing.region = 'us-east-1'
- guardrail_versions:
- name: guardrail_versions
- id: aws.bedrock.guardrail_versions
- x-cfn-schema-name: GuardrailVersion
- x-cfn-type-name: AWS::Bedrock::GuardrailVersion
+ prompt_versions:
+ name: prompt_versions
+ id: aws.bedrock.prompt_versions
+ x-cfn-schema-name: PromptVersion
+ x-cfn-type-name: AWS::Bedrock::PromptVersion
x-identifiers:
- - GuardrailId
- - Version
+ - Arn
x-type: cloud_control
methods:
create_resource:
@@ -3620,12 +7851,12 @@ components:
requestBodyTranslate:
algorithm: naive_DesiredState
operation:
- $ref: '#/paths/~1?Action=CreateResource&Version=2021-09-30&__GuardrailVersion&__detailTransformed=true/post'
+ $ref: '#/paths/~1?Action=CreateResource&Version=2021-09-30&__PromptVersion&__detailTransformed=true/post'
request:
mediaType: application/x-amz-json-1.0
base: |-
{
- "TypeName": "AWS::Bedrock::GuardrailVersion"
+ "TypeName": "AWS::Bedrock::PromptVersion"
}
response:
mediaType: application/json
@@ -3637,16 +7868,16 @@ components:
mediaType: application/x-amz-json-1.0
base: |-
{
- "TypeName": "AWS::Bedrock::GuardrailVersion"
+ "TypeName": "AWS::Bedrock::PromptVersion"
}
response:
mediaType: application/json
openAPIDocKey: '200'
sqlVerbs:
insert:
- - $ref: '#/components/x-stackQL-resources/guardrail_versions/methods/create_resource'
+ - $ref: '#/components/x-stackQL-resources/prompt_versions/methods/create_resource'
delete:
- - $ref: '#/components/x-stackQL-resources/guardrail_versions/methods/delete_resource'
+ - $ref: '#/components/x-stackQL-resources/prompt_versions/methods/delete_resource'
update: []
config:
views:
@@ -3656,129 +7887,44 @@ components:
SELECT
region,
data__Identifier,
- JSON_EXTRACT(Properties, '$.Description') as description,
- JSON_EXTRACT(Properties, '$.GuardrailArn') as guardrail_arn,
- JSON_EXTRACT(Properties, '$.GuardrailId') as guardrail_id,
- JSON_EXTRACT(Properties, '$.GuardrailIdentifier') as guardrail_identifier,
- JSON_EXTRACT(Properties, '$.Version') as version
- FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::Bedrock::GuardrailVersion'
- AND data__Identifier = '|'
- AND region = 'us-east-1'
- fallback:
- predicate: sqlDialect == "postgres" && requiredParams == [ data__Identifier ]
- ddl: |-
- SELECT
- region,
- data__Identifier,
- json_extract_path_text(Properties, 'Description') as description,
- json_extract_path_text(Properties, 'GuardrailArn') as guardrail_arn,
- json_extract_path_text(Properties, 'GuardrailId') as guardrail_id,
- json_extract_path_text(Properties, 'GuardrailIdentifier') as guardrail_identifier,
- json_extract_path_text(Properties, 'Version') as version
- FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::Bedrock::GuardrailVersion'
- AND data__Identifier = '|'
- AND region = 'us-east-1'
- knowledge_bases:
- name: knowledge_bases
- id: aws.bedrock.knowledge_bases
- x-cfn-schema-name: KnowledgeBase
- x-cfn-type-name: AWS::Bedrock::KnowledgeBase
- x-identifiers:
- - KnowledgeBaseId
- x-type: cloud_control
- methods:
- create_resource:
- config:
- requestBodyTranslate:
- algorithm: naive_DesiredState
- operation:
- $ref: '#/paths/~1?Action=CreateResource&Version=2021-09-30&__KnowledgeBase&__detailTransformed=true/post'
- request:
- mediaType: application/x-amz-json-1.0
- base: |-
- {
- "TypeName": "AWS::Bedrock::KnowledgeBase"
- }
- response:
- mediaType: application/json
- openAPIDocKey: '200'
- update_resource:
- operation:
- $ref: '#/paths/~1?Action=UpdateResource&Version=2021-09-30/post'
- request:
- mediaType: application/x-amz-json-1.0
- base: |-
- {
- "TypeName": "AWS::Bedrock::KnowledgeBase"
- }
- response:
- mediaType: application/json
- openAPIDocKey: '200'
- delete_resource:
- operation:
- $ref: '#/paths/~1?Action=DeleteResource&Version=2021-09-30/post'
- request:
- mediaType: application/x-amz-json-1.0
- base: |-
- {
- "TypeName": "AWS::Bedrock::KnowledgeBase"
- }
- response:
- mediaType: application/json
- openAPIDocKey: '200'
- sqlVerbs:
- insert:
- - $ref: '#/components/x-stackQL-resources/knowledge_bases/methods/create_resource'
- delete:
- - $ref: '#/components/x-stackQL-resources/knowledge_bases/methods/delete_resource'
- update:
- - $ref: '#/components/x-stackQL-resources/knowledge_bases/methods/update_resource'
- config:
- views:
- select:
- predicate: sqlDialect == "sqlite3" && requiredParams == [ data__Identifier ]
- ddl: |-
- SELECT
- region,
- data__Identifier,
- JSON_EXTRACT(Properties, '$.Description') as description,
- JSON_EXTRACT(Properties, '$.KnowledgeBaseConfiguration') as knowledge_base_configuration,
- JSON_EXTRACT(Properties, '$.KnowledgeBaseId') as knowledge_base_id,
- JSON_EXTRACT(Properties, '$.KnowledgeBaseArn') as knowledge_base_arn,
- JSON_EXTRACT(Properties, '$.Name') as name,
- JSON_EXTRACT(Properties, '$.Status') as status,
- JSON_EXTRACT(Properties, '$.RoleArn') as role_arn,
+ JSON_EXTRACT(Properties, '$.PromptArn') as prompt_arn,
+ JSON_EXTRACT(Properties, '$.Arn') as arn,
JSON_EXTRACT(Properties, '$.CreatedAt') as created_at,
- JSON_EXTRACT(Properties, '$.FailureReasons') as failure_reasons,
+ JSON_EXTRACT(Properties, '$.PromptId') as prompt_id,
JSON_EXTRACT(Properties, '$.UpdatedAt') as updated_at,
- JSON_EXTRACT(Properties, '$.StorageConfiguration') as storage_configuration,
+ JSON_EXTRACT(Properties, '$.Version') as version,
+ JSON_EXTRACT(Properties, '$.Variants') as variants,
+ JSON_EXTRACT(Properties, '$.DefaultVariant') as default_variant,
+ JSON_EXTRACT(Properties, '$.Description') as description,
+ JSON_EXTRACT(Properties, '$.CustomerEncryptionKeyArn') as customer_encryption_key_arn,
+ JSON_EXTRACT(Properties, '$.Name') as name,
JSON_EXTRACT(Properties, '$.Tags') as tags
- FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::Bedrock::KnowledgeBase'
- AND data__Identifier = ''
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::Bedrock::PromptVersion'
+ AND data__Identifier = ''
AND region = 'us-east-1'
fallback:
predicate: sqlDialect == "sqlite3"
ddl: |-
SELECT
detail.region,
- JSON_EXTRACT(detail.Properties, '$.Description') as description,
- JSON_EXTRACT(detail.Properties, '$.KnowledgeBaseConfiguration') as knowledge_base_configuration,
- JSON_EXTRACT(detail.Properties, '$.KnowledgeBaseId') as knowledge_base_id,
- JSON_EXTRACT(detail.Properties, '$.KnowledgeBaseArn') as knowledge_base_arn,
- JSON_EXTRACT(detail.Properties, '$.Name') as name,
- JSON_EXTRACT(detail.Properties, '$.Status') as status,
- JSON_EXTRACT(detail.Properties, '$.RoleArn') as role_arn,
+ JSON_EXTRACT(detail.Properties, '$.PromptArn') as prompt_arn,
+ JSON_EXTRACT(detail.Properties, '$.Arn') as arn,
JSON_EXTRACT(detail.Properties, '$.CreatedAt') as created_at,
- JSON_EXTRACT(detail.Properties, '$.FailureReasons') as failure_reasons,
+ JSON_EXTRACT(detail.Properties, '$.PromptId') as prompt_id,
JSON_EXTRACT(detail.Properties, '$.UpdatedAt') as updated_at,
- JSON_EXTRACT(detail.Properties, '$.StorageConfiguration') as storage_configuration,
+ JSON_EXTRACT(detail.Properties, '$.Version') as version,
+ JSON_EXTRACT(detail.Properties, '$.Variants') as variants,
+ JSON_EXTRACT(detail.Properties, '$.DefaultVariant') as default_variant,
+ JSON_EXTRACT(detail.Properties, '$.Description') as description,
+ JSON_EXTRACT(detail.Properties, '$.CustomerEncryptionKeyArn') as customer_encryption_key_arn,
+ JSON_EXTRACT(detail.Properties, '$.Name') as name,
JSON_EXTRACT(detail.Properties, '$.Tags') as tags
FROM aws.cloud_control.resources listing
LEFT OUTER JOIN aws.cloud_control.resource detail
ON detail.data__Identifier = listing.Identifier
AND detail.region = listing.region
- WHERE listing.data__TypeName = 'AWS::Bedrock::KnowledgeBase'
- AND detail.data__TypeName = 'AWS::Bedrock::KnowledgeBase'
+ WHERE listing.data__TypeName = 'AWS::Bedrock::PromptVersion'
+ AND detail.data__TypeName = 'AWS::Bedrock::PromptVersion'
AND listing.region = 'us-east-1'
fallback:
predicate: sqlDialect == "postgres" && requiredParams == [ data__Identifier ]
@@ -3786,52 +7932,52 @@ components:
SELECT
region,
data__Identifier,
- json_extract_path_text(Properties, 'Description') as description,
- json_extract_path_text(Properties, 'KnowledgeBaseConfiguration') as knowledge_base_configuration,
- json_extract_path_text(Properties, 'KnowledgeBaseId') as knowledge_base_id,
- json_extract_path_text(Properties, 'KnowledgeBaseArn') as knowledge_base_arn,
- json_extract_path_text(Properties, 'Name') as name,
- json_extract_path_text(Properties, 'Status') as status,
- json_extract_path_text(Properties, 'RoleArn') as role_arn,
+ json_extract_path_text(Properties, 'PromptArn') as prompt_arn,
+ json_extract_path_text(Properties, 'Arn') as arn,
json_extract_path_text(Properties, 'CreatedAt') as created_at,
- json_extract_path_text(Properties, 'FailureReasons') as failure_reasons,
+ json_extract_path_text(Properties, 'PromptId') as prompt_id,
json_extract_path_text(Properties, 'UpdatedAt') as updated_at,
- json_extract_path_text(Properties, 'StorageConfiguration') as storage_configuration,
+ json_extract_path_text(Properties, 'Version') as version,
+ json_extract_path_text(Properties, 'Variants') as variants,
+ json_extract_path_text(Properties, 'DefaultVariant') as default_variant,
+ json_extract_path_text(Properties, 'Description') as description,
+ json_extract_path_text(Properties, 'CustomerEncryptionKeyArn') as customer_encryption_key_arn,
+ json_extract_path_text(Properties, 'Name') as name,
json_extract_path_text(Properties, 'Tags') as tags
- FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::Bedrock::KnowledgeBase'
- AND data__Identifier = ''
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::Bedrock::PromptVersion'
+ AND data__Identifier = ''
AND region = 'us-east-1'
fallback:
predicate: sqlDialect == "postgres"
ddl: |-
SELECT
detail.region,
- json_extract_path_text(detail.Properties, 'Description') as description,
- json_extract_path_text(detail.Properties, 'KnowledgeBaseConfiguration') as knowledge_base_configuration,
- json_extract_path_text(detail.Properties, 'KnowledgeBaseId') as knowledge_base_id,
- json_extract_path_text(detail.Properties, 'KnowledgeBaseArn') as knowledge_base_arn,
- json_extract_path_text(detail.Properties, 'Name') as name,
- json_extract_path_text(detail.Properties, 'Status') as status,
- json_extract_path_text(detail.Properties, 'RoleArn') as role_arn,
+ json_extract_path_text(detail.Properties, 'PromptArn') as prompt_arn,
+ json_extract_path_text(detail.Properties, 'Arn') as arn,
json_extract_path_text(detail.Properties, 'CreatedAt') as created_at,
- json_extract_path_text(detail.Properties, 'FailureReasons') as failure_reasons,
+ json_extract_path_text(detail.Properties, 'PromptId') as prompt_id,
json_extract_path_text(detail.Properties, 'UpdatedAt') as updated_at,
- json_extract_path_text(detail.Properties, 'StorageConfiguration') as storage_configuration,
+ json_extract_path_text(detail.Properties, 'Version') as version,
+ json_extract_path_text(detail.Properties, 'Variants') as variants,
+ json_extract_path_text(detail.Properties, 'DefaultVariant') as default_variant,
+ json_extract_path_text(detail.Properties, 'Description') as description,
+ json_extract_path_text(detail.Properties, 'CustomerEncryptionKeyArn') as customer_encryption_key_arn,
+ json_extract_path_text(detail.Properties, 'Name') as name,
json_extract_path_text(detail.Properties, 'Tags') as tags
FROM aws.cloud_control.resources listing
LEFT OUTER JOIN aws.cloud_control.resource detail
ON detail.data__Identifier = listing.Identifier
AND detail.region = listing.region
- WHERE listing.data__TypeName = 'AWS::Bedrock::KnowledgeBase'
- AND detail.data__TypeName = 'AWS::Bedrock::KnowledgeBase'
+ WHERE listing.data__TypeName = 'AWS::Bedrock::PromptVersion'
+ AND detail.data__TypeName = 'AWS::Bedrock::PromptVersion'
AND listing.region = 'us-east-1'
- knowledge_bases_list_only:
- name: knowledge_bases_list_only
- id: aws.bedrock.knowledge_bases_list_only
- x-cfn-schema-name: KnowledgeBase
- x-cfn-type-name: AWS::Bedrock::KnowledgeBase
+ prompt_versions_list_only:
+ name: prompt_versions_list_only
+ id: aws.bedrock.prompt_versions_list_only
+ x-cfn-schema-name: PromptVersion
+ x-cfn-type-name: AWS::Bedrock::PromptVersion
x-identifiers:
- - KnowledgeBaseId
+ - Arn
x-type: cloud_control_view
methods: {}
sqlVerbs:
@@ -3845,22 +7991,22 @@ components:
ddl: |-
SELECT
region,
- JSON_EXTRACT(Properties, '$.KnowledgeBaseId') as knowledge_base_id
- FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::Bedrock::KnowledgeBase'
+ JSON_EXTRACT(Properties, '$.Arn') as arn
+ FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::Bedrock::PromptVersion'
AND region = 'us-east-1'
fallback:
predicate: sqlDialect == "postgres"
ddl: |-
SELECT
region,
- json_extract_path_text(Properties, 'KnowledgeBaseId') as knowledge_base_id
- FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::Bedrock::KnowledgeBase'
+ json_extract_path_text(Properties, 'Arn') as arn
+ FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::Bedrock::PromptVersion'
AND region = 'us-east-1'
- knowledge_base_tags:
- name: knowledge_base_tags
- id: aws.bedrock.knowledge_base_tags
- x-cfn-schema-name: KnowledgeBase
- x-cfn-type-name: AWS::Bedrock::KnowledgeBase
+ prompt_version_tags:
+ name: prompt_version_tags
+ id: aws.bedrock.prompt_version_tags
+ x-cfn-schema-name: PromptVersion
+ x-cfn-type-name: AWS::Bedrock::PromptVersion
x-type: cloud_control_view
methods: {}
sqlVerbs:
@@ -3875,25 +8021,25 @@ components:
SELECT
detail.region,
JSON_EXTRACT(json_each.value, '$.Key') as tag_key,
- JSON_EXTRACT(json_each.value, '$.Value') as tag_value,
- JSON_EXTRACT(detail.Properties, '$.Description') as description,
- JSON_EXTRACT(detail.Properties, '$.KnowledgeBaseConfiguration') as knowledge_base_configuration,
- JSON_EXTRACT(detail.Properties, '$.KnowledgeBaseId') as knowledge_base_id,
- JSON_EXTRACT(detail.Properties, '$.KnowledgeBaseArn') as knowledge_base_arn,
- JSON_EXTRACT(detail.Properties, '$.Name') as name,
- JSON_EXTRACT(detail.Properties, '$.Status') as status,
- JSON_EXTRACT(detail.Properties, '$.RoleArn') as role_arn,
+ JSON_EXTRACT(json_each.value, '$.Value') as tag_value,
+ JSON_EXTRACT(detail.Properties, '$.PromptArn') as prompt_arn,
+ JSON_EXTRACT(detail.Properties, '$.Arn') as arn,
JSON_EXTRACT(detail.Properties, '$.CreatedAt') as created_at,
- JSON_EXTRACT(detail.Properties, '$.FailureReasons') as failure_reasons,
+ JSON_EXTRACT(detail.Properties, '$.PromptId') as prompt_id,
JSON_EXTRACT(detail.Properties, '$.UpdatedAt') as updated_at,
- JSON_EXTRACT(detail.Properties, '$.StorageConfiguration') as storage_configuration
+ JSON_EXTRACT(detail.Properties, '$.Version') as version,
+ JSON_EXTRACT(detail.Properties, '$.Variants') as variants,
+ JSON_EXTRACT(detail.Properties, '$.DefaultVariant') as default_variant,
+ JSON_EXTRACT(detail.Properties, '$.Description') as description,
+ JSON_EXTRACT(detail.Properties, '$.CustomerEncryptionKeyArn') as customer_encryption_key_arn,
+ JSON_EXTRACT(detail.Properties, '$.Name') as name
FROM aws.cloud_control.resources listing
LEFT OUTER JOIN aws.cloud_control.resource detail
ON detail.data__Identifier = listing.Identifier
AND detail.region = listing.region
,json_each(JSON_EXTRACT(detail.Properties, '$.Tags'))
- WHERE listing.data__TypeName = 'AWS::Bedrock::KnowledgeBase'
- AND detail.data__TypeName = 'AWS::Bedrock::KnowledgeBase'
+ WHERE listing.data__TypeName = 'AWS::Bedrock::PromptVersion'
+ AND detail.data__TypeName = 'AWS::Bedrock::PromptVersion'
AND listing.region = 'us-east-1'
fallback:
predicate: sqlDialect == "postgres"
@@ -3902,24 +8048,24 @@ components:
detail.region,
json_extract_path_text(json_each.value, 'Key') as tag_key,
json_extract_path_text(json_each.value, 'Value') as tag_value,
- json_extract_path_text(detail.Properties, 'Description') as description,
- json_extract_path_text(detail.Properties, 'KnowledgeBaseConfiguration') as knowledge_base_configuration,
- json_extract_path_text(detail.Properties, 'KnowledgeBaseId') as knowledge_base_id,
- json_extract_path_text(detail.Properties, 'KnowledgeBaseArn') as knowledge_base_arn,
- json_extract_path_text(detail.Properties, 'Name') as name,
- json_extract_path_text(detail.Properties, 'Status') as status,
- json_extract_path_text(detail.Properties, 'RoleArn') as role_arn,
+ json_extract_path_text(detail.Properties, 'PromptArn') as prompt_arn,
+ json_extract_path_text(detail.Properties, 'Arn') as arn,
json_extract_path_text(detail.Properties, 'CreatedAt') as created_at,
- json_extract_path_text(detail.Properties, 'FailureReasons') as failure_reasons,
+ json_extract_path_text(detail.Properties, 'PromptId') as prompt_id,
json_extract_path_text(detail.Properties, 'UpdatedAt') as updated_at,
- json_extract_path_text(detail.Properties, 'StorageConfiguration') as storage_configuration
+ json_extract_path_text(detail.Properties, 'Version') as version,
+ json_extract_path_text(detail.Properties, 'Variants') as variants,
+ json_extract_path_text(detail.Properties, 'DefaultVariant') as default_variant,
+ json_extract_path_text(detail.Properties, 'Description') as description,
+ json_extract_path_text(detail.Properties, 'CustomerEncryptionKeyArn') as customer_encryption_key_arn,
+ json_extract_path_text(detail.Properties, 'Name') as name
FROM aws.cloud_control.resources listing
LEFT OUTER JOIN aws.cloud_control.resource detail
ON detail.data__Identifier = listing.Identifier
AND detail.region = listing.region
,json_array_elements_text(json_extract_path_text(detail.Properties, 'Tags'))
- WHERE listing.data__TypeName = 'AWS::Bedrock::KnowledgeBase'
- AND detail.data__TypeName = 'AWS::Bedrock::KnowledgeBase'
+ WHERE listing.data__TypeName = 'AWS::Bedrock::PromptVersion'
+ AND detail.data__TypeName = 'AWS::Bedrock::PromptVersion'
AND listing.region = 'us-east-1'
paths:
/?Action=CreateResource&Version=2021-09-30:
@@ -4148,6 +8294,48 @@ paths:
schema:
$ref: '#/components/x-cloud-control-schemas/ProgressEvent'
description: Success
+ /?Action=CreateResource&Version=2021-09-30&__ApplicationInferenceProfile&__detailTransformed=true:
+ parameters:
+ - $ref: '#/components/parameters/X-Amz-Content-Sha256'
+ - $ref: '#/components/parameters/X-Amz-Date'
+ - $ref: '#/components/parameters/X-Amz-Algorithm'
+ - $ref: '#/components/parameters/X-Amz-Credential'
+ - $ref: '#/components/parameters/X-Amz-Security-Token'
+ - $ref: '#/components/parameters/X-Amz-Signature'
+ - $ref: '#/components/parameters/X-Amz-SignedHeaders'
+ post:
+ operationId: CreateApplicationInferenceProfile
+ parameters:
+ - description: Action Header
+ in: header
+ name: X-Amz-Target
+ required: false
+ schema:
+ default: CloudApiService.CreateResource
+ enum:
+ - CloudApiService.CreateResource
+ type: string
+ - in: header
+ name: Content-Type
+ required: false
+ schema:
+ default: application/x-amz-json-1.0
+ enum:
+ - application/x-amz-json-1.0
+ type: string
+ requestBody:
+ content:
+ application/x-amz-json-1.0:
+ schema:
+ $ref: '#/components/schemas/CreateApplicationInferenceProfileRequest'
+ required: true
+ responses:
+ '200':
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/x-cloud-control-schemas/ProgressEvent'
+ description: Success
/?Action=CreateResource&Version=2021-09-30&__DataSource&__detailTransformed=true:
parameters:
- $ref: '#/components/parameters/X-Amz-Content-Sha256'
@@ -4190,6 +8378,132 @@ paths:
schema:
$ref: '#/components/x-cloud-control-schemas/ProgressEvent'
description: Success
+ /?Action=CreateResource&Version=2021-09-30&__Flow&__detailTransformed=true:
+ parameters:
+ - $ref: '#/components/parameters/X-Amz-Content-Sha256'
+ - $ref: '#/components/parameters/X-Amz-Date'
+ - $ref: '#/components/parameters/X-Amz-Algorithm'
+ - $ref: '#/components/parameters/X-Amz-Credential'
+ - $ref: '#/components/parameters/X-Amz-Security-Token'
+ - $ref: '#/components/parameters/X-Amz-Signature'
+ - $ref: '#/components/parameters/X-Amz-SignedHeaders'
+ post:
+ operationId: CreateFlow
+ parameters:
+ - description: Action Header
+ in: header
+ name: X-Amz-Target
+ required: false
+ schema:
+ default: CloudApiService.CreateResource
+ enum:
+ - CloudApiService.CreateResource
+ type: string
+ - in: header
+ name: Content-Type
+ required: false
+ schema:
+ default: application/x-amz-json-1.0
+ enum:
+ - application/x-amz-json-1.0
+ type: string
+ requestBody:
+ content:
+ application/x-amz-json-1.0:
+ schema:
+ $ref: '#/components/schemas/CreateFlowRequest'
+ required: true
+ responses:
+ '200':
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/x-cloud-control-schemas/ProgressEvent'
+ description: Success
+ /?Action=CreateResource&Version=2021-09-30&__FlowAlias&__detailTransformed=true:
+ parameters:
+ - $ref: '#/components/parameters/X-Amz-Content-Sha256'
+ - $ref: '#/components/parameters/X-Amz-Date'
+ - $ref: '#/components/parameters/X-Amz-Algorithm'
+ - $ref: '#/components/parameters/X-Amz-Credential'
+ - $ref: '#/components/parameters/X-Amz-Security-Token'
+ - $ref: '#/components/parameters/X-Amz-Signature'
+ - $ref: '#/components/parameters/X-Amz-SignedHeaders'
+ post:
+ operationId: CreateFlowAlias
+ parameters:
+ - description: Action Header
+ in: header
+ name: X-Amz-Target
+ required: false
+ schema:
+ default: CloudApiService.CreateResource
+ enum:
+ - CloudApiService.CreateResource
+ type: string
+ - in: header
+ name: Content-Type
+ required: false
+ schema:
+ default: application/x-amz-json-1.0
+ enum:
+ - application/x-amz-json-1.0
+ type: string
+ requestBody:
+ content:
+ application/x-amz-json-1.0:
+ schema:
+ $ref: '#/components/schemas/CreateFlowAliasRequest'
+ required: true
+ responses:
+ '200':
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/x-cloud-control-schemas/ProgressEvent'
+ description: Success
+ /?Action=CreateResource&Version=2021-09-30&__FlowVersion&__detailTransformed=true:
+ parameters:
+ - $ref: '#/components/parameters/X-Amz-Content-Sha256'
+ - $ref: '#/components/parameters/X-Amz-Date'
+ - $ref: '#/components/parameters/X-Amz-Algorithm'
+ - $ref: '#/components/parameters/X-Amz-Credential'
+ - $ref: '#/components/parameters/X-Amz-Security-Token'
+ - $ref: '#/components/parameters/X-Amz-Signature'
+ - $ref: '#/components/parameters/X-Amz-SignedHeaders'
+ post:
+ operationId: CreateFlowVersion
+ parameters:
+ - description: Action Header
+ in: header
+ name: X-Amz-Target
+ required: false
+ schema:
+ default: CloudApiService.CreateResource
+ enum:
+ - CloudApiService.CreateResource
+ type: string
+ - in: header
+ name: Content-Type
+ required: false
+ schema:
+ default: application/x-amz-json-1.0
+ enum:
+ - application/x-amz-json-1.0
+ type: string
+ requestBody:
+ content:
+ application/x-amz-json-1.0:
+ schema:
+ $ref: '#/components/schemas/CreateFlowVersionRequest'
+ required: true
+ responses:
+ '200':
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/x-cloud-control-schemas/ProgressEvent'
+ description: Success
/?Action=CreateResource&Version=2021-09-30&__Guardrail&__detailTransformed=true:
parameters:
- $ref: '#/components/parameters/X-Amz-Content-Sha256'
@@ -4316,6 +8630,90 @@ paths:
schema:
$ref: '#/components/x-cloud-control-schemas/ProgressEvent'
description: Success
+ /?Action=CreateResource&Version=2021-09-30&__Prompt&__detailTransformed=true:
+ parameters:
+ - $ref: '#/components/parameters/X-Amz-Content-Sha256'
+ - $ref: '#/components/parameters/X-Amz-Date'
+ - $ref: '#/components/parameters/X-Amz-Algorithm'
+ - $ref: '#/components/parameters/X-Amz-Credential'
+ - $ref: '#/components/parameters/X-Amz-Security-Token'
+ - $ref: '#/components/parameters/X-Amz-Signature'
+ - $ref: '#/components/parameters/X-Amz-SignedHeaders'
+ post:
+ operationId: CreatePrompt
+ parameters:
+ - description: Action Header
+ in: header
+ name: X-Amz-Target
+ required: false
+ schema:
+ default: CloudApiService.CreateResource
+ enum:
+ - CloudApiService.CreateResource
+ type: string
+ - in: header
+ name: Content-Type
+ required: false
+ schema:
+ default: application/x-amz-json-1.0
+ enum:
+ - application/x-amz-json-1.0
+ type: string
+ requestBody:
+ content:
+ application/x-amz-json-1.0:
+ schema:
+ $ref: '#/components/schemas/CreatePromptRequest'
+ required: true
+ responses:
+ '200':
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/x-cloud-control-schemas/ProgressEvent'
+ description: Success
+ /?Action=CreateResource&Version=2021-09-30&__PromptVersion&__detailTransformed=true:
+ parameters:
+ - $ref: '#/components/parameters/X-Amz-Content-Sha256'
+ - $ref: '#/components/parameters/X-Amz-Date'
+ - $ref: '#/components/parameters/X-Amz-Algorithm'
+ - $ref: '#/components/parameters/X-Amz-Credential'
+ - $ref: '#/components/parameters/X-Amz-Security-Token'
+ - $ref: '#/components/parameters/X-Amz-Signature'
+ - $ref: '#/components/parameters/X-Amz-SignedHeaders'
+ post:
+ operationId: CreatePromptVersion
+ parameters:
+ - description: Action Header
+ in: header
+ name: X-Amz-Target
+ required: false
+ schema:
+ default: CloudApiService.CreateResource
+ enum:
+ - CloudApiService.CreateResource
+ type: string
+ - in: header
+ name: Content-Type
+ required: false
+ schema:
+ default: application/x-amz-json-1.0
+ enum:
+ - application/x-amz-json-1.0
+ type: string
+ requestBody:
+ content:
+ application/x-amz-json-1.0:
+ schema:
+ $ref: '#/components/schemas/CreatePromptVersionRequest'
+ required: true
+ responses:
+ '200':
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/x-cloud-control-schemas/ProgressEvent'
+ description: Success
x-stackQL-config:
requestTranslate:
algorithm: drop_double_underscore_params
diff --git a/providers/src/aws/v00.00.00000/services/cassandra.yaml b/providers/src/aws/v00.00.00000/services/cassandra.yaml
index a3d71c63..d526a42c 100644
--- a/providers/src/aws/v00.00.00000/services/cassandra.yaml
+++ b/providers/src/aws/v00.00.00000/services/cassandra.yaml
@@ -461,6 +461,9 @@ components:
maxItems: 50
ReplicationSpecification:
$ref: '#/components/schemas/ReplicationSpecification'
+ ClientSideTimestampsEnabled:
+ type: boolean
+ description: Indicates whether client-side timestamps are enabled (true) or disabled (false) for all tables in the keyspace. To add a Region to a single-Region keyspace with at least one table, the value must be set to true. After you enabled client-side timestamps for a table, you can’t disable it again.
required: []
x-stackql-resource-name: keyspace
description: Resource schema for AWS::Cassandra::Keyspace
@@ -468,9 +471,19 @@ components:
x-stackql-primary-identifier:
- KeyspaceName
x-create-only-properties:
- - ReplicationSpecification
- KeyspaceName
x-required-properties: []
+ x-tagging:
+ taggable: true
+ tagOnCreate: true
+ tagUpdatable: true
+ cloudFormationSystemTags: true
+ tagProperty: /properties/Tags
+ permissions:
+ - cassandra:TagResource
+ - cassandra:TagMultiRegionResource
+ - cassandra:UntagResource
+ - cassandra:UntagMultiRegionResource
x-required-permissions:
create:
- cassandra:Create
@@ -486,12 +499,23 @@ components:
update:
- cassandra:Alter
- cassandra:AlterMultiRegionResource
+ - cassandra:Modify
+ - cassandra:ModifyMultiRegionResource
- cassandra:Select
- cassandra:SelectMultiRegionResource
- cassandra:TagResource
- cassandra:TagMultiRegionResource
- cassandra:UntagResource
- cassandra:UntagMultiRegionResource
+ - application-autoscaling:RegisterScalableTarget
+ - application-autoscaling:DeregisterScalableTarget
+ - application-autoscaling:DescribeScalableTargets
+ - application-autoscaling:DescribeScalingPolicies
+ - application-autoscaling:PutScalingPolicy
+ - cloudwatch:DeleteAlarms
+ - cloudwatch:DescribeAlarms
+ - cloudwatch:PutMetricAlarm
+ - iam:CreateServiceLinkedRole
delete:
- cassandra:Drop
- cassandra:DropMultiRegionResource
@@ -728,6 +752,17 @@ components:
x-required-properties:
- KeyspaceName
- PartitionKeyColumns
+ x-tagging:
+ taggable: true
+ tagOnCreate: true
+ tagUpdatable: true
+ cloudFormationSystemTags: true
+ tagProperty: /properties/Tags
+ permissions:
+ - cassandra:TagResource
+ - cassandra:TagMultiRegionResource
+ - cassandra:UntagResource
+ - cassandra:UntagMultiRegionResource
x-required-permissions:
create:
- cassandra:Create
@@ -809,6 +844,93 @@ components:
- cloudwatch:DescribeAlarms
- cloudwatch:GetMetricData
- cloudwatch:PutMetricAlarm
+ Field:
+ type: object
+ properties:
+ FieldName:
+ type: string
+ FieldType:
+ type: string
+ required:
+ - FieldName
+ - FieldType
+ additionalProperties: false
+ Type:
+ type: object
+ properties:
+ KeyspaceName:
+ description: Name of the Keyspace which contains the User-Defined Type.
+ type: string
+ TypeName:
+ description: Name of the User-Defined Type.
+ type: string
+ Fields:
+ description: Field definitions of the User-Defined Type
+ type: array
+ uniqueItems: true
+ x-insertionOrder: false
+ items:
+ $ref: '#/components/schemas/Field'
+ DirectReferringTables:
+ description: List of Tables that directly reference the User-Defined Type in their columns.
+ type: array
+ uniqueItems: true
+ x-insertionOrder: false
+ items:
+ type: string
+ DirectParentTypes:
+ description: List of parent User-Defined Types that directly reference the User-Defined Type in their fields.
+ type: array
+ uniqueItems: true
+ x-insertionOrder: false
+ items:
+ type: string
+ MaxNestingDepth:
+ description: Maximum nesting depth of the User-Defined Type across the field types.
+ type: integer
+ LastModifiedTimestamp:
+ description: Timestamp of the last time the User-Defined Type's meta data was modified.
+ type: number
+ KeyspaceArn:
+ description: ARN of the Keyspace which contains the User-Defined Type.
+ type: string
+ required:
+ - KeyspaceName
+ - TypeName
+ - Fields
+ x-stackql-resource-name: type
+ description: Resource schema for AWS::Cassandra::Type
+ x-type-name: AWS::Cassandra::Type
+ x-stackql-primary-identifier:
+ - KeyspaceName
+ - TypeName
+ x-create-only-properties:
+ - KeyspaceName
+ - TypeName
+ - Fields
+ x-read-only-properties:
+ - DirectReferringTables
+ - DirectParentTypes
+ - MaxNestingDepth
+ - LastModifiedTimestamp
+ - KeyspaceArn
+ x-required-properties:
+ - KeyspaceName
+ - TypeName
+ - Fields
+ x-tagging:
+ taggable: false
+ x-required-permissions:
+ create:
+ - cassandra:Create
+ - cassandra:Select
+ read:
+ - cassandra:Select
+ delete:
+ - cassandra:Drop
+ - cassandra:Select
+ list:
+ - cassandra:Select
CreateKeyspaceRequest:
properties:
ClientToken:
@@ -835,6 +957,9 @@ components:
maxItems: 50
ReplicationSpecification:
$ref: '#/components/schemas/ReplicationSpecification'
+ ClientSideTimestampsEnabled:
+ type: boolean
+ description: Indicates whether client-side timestamps are enabled (true) or disabled (false) for all tables in the keyspace. To add a Region to a single-Region keyspace with at least one table, the value must be set to true. After you enabled client-side timestamps for a table, you can’t disable it again.
x-stackQL-stringOnly: true
x-title: CreateKeyspaceRequest
type: object
@@ -917,6 +1042,59 @@ components:
x-title: CreateTableRequest
type: object
required: []
+ CreateTypeRequest:
+ properties:
+ ClientToken:
+ type: string
+ RoleArn:
+ type: string
+ TypeName:
+ type: string
+ TypeVersionId:
+ type: string
+ DesiredState:
+ type: object
+ properties:
+ KeyspaceName:
+ description: Name of the Keyspace which contains the User-Defined Type.
+ type: string
+ TypeName:
+ description: Name of the User-Defined Type.
+ type: string
+ Fields:
+ description: Field definitions of the User-Defined Type
+ type: array
+ uniqueItems: true
+ x-insertionOrder: false
+ items:
+ $ref: '#/components/schemas/Field'
+ DirectReferringTables:
+ description: List of Tables that directly reference the User-Defined Type in their columns.
+ type: array
+ uniqueItems: true
+ x-insertionOrder: false
+ items:
+ type: string
+ DirectParentTypes:
+ description: List of parent User-Defined Types that directly reference the User-Defined Type in their fields.
+ type: array
+ uniqueItems: true
+ x-insertionOrder: false
+ items:
+ type: string
+ MaxNestingDepth:
+ description: Maximum nesting depth of the User-Defined Type across the field types.
+ type: integer
+ LastModifiedTimestamp:
+ description: Timestamp of the last time the User-Defined Type's meta data was modified.
+ type: number
+ KeyspaceArn:
+ description: ARN of the Keyspace which contains the User-Defined Type.
+ type: string
+ x-stackQL-stringOnly: true
+ x-title: CreateTypeRequest
+ type: object
+ required: []
securitySchemes:
hmac:
type: apiKey
@@ -990,7 +1168,8 @@ components:
data__Identifier,
JSON_EXTRACT(Properties, '$.KeyspaceName') as keyspace_name,
JSON_EXTRACT(Properties, '$.Tags') as tags,
- JSON_EXTRACT(Properties, '$.ReplicationSpecification') as replication_specification
+ JSON_EXTRACT(Properties, '$.ReplicationSpecification') as replication_specification,
+ JSON_EXTRACT(Properties, '$.ClientSideTimestampsEnabled') as client_side_timestamps_enabled
FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::Cassandra::Keyspace'
AND data__Identifier = ''
AND region = 'us-east-1'
@@ -1001,7 +1180,8 @@ components:
detail.region,
JSON_EXTRACT(detail.Properties, '$.KeyspaceName') as keyspace_name,
JSON_EXTRACT(detail.Properties, '$.Tags') as tags,
- JSON_EXTRACT(detail.Properties, '$.ReplicationSpecification') as replication_specification
+ JSON_EXTRACT(detail.Properties, '$.ReplicationSpecification') as replication_specification,
+ JSON_EXTRACT(detail.Properties, '$.ClientSideTimestampsEnabled') as client_side_timestamps_enabled
FROM aws.cloud_control.resources listing
LEFT OUTER JOIN aws.cloud_control.resource detail
ON detail.data__Identifier = listing.Identifier
@@ -1017,7 +1197,8 @@ components:
data__Identifier,
json_extract_path_text(Properties, 'KeyspaceName') as keyspace_name,
json_extract_path_text(Properties, 'Tags') as tags,
- json_extract_path_text(Properties, 'ReplicationSpecification') as replication_specification
+ json_extract_path_text(Properties, 'ReplicationSpecification') as replication_specification,
+ json_extract_path_text(Properties, 'ClientSideTimestampsEnabled') as client_side_timestamps_enabled
FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::Cassandra::Keyspace'
AND data__Identifier = ''
AND region = 'us-east-1'
@@ -1028,7 +1209,8 @@ components:
detail.region,
json_extract_path_text(detail.Properties, 'KeyspaceName') as keyspace_name,
json_extract_path_text(detail.Properties, 'Tags') as tags,
- json_extract_path_text(detail.Properties, 'ReplicationSpecification') as replication_specification
+ json_extract_path_text(detail.Properties, 'ReplicationSpecification') as replication_specification,
+ json_extract_path_text(detail.Properties, 'ClientSideTimestampsEnabled') as client_side_timestamps_enabled
FROM aws.cloud_control.resources listing
LEFT OUTER JOIN aws.cloud_control.resource detail
ON detail.data__Identifier = listing.Identifier
@@ -1088,7 +1270,8 @@ components:
JSON_EXTRACT(json_each.value, '$.Key') as tag_key,
JSON_EXTRACT(json_each.value, '$.Value') as tag_value,
JSON_EXTRACT(detail.Properties, '$.KeyspaceName') as keyspace_name,
- JSON_EXTRACT(detail.Properties, '$.ReplicationSpecification') as replication_specification
+ JSON_EXTRACT(detail.Properties, '$.ReplicationSpecification') as replication_specification,
+ JSON_EXTRACT(detail.Properties, '$.ClientSideTimestampsEnabled') as client_side_timestamps_enabled
FROM aws.cloud_control.resources listing
LEFT OUTER JOIN aws.cloud_control.resource detail
ON detail.data__Identifier = listing.Identifier
@@ -1105,7 +1288,8 @@ components:
json_extract_path_text(json_each.value, 'Key') as tag_key,
json_extract_path_text(json_each.value, 'Value') as tag_value,
json_extract_path_text(detail.Properties, 'KeyspaceName') as keyspace_name,
- json_extract_path_text(detail.Properties, 'ReplicationSpecification') as replication_specification
+ json_extract_path_text(detail.Properties, 'ReplicationSpecification') as replication_specification,
+ json_extract_path_text(detail.Properties, 'ClientSideTimestampsEnabled') as client_side_timestamps_enabled
FROM aws.cloud_control.resources listing
LEFT OUTER JOIN aws.cloud_control.resource detail
ON detail.data__Identifier = listing.Identifier
@@ -1367,6 +1551,159 @@ components:
WHERE listing.data__TypeName = 'AWS::Cassandra::Table'
AND detail.data__TypeName = 'AWS::Cassandra::Table'
AND listing.region = 'us-east-1'
+ types:
+ name: types
+ id: aws.cassandra.types
+ x-cfn-schema-name: Type
+ x-cfn-type-name: AWS::Cassandra::Type
+ x-identifiers:
+ - KeyspaceName
+ - TypeName
+ x-type: cloud_control
+ methods:
+ create_resource:
+ config:
+ requestBodyTranslate:
+ algorithm: naive_DesiredState
+ operation:
+ $ref: '#/paths/~1?Action=CreateResource&Version=2021-09-30&__Type&__detailTransformed=true/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::Cassandra::Type"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ delete_resource:
+ operation:
+ $ref: '#/paths/~1?Action=DeleteResource&Version=2021-09-30/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::Cassandra::Type"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ sqlVerbs:
+ insert:
+ - $ref: '#/components/x-stackQL-resources/types/methods/create_resource'
+ delete:
+ - $ref: '#/components/x-stackQL-resources/types/methods/delete_resource'
+ update: []
+ config:
+ views:
+ select:
+ predicate: sqlDialect == "sqlite3" && requiredParams == [ data__Identifier ]
+ ddl: |-
+ SELECT
+ region,
+ data__Identifier,
+ JSON_EXTRACT(Properties, '$.KeyspaceName') as keyspace_name,
+ JSON_EXTRACT(Properties, '$.TypeName') as type_name,
+ JSON_EXTRACT(Properties, '$.Fields') as fields,
+ JSON_EXTRACT(Properties, '$.DirectReferringTables') as direct_referring_tables,
+ JSON_EXTRACT(Properties, '$.DirectParentTypes') as direct_parent_types,
+ JSON_EXTRACT(Properties, '$.MaxNestingDepth') as max_nesting_depth,
+ JSON_EXTRACT(Properties, '$.LastModifiedTimestamp') as last_modified_timestamp,
+ JSON_EXTRACT(Properties, '$.KeyspaceArn') as keyspace_arn
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::Cassandra::Type'
+ AND data__Identifier = '|'
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "sqlite3"
+ ddl: |-
+ SELECT
+ detail.region,
+ JSON_EXTRACT(detail.Properties, '$.KeyspaceName') as keyspace_name,
+ JSON_EXTRACT(detail.Properties, '$.TypeName') as type_name,
+ JSON_EXTRACT(detail.Properties, '$.Fields') as fields,
+ JSON_EXTRACT(detail.Properties, '$.DirectReferringTables') as direct_referring_tables,
+ JSON_EXTRACT(detail.Properties, '$.DirectParentTypes') as direct_parent_types,
+ JSON_EXTRACT(detail.Properties, '$.MaxNestingDepth') as max_nesting_depth,
+ JSON_EXTRACT(detail.Properties, '$.LastModifiedTimestamp') as last_modified_timestamp,
+ JSON_EXTRACT(detail.Properties, '$.KeyspaceArn') as keyspace_arn
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ WHERE listing.data__TypeName = 'AWS::Cassandra::Type'
+ AND detail.data__TypeName = 'AWS::Cassandra::Type'
+ AND listing.region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres" && requiredParams == [ data__Identifier ]
+ ddl: |-
+ SELECT
+ region,
+ data__Identifier,
+ json_extract_path_text(Properties, 'KeyspaceName') as keyspace_name,
+ json_extract_path_text(Properties, 'TypeName') as type_name,
+ json_extract_path_text(Properties, 'Fields') as fields,
+ json_extract_path_text(Properties, 'DirectReferringTables') as direct_referring_tables,
+ json_extract_path_text(Properties, 'DirectParentTypes') as direct_parent_types,
+ json_extract_path_text(Properties, 'MaxNestingDepth') as max_nesting_depth,
+ json_extract_path_text(Properties, 'LastModifiedTimestamp') as last_modified_timestamp,
+ json_extract_path_text(Properties, 'KeyspaceArn') as keyspace_arn
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::Cassandra::Type'
+ AND data__Identifier = '|'
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres"
+ ddl: |-
+ SELECT
+ detail.region,
+ json_extract_path_text(detail.Properties, 'KeyspaceName') as keyspace_name,
+ json_extract_path_text(detail.Properties, 'TypeName') as type_name,
+ json_extract_path_text(detail.Properties, 'Fields') as fields,
+ json_extract_path_text(detail.Properties, 'DirectReferringTables') as direct_referring_tables,
+ json_extract_path_text(detail.Properties, 'DirectParentTypes') as direct_parent_types,
+ json_extract_path_text(detail.Properties, 'MaxNestingDepth') as max_nesting_depth,
+ json_extract_path_text(detail.Properties, 'LastModifiedTimestamp') as last_modified_timestamp,
+ json_extract_path_text(detail.Properties, 'KeyspaceArn') as keyspace_arn
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ WHERE listing.data__TypeName = 'AWS::Cassandra::Type'
+ AND detail.data__TypeName = 'AWS::Cassandra::Type'
+ AND listing.region = 'us-east-1'
+ types_list_only:
+ name: types_list_only
+ id: aws.cassandra.types_list_only
+ x-cfn-schema-name: Type
+ x-cfn-type-name: AWS::Cassandra::Type
+ x-identifiers:
+ - KeyspaceName
+ - TypeName
+ x-type: cloud_control_view
+ methods: {}
+ sqlVerbs:
+ insert: []
+ delete: []
+ update: []
+ config:
+ views:
+ select:
+ predicate: sqlDialect == "sqlite3"
+ ddl: |-
+ SELECT
+ region,
+ JSON_EXTRACT(Properties, '$.KeyspaceName') as keyspace_name,
+ JSON_EXTRACT(Properties, '$.TypeName') as type_name
+ FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::Cassandra::Type'
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres"
+ ddl: |-
+ SELECT
+ region,
+ json_extract_path_text(Properties, 'KeyspaceName') as keyspace_name,
+ json_extract_path_text(Properties, 'TypeName') as type_name
+ FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::Cassandra::Type'
+ AND region = 'us-east-1'
paths:
/?Action=CreateResource&Version=2021-09-30:
parameters:
@@ -1594,6 +1931,48 @@ paths:
schema:
$ref: '#/components/x-cloud-control-schemas/ProgressEvent'
description: Success
+ /?Action=CreateResource&Version=2021-09-30&__Type&__detailTransformed=true:
+ parameters:
+ - $ref: '#/components/parameters/X-Amz-Content-Sha256'
+ - $ref: '#/components/parameters/X-Amz-Date'
+ - $ref: '#/components/parameters/X-Amz-Algorithm'
+ - $ref: '#/components/parameters/X-Amz-Credential'
+ - $ref: '#/components/parameters/X-Amz-Security-Token'
+ - $ref: '#/components/parameters/X-Amz-Signature'
+ - $ref: '#/components/parameters/X-Amz-SignedHeaders'
+ post:
+ operationId: CreateType
+ parameters:
+ - description: Action Header
+ in: header
+ name: X-Amz-Target
+ required: false
+ schema:
+ default: CloudApiService.CreateResource
+ enum:
+ - CloudApiService.CreateResource
+ type: string
+ - in: header
+ name: Content-Type
+ required: false
+ schema:
+ default: application/x-amz-json-1.0
+ enum:
+ - application/x-amz-json-1.0
+ type: string
+ requestBody:
+ content:
+ application/x-amz-json-1.0:
+ schema:
+ $ref: '#/components/schemas/CreateTypeRequest'
+ required: true
+ responses:
+ '200':
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/x-cloud-control-schemas/ProgressEvent'
+ description: Success
x-stackQL-config:
requestTranslate:
algorithm: drop_double_underscore_params
diff --git a/providers/src/aws/v00.00.00000/services/chatbot.yaml b/providers/src/aws/v00.00.00000/services/chatbot.yaml
index e1fa67a9..713a483d 100644
--- a/providers/src/aws/v00.00.00000/services/chatbot.yaml
+++ b/providers/src/aws/v00.00.00000/services/chatbot.yaml
@@ -385,6 +385,67 @@ components:
$ref: '#/components/x-cloud-control-schemas/ProgressEvent'
type: object
schemas:
+ CustomActionAttachment:
+ type: object
+ properties:
+ NotificationType:
+ type: string
+ maxLength: 100
+ minLength: 1
+ pattern: ^[a-zA-Z0-9-]+$
+ ButtonText:
+ type: string
+ maxLength: 50
+ minLength: 1
+ pattern: ^[\S\s]+$
+ Criteria:
+ type: array
+ x-insertionOrder: false
+ items:
+ $ref: '#/components/schemas/CustomActionAttachmentCriteria'
+ maxItems: 5
+ minItems: 1
+ Variables:
+ $ref: '#/components/schemas/CustomActionAttachmentVariables'
+ additionalProperties: false
+ CustomActionAttachmentCriteria:
+ type: object
+ properties:
+ Operator:
+ $ref: '#/components/schemas/CustomActionAttachmentCriteriaOperator'
+ VariableName:
+ type: string
+ Value:
+ type: string
+ maxLength: 50
+ minLength: 0
+ required:
+ - Operator
+ - VariableName
+ additionalProperties: false
+ CustomActionAttachmentCriteriaOperator:
+ type: string
+ enum:
+ - HAS_VALUE
+ - EQUALS
+ CustomActionAttachmentVariables:
+ type: object
+ maxProperties: 5
+ minProperties: 1
+ x-patternProperties:
+ .+:
+ type: string
+ additionalProperties: false
+ CustomActionDefinition:
+ type: object
+ properties:
+ CommandText:
+ type: string
+ maxLength: 100
+ minLength: 1
+ required:
+ - CommandText
+ additionalProperties: false
Tag:
type: object
additionalProperties: false
@@ -396,6 +457,82 @@ components:
required:
- Value
- Key
+ CustomAction:
+ type: object
+ properties:
+ ActionName:
+ type: string
+ maxLength: 64
+ minLength: 1
+ pattern: ^[a-zA-Z0-9_-]{1,64}$
+ AliasName:
+ type: string
+ maxLength: 30
+ minLength: 1
+ pattern: ^[A-Za-z0-9-_]+$
+ Attachments:
+ type: array
+ x-insertionOrder: false
+ items:
+ $ref: '#/components/schemas/CustomActionAttachment'
+ CustomActionArn:
+ type: string
+ maxLength: 1011
+ minLength: 1
+ pattern: ^arn:(aws[a-zA-Z-]*)?:chatbot:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9_/.-]{0,63}:custom-action/[a-zA-Z0-9_-]{1,64}$
+ Definition:
+ $ref: '#/components/schemas/CustomActionDefinition'
+ Tags:
+ type: array
+ x-insertionOrder: false
+ items:
+ $ref: '#/components/schemas/Tag'
+ maxItems: 200
+ minItems: 0
+ required:
+ - ActionName
+ - Definition
+ x-stackql-resource-name: custom_action
+ description: Definition of AWS::Chatbot::CustomAction Resource Type
+ x-type-name: AWS::Chatbot::CustomAction
+ x-stackql-primary-identifier:
+ - CustomActionArn
+ x-create-only-properties:
+ - ActionName
+ x-read-only-properties:
+ - CustomActionArn
+ x-required-properties:
+ - ActionName
+ - Definition
+ x-tagging:
+ taggable: true
+ tagOnCreate: true
+ tagUpdatable: true
+ cloudFormationSystemTags: true
+ tagProperty: /properties/Tags
+ permissions:
+ - chatbot:TagResource
+ - chatbot:ListTagsForResource
+ - chatbot:UntagResource
+ x-required-permissions:
+ create:
+ - chatbot:CreateCustomAction
+ - chatbot:GetCustomAction
+ - chatbot:TagResource
+ - chatbot:ListTagsForResource
+ read:
+ - chatbot:GetCustomAction
+ - chatbot:ListTagsForResource
+ update:
+ - chatbot:UpdateCustomAction
+ - chatbot:GetCustomAction
+ - chatbot:TagResource
+ - chatbot:UntagResource
+ - chatbot:ListTagsForResource
+ delete:
+ - chatbot:DeleteCustomAction
+ list:
+ - chatbot:ListCustomActions
MicrosoftTeamsChannelConfiguration:
type: object
properties:
@@ -461,6 +598,13 @@ components:
x-insertionOrder: false
items:
$ref: '#/components/schemas/Tag'
+ CustomizationResourceArns:
+ description: ARNs of Custom Actions to associate with notifications in the provided chat channel.
+ type: array
+ x-insertionOrder: false
+ items:
+ type: string
+ pattern: ^arn:aws:chatbot:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9_/.-]{0,63}:custom-action/[a-zA-Z0-9_-]{1,64}$
required:
- TeamId
- TeamsChannelId
@@ -490,25 +634,38 @@ components:
tagUpdatable: true
cloudFormationSystemTags: true
tagProperty: /properties/Tags
+ permissions:
+ - chatbot:TagResource
+ - chatbot:ListTagsForResource
+ - chatbot:UntagResource
x-required-permissions:
create:
- chatbot:CreateMicrosoftTeamsChannelConfiguration
- chatbot:TagResource
+ - chatbot:AssociateToConfiguration
+ - chatbot:ListAssociations
- iam:PassRole
- iam:CreateServiceLinkedRole
read:
- chatbot:GetMicrosoftTeamsChannelConfiguration
+ - chatbot:ListAssociations
update:
- chatbot:UpdateMicrosoftTeamsChannelConfiguration
- chatbot:TagResource
- chatbot:UntagResource
- chatbot:ListTagsForResource
+ - chatbot:AssociateToConfiguration
+ - chatbot:DisassociateFromConfiguration
+ - chatbot:ListAssociations
- iam:PassRole
delete:
- chatbot:GetMicrosoftTeamsChannelConfiguration
- chatbot:DeleteMicrosoftTeamsChannelConfiguration
+ - chatbot:DisassociateFromConfiguration
+ - chatbot:ListAssociations
list:
- chatbot:ListMicrosoftTeamsChannelConfigurations
+ - chatbot:ListAssociations
SlackChannelConfiguration:
type: object
properties:
@@ -568,6 +725,13 @@ components:
description: Enables use of a user role requirement in your chat configuration
type: boolean
default: false
+ CustomizationResourceArns:
+ description: ARNs of Custom Actions to associate with notifications in the provided chat channel.
+ type: array
+ x-insertionOrder: false
+ items:
+ type: string
+ pattern: ^arn:aws:chatbot:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9_/.-]{0,63}:custom-action/[a-zA-Z0-9_-]{1,64}$
required:
- SlackWorkspaceId
- SlackChannelId
@@ -594,24 +758,83 @@ components:
tagUpdatable: true
cloudFormationSystemTags: true
tagProperty: /properties/Tags
+ permissions:
+ - chatbot:TagResource
+ - chatbot:ListTagsForResource
+ - chatbot:UntagResource
x-required-permissions:
create:
- chatbot:CreateSlackChannelConfiguration
- chatbot:TagResource
+ - chatbot:AssociateToConfiguration
+ - chatbot:ListAssociations
- iam:PassRole
- iam:CreateServiceLinkedRole
read:
- chatbot:DescribeSlackChannelConfigurations
+ - chatbot:ListAssociations
update:
- chatbot:UpdateSlackChannelConfiguration
- chatbot:TagResource
- chatbot:UntagResource
- chatbot:ListTagsForResource
+ - chatbot:AssociateToConfiguration
+ - chatbot:DisassociateFromConfiguration
+ - chatbot:ListAssociations
- iam:PassRole
delete:
- chatbot:DeleteSlackChannelConfiguration
+ - chatbot:DisassociateFromConfiguration
+ - chatbot:ListAssociations
list:
- chatbot:DescribeSlackChannelConfigurations
+ - chatbot:ListAssociations
+ CreateCustomActionRequest:
+ properties:
+ ClientToken:
+ type: string
+ RoleArn:
+ type: string
+ TypeName:
+ type: string
+ TypeVersionId:
+ type: string
+ DesiredState:
+ type: object
+ properties:
+ ActionName:
+ type: string
+ maxLength: 64
+ minLength: 1
+ pattern: ^[a-zA-Z0-9_-]{1,64}$
+ AliasName:
+ type: string
+ maxLength: 30
+ minLength: 1
+ pattern: ^[A-Za-z0-9-_]+$
+ Attachments:
+ type: array
+ x-insertionOrder: false
+ items:
+ $ref: '#/components/schemas/CustomActionAttachment'
+ CustomActionArn:
+ type: string
+ maxLength: 1011
+ minLength: 1
+ pattern: ^arn:(aws[a-zA-Z-]*)?:chatbot:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9_/.-]{0,63}:custom-action/[a-zA-Z0-9_-]{1,64}$
+ Definition:
+ $ref: '#/components/schemas/CustomActionDefinition'
+ Tags:
+ type: array
+ x-insertionOrder: false
+ items:
+ $ref: '#/components/schemas/Tag'
+ maxItems: 200
+ minItems: 0
+ x-stackQL-stringOnly: true
+ x-title: CreateCustomActionRequest
+ type: object
+ required: []
CreateMicrosoftTeamsChannelConfigurationRequest:
properties:
ClientToken:
@@ -687,6 +910,13 @@ components:
x-insertionOrder: false
items:
$ref: '#/components/schemas/Tag'
+ CustomizationResourceArns:
+ description: ARNs of Custom Actions to associate with notifications in the provided chat channel.
+ type: array
+ x-insertionOrder: false
+ items:
+ type: string
+ pattern: ^arn:aws:chatbot:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9_/.-]{0,63}:custom-action/[a-zA-Z0-9_-]{1,64}$
x-stackQL-stringOnly: true
x-title: CreateMicrosoftTeamsChannelConfigurationRequest
type: object
@@ -760,6 +990,13 @@ components:
description: Enables use of a user role requirement in your chat configuration
type: boolean
default: false
+ CustomizationResourceArns:
+ description: ARNs of Custom Actions to associate with notifications in the provided chat channel.
+ type: array
+ x-insertionOrder: false
+ items:
+ type: string
+ pattern: ^arn:aws:chatbot:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9_/.-]{0,63}:custom-action/[a-zA-Z0-9_-]{1,64}$
x-stackQL-stringOnly: true
x-title: CreateSlackChannelConfigurationRequest
type: object
@@ -772,6 +1009,213 @@ components:
description: Amazon Signature authorization v4
x-amazon-apigateway-authtype: awsSigv4
x-stackQL-resources:
+ custom_actions:
+ name: custom_actions
+ id: aws.chatbot.custom_actions
+ x-cfn-schema-name: CustomAction
+ x-cfn-type-name: AWS::Chatbot::CustomAction
+ x-identifiers:
+ - CustomActionArn
+ x-type: cloud_control
+ methods:
+ create_resource:
+ config:
+ requestBodyTranslate:
+ algorithm: naive_DesiredState
+ operation:
+ $ref: '#/paths/~1?Action=CreateResource&Version=2021-09-30&__CustomAction&__detailTransformed=true/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::Chatbot::CustomAction"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ update_resource:
+ operation:
+ $ref: '#/paths/~1?Action=UpdateResource&Version=2021-09-30/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::Chatbot::CustomAction"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ delete_resource:
+ operation:
+ $ref: '#/paths/~1?Action=DeleteResource&Version=2021-09-30/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::Chatbot::CustomAction"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ sqlVerbs:
+ insert:
+ - $ref: '#/components/x-stackQL-resources/custom_actions/methods/create_resource'
+ delete:
+ - $ref: '#/components/x-stackQL-resources/custom_actions/methods/delete_resource'
+ update:
+ - $ref: '#/components/x-stackQL-resources/custom_actions/methods/update_resource'
+ config:
+ views:
+ select:
+ predicate: sqlDialect == "sqlite3" && requiredParams == [ data__Identifier ]
+ ddl: |-
+ SELECT
+ region,
+ data__Identifier,
+ JSON_EXTRACT(Properties, '$.ActionName') as action_name,
+ JSON_EXTRACT(Properties, '$.AliasName') as alias_name,
+ JSON_EXTRACT(Properties, '$.Attachments') as attachments,
+ JSON_EXTRACT(Properties, '$.CustomActionArn') as custom_action_arn,
+ JSON_EXTRACT(Properties, '$.Definition') as definition,
+ JSON_EXTRACT(Properties, '$.Tags') as tags
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::Chatbot::CustomAction'
+ AND data__Identifier = ''
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "sqlite3"
+ ddl: |-
+ SELECT
+ detail.region,
+ JSON_EXTRACT(detail.Properties, '$.ActionName') as action_name,
+ JSON_EXTRACT(detail.Properties, '$.AliasName') as alias_name,
+ JSON_EXTRACT(detail.Properties, '$.Attachments') as attachments,
+ JSON_EXTRACT(detail.Properties, '$.CustomActionArn') as custom_action_arn,
+ JSON_EXTRACT(detail.Properties, '$.Definition') as definition,
+ JSON_EXTRACT(detail.Properties, '$.Tags') as tags
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ WHERE listing.data__TypeName = 'AWS::Chatbot::CustomAction'
+ AND detail.data__TypeName = 'AWS::Chatbot::CustomAction'
+ AND listing.region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres" && requiredParams == [ data__Identifier ]
+ ddl: |-
+ SELECT
+ region,
+ data__Identifier,
+ json_extract_path_text(Properties, 'ActionName') as action_name,
+ json_extract_path_text(Properties, 'AliasName') as alias_name,
+ json_extract_path_text(Properties, 'Attachments') as attachments,
+ json_extract_path_text(Properties, 'CustomActionArn') as custom_action_arn,
+ json_extract_path_text(Properties, 'Definition') as definition,
+ json_extract_path_text(Properties, 'Tags') as tags
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::Chatbot::CustomAction'
+ AND data__Identifier = ''
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres"
+ ddl: |-
+ SELECT
+ detail.region,
+ json_extract_path_text(detail.Properties, 'ActionName') as action_name,
+ json_extract_path_text(detail.Properties, 'AliasName') as alias_name,
+ json_extract_path_text(detail.Properties, 'Attachments') as attachments,
+ json_extract_path_text(detail.Properties, 'CustomActionArn') as custom_action_arn,
+ json_extract_path_text(detail.Properties, 'Definition') as definition,
+ json_extract_path_text(detail.Properties, 'Tags') as tags
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ WHERE listing.data__TypeName = 'AWS::Chatbot::CustomAction'
+ AND detail.data__TypeName = 'AWS::Chatbot::CustomAction'
+ AND listing.region = 'us-east-1'
+ custom_actions_list_only:
+ name: custom_actions_list_only
+ id: aws.chatbot.custom_actions_list_only
+ x-cfn-schema-name: CustomAction
+ x-cfn-type-name: AWS::Chatbot::CustomAction
+ x-identifiers:
+ - CustomActionArn
+ x-type: cloud_control_view
+ methods: {}
+ sqlVerbs:
+ insert: []
+ delete: []
+ update: []
+ config:
+ views:
+ select:
+ predicate: sqlDialect == "sqlite3"
+ ddl: |-
+ SELECT
+ region,
+ JSON_EXTRACT(Properties, '$.CustomActionArn') as custom_action_arn
+ FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::Chatbot::CustomAction'
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres"
+ ddl: |-
+ SELECT
+ region,
+ json_extract_path_text(Properties, 'CustomActionArn') as custom_action_arn
+ FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::Chatbot::CustomAction'
+ AND region = 'us-east-1'
+ custom_action_tags:
+ name: custom_action_tags
+ id: aws.chatbot.custom_action_tags
+ x-cfn-schema-name: CustomAction
+ x-cfn-type-name: AWS::Chatbot::CustomAction
+ x-type: cloud_control_view
+ methods: {}
+ sqlVerbs:
+ insert: []
+ delete: []
+ update: []
+ config:
+ views:
+ select:
+ predicate: sqlDialect == "sqlite3"
+ ddl: |-
+ SELECT
+ detail.region,
+ JSON_EXTRACT(json_each.value, '$.Key') as tag_key,
+ JSON_EXTRACT(json_each.value, '$.Value') as tag_value,
+ JSON_EXTRACT(detail.Properties, '$.ActionName') as action_name,
+ JSON_EXTRACT(detail.Properties, '$.AliasName') as alias_name,
+ JSON_EXTRACT(detail.Properties, '$.Attachments') as attachments,
+ JSON_EXTRACT(detail.Properties, '$.CustomActionArn') as custom_action_arn,
+ JSON_EXTRACT(detail.Properties, '$.Definition') as definition
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ ,json_each(JSON_EXTRACT(detail.Properties, '$.Tags'))
+ WHERE listing.data__TypeName = 'AWS::Chatbot::CustomAction'
+ AND detail.data__TypeName = 'AWS::Chatbot::CustomAction'
+ AND listing.region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres"
+ ddl: |-
+ SELECT
+ detail.region,
+ json_extract_path_text(json_each.value, 'Key') as tag_key,
+ json_extract_path_text(json_each.value, 'Value') as tag_value,
+ json_extract_path_text(detail.Properties, 'ActionName') as action_name,
+ json_extract_path_text(detail.Properties, 'AliasName') as alias_name,
+ json_extract_path_text(detail.Properties, 'Attachments') as attachments,
+ json_extract_path_text(detail.Properties, 'CustomActionArn') as custom_action_arn,
+ json_extract_path_text(detail.Properties, 'Definition') as definition
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ ,json_array_elements_text(json_extract_path_text(detail.Properties, 'Tags'))
+ WHERE listing.data__TypeName = 'AWS::Chatbot::CustomAction'
+ AND detail.data__TypeName = 'AWS::Chatbot::CustomAction'
+ AND listing.region = 'us-east-1'
microsoft_teams_channel_configurations:
name: microsoft_teams_channel_configurations
id: aws.chatbot.microsoft_teams_channel_configurations
@@ -845,7 +1289,8 @@ components:
JSON_EXTRACT(Properties, '$.Arn') as arn,
JSON_EXTRACT(Properties, '$.GuardrailPolicies') as guardrail_policies,
JSON_EXTRACT(Properties, '$.UserRoleRequired') as user_role_required,
- JSON_EXTRACT(Properties, '$.Tags') as tags
+ JSON_EXTRACT(Properties, '$.Tags') as tags,
+ JSON_EXTRACT(Properties, '$.CustomizationResourceArns') as customization_resource_arns
FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::Chatbot::MicrosoftTeamsChannelConfiguration'
AND data__Identifier = ''
AND region = 'us-east-1'
@@ -864,7 +1309,8 @@ components:
JSON_EXTRACT(detail.Properties, '$.Arn') as arn,
JSON_EXTRACT(detail.Properties, '$.GuardrailPolicies') as guardrail_policies,
JSON_EXTRACT(detail.Properties, '$.UserRoleRequired') as user_role_required,
- JSON_EXTRACT(detail.Properties, '$.Tags') as tags
+ JSON_EXTRACT(detail.Properties, '$.Tags') as tags,
+ JSON_EXTRACT(detail.Properties, '$.CustomizationResourceArns') as customization_resource_arns
FROM aws.cloud_control.resources listing
LEFT OUTER JOIN aws.cloud_control.resource detail
ON detail.data__Identifier = listing.Identifier
@@ -888,7 +1334,8 @@ components:
json_extract_path_text(Properties, 'Arn') as arn,
json_extract_path_text(Properties, 'GuardrailPolicies') as guardrail_policies,
json_extract_path_text(Properties, 'UserRoleRequired') as user_role_required,
- json_extract_path_text(Properties, 'Tags') as tags
+ json_extract_path_text(Properties, 'Tags') as tags,
+ json_extract_path_text(Properties, 'CustomizationResourceArns') as customization_resource_arns
FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::Chatbot::MicrosoftTeamsChannelConfiguration'
AND data__Identifier = ''
AND region = 'us-east-1'
@@ -907,7 +1354,8 @@ components:
json_extract_path_text(detail.Properties, 'Arn') as arn,
json_extract_path_text(detail.Properties, 'GuardrailPolicies') as guardrail_policies,
json_extract_path_text(detail.Properties, 'UserRoleRequired') as user_role_required,
- json_extract_path_text(detail.Properties, 'Tags') as tags
+ json_extract_path_text(detail.Properties, 'Tags') as tags,
+ json_extract_path_text(detail.Properties, 'CustomizationResourceArns') as customization_resource_arns
FROM aws.cloud_control.resources listing
LEFT OUTER JOIN aws.cloud_control.resource detail
ON detail.data__Identifier = listing.Identifier
@@ -975,7 +1423,8 @@ components:
JSON_EXTRACT(detail.Properties, '$.LoggingLevel') as logging_level,
JSON_EXTRACT(detail.Properties, '$.Arn') as arn,
JSON_EXTRACT(detail.Properties, '$.GuardrailPolicies') as guardrail_policies,
- JSON_EXTRACT(detail.Properties, '$.UserRoleRequired') as user_role_required
+ JSON_EXTRACT(detail.Properties, '$.UserRoleRequired') as user_role_required,
+ JSON_EXTRACT(detail.Properties, '$.CustomizationResourceArns') as customization_resource_arns
FROM aws.cloud_control.resources listing
LEFT OUTER JOIN aws.cloud_control.resource detail
ON detail.data__Identifier = listing.Identifier
@@ -1000,7 +1449,8 @@ components:
json_extract_path_text(detail.Properties, 'LoggingLevel') as logging_level,
json_extract_path_text(detail.Properties, 'Arn') as arn,
json_extract_path_text(detail.Properties, 'GuardrailPolicies') as guardrail_policies,
- json_extract_path_text(detail.Properties, 'UserRoleRequired') as user_role_required
+ json_extract_path_text(detail.Properties, 'UserRoleRequired') as user_role_required,
+ json_extract_path_text(detail.Properties, 'CustomizationResourceArns') as customization_resource_arns
FROM aws.cloud_control.resources listing
LEFT OUTER JOIN aws.cloud_control.resource detail
ON detail.data__Identifier = listing.Identifier
@@ -1081,7 +1531,8 @@ components:
JSON_EXTRACT(Properties, '$.Arn') as arn,
JSON_EXTRACT(Properties, '$.GuardrailPolicies') as guardrail_policies,
JSON_EXTRACT(Properties, '$.Tags') as tags,
- JSON_EXTRACT(Properties, '$.UserRoleRequired') as user_role_required
+ JSON_EXTRACT(Properties, '$.UserRoleRequired') as user_role_required,
+ JSON_EXTRACT(Properties, '$.CustomizationResourceArns') as customization_resource_arns
FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::Chatbot::SlackChannelConfiguration'
AND data__Identifier = ''
AND region = 'us-east-1'
@@ -1099,7 +1550,8 @@ components:
JSON_EXTRACT(detail.Properties, '$.Arn') as arn,
JSON_EXTRACT(detail.Properties, '$.GuardrailPolicies') as guardrail_policies,
JSON_EXTRACT(detail.Properties, '$.Tags') as tags,
- JSON_EXTRACT(detail.Properties, '$.UserRoleRequired') as user_role_required
+ JSON_EXTRACT(detail.Properties, '$.UserRoleRequired') as user_role_required,
+ JSON_EXTRACT(detail.Properties, '$.CustomizationResourceArns') as customization_resource_arns
FROM aws.cloud_control.resources listing
LEFT OUTER JOIN aws.cloud_control.resource detail
ON detail.data__Identifier = listing.Identifier
@@ -1122,7 +1574,8 @@ components:
json_extract_path_text(Properties, 'Arn') as arn,
json_extract_path_text(Properties, 'GuardrailPolicies') as guardrail_policies,
json_extract_path_text(Properties, 'Tags') as tags,
- json_extract_path_text(Properties, 'UserRoleRequired') as user_role_required
+ json_extract_path_text(Properties, 'UserRoleRequired') as user_role_required,
+ json_extract_path_text(Properties, 'CustomizationResourceArns') as customization_resource_arns
FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::Chatbot::SlackChannelConfiguration'
AND data__Identifier = ''
AND region = 'us-east-1'
@@ -1140,7 +1593,8 @@ components:
json_extract_path_text(detail.Properties, 'Arn') as arn,
json_extract_path_text(detail.Properties, 'GuardrailPolicies') as guardrail_policies,
json_extract_path_text(detail.Properties, 'Tags') as tags,
- json_extract_path_text(detail.Properties, 'UserRoleRequired') as user_role_required
+ json_extract_path_text(detail.Properties, 'UserRoleRequired') as user_role_required,
+ json_extract_path_text(detail.Properties, 'CustomizationResourceArns') as customization_resource_arns
FROM aws.cloud_control.resources listing
LEFT OUTER JOIN aws.cloud_control.resource detail
ON detail.data__Identifier = listing.Identifier
@@ -1207,7 +1661,8 @@ components:
JSON_EXTRACT(detail.Properties, '$.LoggingLevel') as logging_level,
JSON_EXTRACT(detail.Properties, '$.Arn') as arn,
JSON_EXTRACT(detail.Properties, '$.GuardrailPolicies') as guardrail_policies,
- JSON_EXTRACT(detail.Properties, '$.UserRoleRequired') as user_role_required
+ JSON_EXTRACT(detail.Properties, '$.UserRoleRequired') as user_role_required,
+ JSON_EXTRACT(detail.Properties, '$.CustomizationResourceArns') as customization_resource_arns
FROM aws.cloud_control.resources listing
LEFT OUTER JOIN aws.cloud_control.resource detail
ON detail.data__Identifier = listing.Identifier
@@ -1231,7 +1686,8 @@ components:
json_extract_path_text(detail.Properties, 'LoggingLevel') as logging_level,
json_extract_path_text(detail.Properties, 'Arn') as arn,
json_extract_path_text(detail.Properties, 'GuardrailPolicies') as guardrail_policies,
- json_extract_path_text(detail.Properties, 'UserRoleRequired') as user_role_required
+ json_extract_path_text(detail.Properties, 'UserRoleRequired') as user_role_required,
+ json_extract_path_text(detail.Properties, 'CustomizationResourceArns') as customization_resource_arns
FROM aws.cloud_control.resources listing
LEFT OUTER JOIN aws.cloud_control.resource detail
ON detail.data__Identifier = listing.Identifier
@@ -1383,6 +1839,48 @@ paths:
schema:
$ref: '#/components/x-cloud-control-schemas/UpdateResourceOutput'
description: Success
+ /?Action=CreateResource&Version=2021-09-30&__CustomAction&__detailTransformed=true:
+ parameters:
+ - $ref: '#/components/parameters/X-Amz-Content-Sha256'
+ - $ref: '#/components/parameters/X-Amz-Date'
+ - $ref: '#/components/parameters/X-Amz-Algorithm'
+ - $ref: '#/components/parameters/X-Amz-Credential'
+ - $ref: '#/components/parameters/X-Amz-Security-Token'
+ - $ref: '#/components/parameters/X-Amz-Signature'
+ - $ref: '#/components/parameters/X-Amz-SignedHeaders'
+ post:
+ operationId: CreateCustomAction
+ parameters:
+ - description: Action Header
+ in: header
+ name: X-Amz-Target
+ required: false
+ schema:
+ default: CloudApiService.CreateResource
+ enum:
+ - CloudApiService.CreateResource
+ type: string
+ - in: header
+ name: Content-Type
+ required: false
+ schema:
+ default: application/x-amz-json-1.0
+ enum:
+ - application/x-amz-json-1.0
+ type: string
+ requestBody:
+ content:
+ application/x-amz-json-1.0:
+ schema:
+ $ref: '#/components/schemas/CreateCustomActionRequest'
+ required: true
+ responses:
+ '200':
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/x-cloud-control-schemas/ProgressEvent'
+ description: Success
/?Action=CreateResource&Version=2021-09-30&__MicrosoftTeamsChannelConfiguration&__detailTransformed=true:
parameters:
- $ref: '#/components/parameters/X-Amz-Content-Sha256'
diff --git a/providers/src/aws/v00.00.00000/services/cleanrooms.yaml b/providers/src/aws/v00.00.00000/services/cleanrooms.yaml
index 46aa393f..33fbc2f8 100644
--- a/providers/src/aws/v00.00.00000/services/cleanrooms.yaml
+++ b/providers/src/aws/v00.00.00000/services/cleanrooms.yaml
@@ -416,6 +416,19 @@ components:
- TIME
- TIMETZ
- VARBYTE
+ - BINARY
+ - BYTE
+ - CHARACTER
+ - DOUBLE
+ - FLOAT
+ - INT
+ - LONG
+ - NUMERIC
+ - SHORT
+ - STRING
+ - TIMESTAMP_LTZ
+ - TIMESTAMP_NTZ
+ - TINYINT
required:
- Name
- Type
@@ -559,6 +572,10 @@ components:
tagUpdatable: true
cloudFormationSystemTags: true
tagProperty: /properties/Tags
+ permissions:
+ - cleanrooms:ListTagsForResource
+ - cleanrooms:UntagResource
+ - cleanrooms:TagResource
x-required-permissions:
create:
- cleanrooms:CreateAnalysisTemplate
@@ -583,6 +600,11 @@ components:
- cleanrooms:UntagResource
list:
- cleanrooms:ListAnalysisTemplates
+ AnalyticsEngine:
+ type: string
+ enum:
+ - CLEAN_ROOMS_SQL
+ - SPARK
CollaborationQueryLogStatus:
type: string
enum:
@@ -616,6 +638,25 @@ components:
items:
$ref: '#/components/schemas/MemberAbility'
uniqueItems: true
+ MLMemberAbilities:
+ type: object
+ properties:
+ CustomMLMemberAbilities:
+ $ref: '#/components/schemas/CustomMLMemberAbilities'
+ required:
+ - CustomMLMemberAbilities
+ additionalProperties: false
+ CustomMLMemberAbility:
+ type: string
+ enum:
+ - CAN_RECEIVE_MODEL_OUTPUT
+ - CAN_RECEIVE_INFERENCE_OUTPUT
+ CustomMLMemberAbilities:
+ type: array
+ x-insertionOrder: false
+ items:
+ $ref: '#/components/schemas/CustomMLMemberAbility'
+ uniqueItems: true
MemberSpecification:
type: object
properties:
@@ -626,6 +667,8 @@ components:
pattern: ^\d+$
MemberAbilities:
$ref: '#/components/schemas/MemberAbilities'
+ MLMemberAbilities:
+ $ref: '#/components/schemas/MLMemberAbilities'
DisplayName:
$ref: '#/components/schemas/Name'
PaymentConfiguration:
@@ -653,6 +696,8 @@ components:
properties:
QueryCompute:
$ref: '#/components/schemas/QueryComputePaymentConfig'
+ MachineLearning:
+ $ref: '#/components/schemas/MLPaymentConfig'
required:
- QueryCompute
QueryComputePaymentConfig:
@@ -663,6 +708,30 @@ components:
type: boolean
required:
- IsResponsible
+ MLPaymentConfig:
+ type: object
+ additionalProperties: false
+ properties:
+ ModelTraining:
+ $ref: '#/components/schemas/ModelTrainingPaymentConfig'
+ ModelInference:
+ $ref: '#/components/schemas/ModelInferencePaymentConfig'
+ ModelTrainingPaymentConfig:
+ type: object
+ additionalProperties: false
+ properties:
+ IsResponsible:
+ type: boolean
+ required:
+ - IsResponsible
+ ModelInferencePaymentConfig:
+ type: object
+ additionalProperties: false
+ properties:
+ IsResponsible:
+ type: boolean
+ required:
+ - IsResponsible
Collaboration:
type: object
properties:
@@ -685,6 +754,8 @@ components:
$ref: '#/components/schemas/Name'
CreatorMemberAbilities:
$ref: '#/components/schemas/MemberAbilities'
+ CreatorMLMemberAbilities:
+ $ref: '#/components/schemas/MLMemberAbilities'
DataEncryptionMetadata:
$ref: '#/components/schemas/DataEncryptionMetadata'
Description:
@@ -706,6 +777,8 @@ components:
pattern: ^(?!\s*$)[\u0020-\uD7FF\uE000-\uFFFD\uD800\uDBFF-\uDC00\uDFFF\t]*$
QueryLogStatus:
$ref: '#/components/schemas/CollaborationQueryLogStatus'
+ AnalyticsEngine:
+ $ref: '#/components/schemas/AnalyticsEngine'
CreatorPaymentConfiguration:
$ref: '#/components/schemas/PaymentConfiguration'
required:
@@ -724,10 +797,12 @@ components:
x-create-only-properties:
- CreatorDisplayName
- CreatorMemberAbilities
+ - CreatorMLMemberAbilities
- DataEncryptionMetadata
- QueryLogStatus
- Members
- CreatorPaymentConfiguration
+ - AnalyticsEngine
x-read-only-properties:
- Arn
- CollaborationIdentifier
@@ -899,6 +974,8 @@ components:
items:
$ref: '#/components/schemas/AggregationConstraint'
minItems: 1
+ AdditionalAnalyses:
+ $ref: '#/components/schemas/AdditionalAnalyses'
required:
- AggregateColumns
- JoinColumns
@@ -926,6 +1003,8 @@ components:
x-insertionOrder: false
items:
$ref: '#/components/schemas/AnalysisRuleColumnName'
+ AdditionalAnalyses:
+ $ref: '#/components/schemas/AdditionalAnalyses'
required:
- JoinColumns
- ListColumns
@@ -952,6 +1031,18 @@ components:
minItems: 0
items:
$ref: '#/components/schemas/AllowedAnalysisProvider'
+ DisallowedOutputColumns:
+ type: array
+ x-insertionOrder: false
+ minItems: 0
+ items:
+ $ref: '#/components/schemas/AnalysisRuleColumnName'
+ AdditionalAnalyses:
+ type: string
+ enum:
+ - ALLOWED
+ - REQUIRED
+ - NOT_ALLOWED
DifferentialPrivacyColumn:
type: object
properties:
@@ -981,6 +1072,10 @@ components:
$ref: '#/components/schemas/AllowedAnalysisProviders'
DifferentialPrivacy:
$ref: '#/components/schemas/DifferentialPrivacy'
+ DisallowedOutputColumns:
+ $ref: '#/components/schemas/DisallowedOutputColumns'
+ AdditionalAnalyses:
+ $ref: '#/components/schemas/AdditionalAnalyses'
required:
- AllowedAnalyses
additionalProperties: false
@@ -1040,6 +1135,88 @@ components:
- DatabaseName
- TableName
additionalProperties: false
+ SnowflakeTableReference:
+ type: object
+ properties:
+ SecretArn:
+ type: string
+ maxLength: 256
+ AccountIdentifier:
+ type: string
+ maxLength: 256
+ minLength: 3
+ DatabaseName:
+ type: string
+ maxLength: 256
+ minLength: 1
+ TableName:
+ type: string
+ maxLength: 256
+ minLength: 1
+ SchemaName:
+ type: string
+ maxLength: 256
+ minLength: 1
+ TableSchema:
+ $ref: '#/components/schemas/SnowflakeTableSchema'
+ required:
+ - AccountIdentifier
+ - DatabaseName
+ - SchemaName
+ - SecretArn
+ - TableName
+ - TableSchema
+ additionalProperties: false
+ SnowflakeTableSchema:
+ oneOf:
+ - type: object
+ title: V1
+ properties:
+ V1:
+ type: array
+ x-insertionOrder: false
+ items:
+ $ref: '#/components/schemas/SnowflakeTableSchemaV1'
+ maxItems: 250
+ minItems: 1
+ required:
+ - V1
+ additionalProperties: false
+ SnowflakeTableSchemaV1:
+ type: object
+ properties:
+ ColumnName:
+ type: string
+ maxLength: 128
+ ColumnType:
+ type: string
+ maxLength: 255
+ required:
+ - ColumnName
+ - ColumnType
+ additionalProperties: false
+ AthenaTableReference:
+ type: object
+ properties:
+ WorkGroup:
+ type: string
+ maxLength: 128
+ minLength: 1
+ OutputLocation:
+ type: string
+ maxLength: 1024
+ minLength: 8
+ DatabaseName:
+ type: string
+ maxLength: 128
+ TableName:
+ type: string
+ maxLength: 128
+ required:
+ - DatabaseName
+ - TableName
+ - WorkGroup
+ additionalProperties: false
AnalysisRule:
type: object
properties:
@@ -1052,14 +1229,31 @@ components:
- Policy
additionalProperties: false
TableReference:
- type: object
- x-title: Glue
- properties:
- Glue:
- $ref: '#/components/schemas/GlueTableReference'
- required:
- - Glue
- additionalProperties: false
+ oneOf:
+ - type: object
+ title: Glue
+ properties:
+ Glue:
+ $ref: '#/components/schemas/GlueTableReference'
+ required:
+ - Glue
+ additionalProperties: false
+ - type: object
+ title: Snowflake
+ properties:
+ Snowflake:
+ $ref: '#/components/schemas/SnowflakeTableReference'
+ required:
+ - Snowflake
+ additionalProperties: false
+ - type: object
+ title: Athena
+ properties:
+ Athena:
+ $ref: '#/components/schemas/AthenaTableReference'
+ required:
+ - Athena
+ additionalProperties: false
ConfiguredTable:
type: object
properties:
@@ -1135,6 +1329,10 @@ components:
tagUpdatable: true
cloudFormationSystemTags: true
tagProperty: /properties/Tags
+ permissions:
+ - cleanrooms:ListTagsForResource
+ - cleanrooms:UntagResource
+ - cleanrooms:TagResource
x-required-permissions:
create:
- cleanrooms:CreateConfiguredTable
@@ -1154,6 +1352,7 @@ components:
- cleanrooms:ListTagsForResource
- cleanrooms:TagResource
- cleanrooms:ListConfiguredTables
+ - athena:GetTableMetadata
read:
- cleanrooms:GetConfiguredTable
- cleanrooms:GetConfiguredTableAnalysisRule
@@ -1194,12 +1393,109 @@ components:
- glue:GetSchemaVersion
list:
- cleanrooms:ListConfiguredTables
+ ConfiguredTableAssociationAnalysisRuleType:
+ type: string
+ enum:
+ - AGGREGATION
+ - LIST
+ - CUSTOM
+ AllowedResultReceiver:
+ type: string
+ minLength: 12
+ maxLength: 12
+ pattern: \d+
+ AllowedResultReceivers:
+ type: array
+ x-insertionOrder: false
+ minItems: 0
+ items:
+ $ref: '#/components/schemas/AllowedResultReceiver'
+ AllowedAdditionalAnalysis:
+ type: string
+ maxLength: 256
+ AllowedAdditionalAnalyses:
+ type: array
+ x-insertionOrder: false
+ minItems: 0
+ maxItems: 25
+ items:
+ $ref: '#/components/schemas/AllowedAdditionalAnalysis'
+ ConfiguredTableAssociationAnalysisRuleCustom:
+ type: object
+ properties:
+ AllowedResultReceivers:
+ $ref: '#/components/schemas/AllowedResultReceivers'
+ AllowedAdditionalAnalyses:
+ $ref: '#/components/schemas/AllowedAdditionalAnalyses'
+ additionalProperties: false
+ ConfiguredTableAssociationAnalysisRuleAggregation:
+ type: object
+ properties:
+ AllowedResultReceivers:
+ $ref: '#/components/schemas/AllowedResultReceivers'
+ AllowedAdditionalAnalyses:
+ $ref: '#/components/schemas/AllowedAdditionalAnalyses'
+ additionalProperties: false
+ ConfiguredTableAssociationAnalysisRuleList:
+ type: object
+ properties:
+ AllowedResultReceivers:
+ $ref: '#/components/schemas/AllowedResultReceivers'
+ AllowedAdditionalAnalyses:
+ $ref: '#/components/schemas/AllowedAdditionalAnalyses'
+ additionalProperties: false
+ ConfiguredTableAssociationAnalysisRulePolicyV1:
+ oneOf:
+ - type: object
+ title: List
+ properties:
+ List:
+ $ref: '#/components/schemas/ConfiguredTableAssociationAnalysisRuleList'
+ required:
+ - List
+ additionalProperties: false
+ - type: object
+ title: Aggregation
+ properties:
+ Aggregation:
+ $ref: '#/components/schemas/ConfiguredTableAssociationAnalysisRuleAggregation'
+ required:
+ - Aggregation
+ additionalProperties: false
+ - type: object
+ title: Custom
+ properties:
+ Custom:
+ $ref: '#/components/schemas/ConfiguredTableAssociationAnalysisRuleCustom'
+ required:
+ - Custom
+ additionalProperties: false
+ ConfiguredTableAssociationAnalysisRulePolicy:
+ type: object
+ x-title: V1
+ properties:
+ V1:
+ $ref: '#/components/schemas/ConfiguredTableAssociationAnalysisRulePolicyV1'
+ required:
+ - V1
+ additionalProperties: false
+ ConfiguredTableAssociationAnalysisRule:
+ type: object
+ properties:
+ Type:
+ $ref: '#/components/schemas/ConfiguredTableAssociationAnalysisRuleType'
+ Policy:
+ $ref: '#/components/schemas/ConfiguredTableAssociationAnalysisRulePolicy'
+ required:
+ - Type
+ - Policy
+ additionalProperties: false
ConfiguredTableAssociation:
type: object
properties:
Arn:
type: string
- maxLength: 100
+ maxLength: 256
Tags:
description: An arbitrary set of tags (key-value pairs) for this cleanrooms collaboration.
x-insertionOrder: false
@@ -1233,6 +1529,13 @@ components:
type: string
maxLength: 512
minLength: 32
+ ConfiguredTableAssociationAnalysisRules:
+ type: array
+ x-insertionOrder: false
+ items:
+ $ref: '#/components/schemas/ConfiguredTableAssociationAnalysisRule'
+ maxItems: 1
+ minItems: 1
required:
- ConfiguredTableIdentifier
- Name
@@ -1256,12 +1559,17 @@ components:
- Name
- RoleArn
- MembershipIdentifier
+ x-replacement-strategy: delete_then_create
x-tagging:
taggable: true
tagOnCreate: true
tagUpdatable: true
cloudFormationSystemTags: true
tagProperty: /properties/Tags
+ permissions:
+ - cleanrooms:ListTagsForResource
+ - cleanrooms:UntagResource
+ - cleanrooms:TagResource
x-required-permissions:
create:
- cleanrooms:CreateConfiguredTableAssociation
@@ -1270,9 +1578,14 @@ components:
- cleanrooms:TagResource
- cleanrooms:GetConfiguredTableAssociation
- cleanrooms:ListConfiguredTableAssociations
+ - cleanrooms:DeleteConfiguredTableAssociation
+ - cleanrooms:DeleteConfiguredTableAssociationAnalysisRule
+ - cleanrooms:CreateConfiguredTableAssociationAnalysisRule
+ - cleanrooms:GetConfiguredTableAssociationAnalysisRule
read:
- cleanrooms:GetConfiguredTableAssociation
- cleanrooms:ListTagsForResource
+ - cleanrooms:GetConfiguredTableAssociationAnalysisRule
update:
- cleanrooms:UpdateConfiguredTableAssociation
- cleanrooms:GetConfiguredTableAssociation
@@ -1280,526 +1593,698 @@ components:
- cleanrooms:ListTagsForResource
- cleanrooms:TagResource
- cleanrooms:UntagResource
+ - cleanrooms:DeleteConfiguredTableAssociationAnalysisRule
+ - cleanrooms:CreateConfiguredTableAssociationAnalysisRule
+ - cleanrooms:GetConfiguredTableAssociationAnalysisRule
+ - cleanrooms:UpdateConfiguredTableAssociationAnalysisRule
delete:
- cleanrooms:DeleteConfiguredTableAssociation
- cleanrooms:GetConfiguredTableAssociation
- cleanrooms:ListConfiguredTableAssociations
- cleanrooms:ListTagsForResource
- cleanrooms:UntagResource
+ - cleanrooms:DeleteConfiguredTableAssociationAnalysisRule
+ - cleanrooms:GetConfiguredTableAssociationAnalysisRule
list:
- cleanrooms:ListConfiguredTableAssociations
- MembershipQueryLogStatus:
+ UUID:
type: string
- enum:
- - ENABLED
- - DISABLED
- MembershipStatus:
- type: string
- enum:
- - ACTIVE
- - REMOVED
- - COLLABORATION_DELETED
- ResultFormat:
- type: string
- enum:
- - CSV
- - PARQUET
- ProtectedQueryS3OutputConfiguration:
+ maxLength: 36
+ minLength: 36
+ pattern: ^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$
+ IdMappingTableInputReferenceConfig:
type: object
- additionalProperties: false
properties:
- ResultFormat:
- $ref: '#/components/schemas/ResultFormat'
- Bucket:
- type: string
- minLength: 3
- maxLength: 63
- KeyPrefix:
+ InputReferenceArn:
type: string
+ maxLength: 2048
+ minLength: 20
+ ManageResourcePolicies:
+ type: boolean
required:
- - ResultFormat
- - Bucket
- MembershipProtectedQueryOutputConfiguration:
- type: object
+ - InputReferenceArn
+ - ManageResourcePolicies
additionalProperties: false
- properties:
- S3:
- $ref: '#/components/schemas/ProtectedQueryS3OutputConfiguration'
- required:
- - S3
- MembershipProtectedQueryResultConfiguration:
+ IdMappingTableInputSource:
type: object
- additionalProperties: false
properties:
- OutputConfiguration:
- $ref: '#/components/schemas/MembershipProtectedQueryOutputConfiguration'
- RoleArn:
+ IdNamespaceAssociationId:
type: string
- minLength: 32
- maxLength: 512
+ Type:
+ type: string
+ enum:
+ - SOURCE
+ - TARGET
required:
- - OutputConfiguration
- MembershipPaymentConfiguration:
- type: object
+ - IdNamespaceAssociationId
+ - Type
additionalProperties: false
- properties:
- QueryCompute:
- $ref: '#/components/schemas/MembershipQueryComputePaymentConfig'
- required:
- - QueryCompute
- MembershipQueryComputePaymentConfig:
+ IdMappingTableInputReferenceProperties:
type: object
- additionalProperties: false
properties:
- IsResponsible:
- type: boolean
+ IdMappingTableInputSource:
+ type: array
+ x-insertionOrder: false
+ items:
+ $ref: '#/components/schemas/IdMappingTableInputSource'
+ maxItems: 2
+ minItems: 2
required:
- - IsResponsible
- Membership:
+ - IdMappingTableInputSource
+ additionalProperties: false
+ IdMappingTable:
type: object
properties:
+ IdMappingTableIdentifier:
+ $ref: '#/components/schemas/UUID'
Arn:
type: string
- maxLength: 100
- Tags:
- description: An arbitrary set of tags (key-value pairs) for this cleanrooms membership.
- x-insertionOrder: false
- items:
- $ref: '#/components/schemas/Tag'
- uniqueItems: true
- type: array
+ maxLength: 200
+ InputReferenceConfig:
+ $ref: '#/components/schemas/IdMappingTableInputReferenceConfig'
+ MembershipIdentifier:
+ $ref: '#/components/schemas/UUID'
+ MembershipArn:
+ type: string
+ maxLength: 100
+ CollaborationIdentifier:
+ $ref: '#/components/schemas/UUID'
CollaborationArn:
type: string
maxLength: 100
- CollaborationCreatorAccountId:
+ Description:
type: string
- maxLength: 12
- minLength: 12
- pattern: ^\d+$
- CollaborationIdentifier:
+ maxLength: 255
+ pattern: ^[\u0020-\uD7FF\uE000-\uFFFD\uD800\uDBFF-\uDC00\uDFFF\t\r\n]*$
+ Name:
type: string
- maxLength: 36
- minLength: 36
- pattern: '[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}'
- MembershipIdentifier:
+ maxLength: 128
+ pattern: ^[a-zA-Z0-9_](([a-zA-Z0-9_ ]+-)*([a-zA-Z0-9_ ]+))?$
+ InputReferenceProperties:
+ $ref: '#/components/schemas/IdMappingTableInputReferenceProperties'
+ KmsKeyArn:
type: string
- maxLength: 36
- minLength: 36
- pattern: '[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}'
- QueryLogStatus:
- $ref: '#/components/schemas/MembershipQueryLogStatus'
- DefaultResultConfiguration:
- $ref: '#/components/schemas/MembershipProtectedQueryResultConfiguration'
- PaymentConfiguration:
- $ref: '#/components/schemas/MembershipPaymentConfiguration'
+ maxLength: 2048
+ minLength: 4
+ Tags:
+ type: array
+ x-insertionOrder: false
+ items:
+ $ref: '#/components/schemas/Tag'
+ uniqueItems: true
required:
- - CollaborationIdentifier
- - QueryLogStatus
- x-stackql-resource-name: membership
- description: Represents an AWS account that is a part of a collaboration
- x-type-name: AWS::CleanRooms::Membership
+ - MembershipIdentifier
+ - Name
+ - InputReferenceConfig
+ x-stackql-resource-name: id_mapping_table
+ description: Represents an association between an ID mapping workflow and a collaboration
+ x-type-name: AWS::CleanRooms::IdMappingTable
x-stackql-primary-identifier:
+ - IdMappingTableIdentifier
- MembershipIdentifier
x-create-only-properties:
- - CollaborationIdentifier
+ - MembershipIdentifier
+ - Name
+ - InputReferenceConfig
x-read-only-properties:
+ - IdMappingTableIdentifier
- Arn
+ - MembershipArn
+ - CollaborationIdentifier
- CollaborationArn
- - CollaborationCreatorAccountId
- - MembershipIdentifier
+ - InputReferenceProperties
x-required-properties:
- - CollaborationIdentifier
- - QueryLogStatus
+ - MembershipIdentifier
+ - Name
+ - InputReferenceConfig
x-tagging:
taggable: true
tagOnCreate: true
tagUpdatable: true
cloudFormationSystemTags: true
tagProperty: /properties/Tags
+ permissions:
+ - cleanrooms:ListTagsForResource
+ - cleanrooms:UntagResource
+ - cleanrooms:TagResource
x-required-permissions:
create:
- - cleanrooms:CreateMembership
- - logs:CreateLogDelivery
- - logs:GetLogDelivery
- - logs:UpdateLogDelivery
- - logs:DeleteLogDelivery
- - logs:ListLogDeliveries
- - logs:DescribeLogGroups
- - logs:DescribeResourcePolicies
- - logs:PutResourcePolicy
- - logs:CreateLogGroup
- - cleanrooms:GetMembership
+ - cleanrooms:CreateIdMappingTable
+ - cleanrooms:GetIdMappingTable
+ - cleanrooms:ListIdMappingTables
- cleanrooms:ListTagsForResource
- cleanrooms:TagResource
- - cleanrooms:ListMemberships
- - iam:PassRole
- read:
- cleanrooms:GetMembership
+ - cleanrooms:GetCollaboration
+ - entityresolution:GetIdMappingWorkflow
+ - entityresolution:AddPolicyStatement
+ read:
+ - cleanrooms:GetIdMappingTable
- cleanrooms:ListTagsForResource
- - logs:ListLogDeliveries
- - logs:DescribeLogGroups
- - logs:DescribeResourcePolicies
- - logs:GetLogDelivery
+ - cleanrooms:GetMembership
+ - cleanrooms:GetCollaboration
update:
- - cleanrooms:UpdateMembership
+ - cleanrooms:UpdateIdMappingTable
+ - cleanrooms:GetIdMappingTable
- cleanrooms:GetMembership
- - logs:CreateLogDelivery
- - logs:GetLogDelivery
- - logs:UpdateLogDelivery
- - logs:DeleteLogDelivery
- - logs:ListLogDeliveries
- - logs:DescribeLogGroups
- - logs:DescribeResourcePolicies
- - logs:PutResourcePolicy
- - logs:CreateLogGroup
- cleanrooms:ListTagsForResource
- cleanrooms:TagResource
- cleanrooms:UntagResource
- - iam:PassRole
+ - entityresolution:GetIdMappingWorkflow
+ - entityresolution:AddPolicyStatement
delete:
- - cleanrooms:DeleteMembership
+ - cleanrooms:DeleteIdMappingTable
+ - cleanrooms:GetIdMappingTable
+ - cleanrooms:ListIdMappingTables
- cleanrooms:GetMembership
- - cleanrooms:ListMemberships
- cleanrooms:ListTagsForResource
- - logs:ListLogDeliveries
- - logs:DescribeLogGroups
- - logs:DescribeResourcePolicies
- - logs:GetLogDelivery
+ - cleanrooms:UntagResource
+ - entityresolution:GetIdMappingWorkflow
+ - entityresolution:AddPolicyStatement
+ - entityresolution:DeletePolicyStatement
list:
- - cleanrooms:ListMemberships
- PrivacyBudgetTemplate:
+ - cleanrooms:ListIdMappingTables
+ - cleanrooms:GetMembership
+ - cleanrooms:GetCollaboration
+ Document:
+ type: object
+ IdNamespaceAssociationInputReferenceConfig:
+ type: object
+ properties:
+ InputReferenceArn:
+ type: string
+ maxLength: 256
+ ManageResourcePolicies:
+ type: boolean
+ required:
+ - InputReferenceArn
+ - ManageResourcePolicies
+ additionalProperties: false
+ IdMappingConfig:
+ type: object
+ properties:
+ AllowUseAsDimensionColumn:
+ type: boolean
+ required:
+ - AllowUseAsDimensionColumn
+ additionalProperties: false
+ IdNamespaceAssociationInputReferenceProperties:
+ type: object
+ properties:
+ IdNamespaceType:
+ type: string
+ enum:
+ - SOURCE
+ - TARGET
+ IdMappingWorkflowsSupported:
+ type: array
+ x-insertionOrder: false
+ items:
+ $ref: '#/components/schemas/Document'
+ required: []
+ additionalProperties: false
+ IdNamespaceAssociation:
type: object
properties:
+ IdNamespaceAssociationIdentifier:
+ $ref: '#/components/schemas/UUID'
Arn:
type: string
- maxLength: 200
- CollaborationArn:
+ maxLength: 256
+ MembershipIdentifier:
+ $ref: '#/components/schemas/UUID'
+ MembershipArn:
type: string
maxLength: 100
CollaborationIdentifier:
+ $ref: '#/components/schemas/UUID'
+ CollaborationArn:
type: string
- maxLength: 36
- minLength: 36
- pattern: '[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}'
- PrivacyBudgetTemplateIdentifier:
- type: string
- maxLength: 36
- minLength: 36
- pattern: '[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}'
+ maxLength: 100
+ InputReferenceConfig:
+ $ref: '#/components/schemas/IdNamespaceAssociationInputReferenceConfig'
Tags:
- description: An arbitrary set of tags (key-value pairs) for this cleanrooms privacy budget template.
+ type: array
x-insertionOrder: false
items:
$ref: '#/components/schemas/Tag'
- type: array
- AutoRefresh:
- type: string
- enum:
- - CALENDAR_MONTH
- - NONE
- PrivacyBudgetType:
- type: string
- enum:
- - DIFFERENTIAL_PRIVACY
- Parameters:
- type: object
- additionalProperties: false
- properties:
- Epsilon:
- type: integer
- minimum: 1
- maximum: 20
- UsersNoisePerQuery:
- type: integer
- minimum: 10
- maximum: 100
- required:
- - Epsilon
- - UsersNoisePerQuery
- MembershipArn:
+ uniqueItems: true
+ Name:
type: string
maxLength: 100
- MembershipIdentifier:
+ minLength: 1
+ pattern: ^(?!\s*$)[\u0020-\uD7FF\uE000-\uFFFD\uD800\uDBFF-\uDC00\uDFFF\t]*$
+ Description:
type: string
- maxLength: 36
- minLength: 36
- pattern: '[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}'
+ maxLength: 255
+ pattern: ^[\u0020-\uD7FF\uE000-\uFFFD\uD800\uDBFF-\uDC00\uDFFF\t\r\n]*$
+ IdMappingConfig:
+ $ref: '#/components/schemas/IdMappingConfig'
+ InputReferenceProperties:
+ $ref: '#/components/schemas/IdNamespaceAssociationInputReferenceProperties'
required:
- - AutoRefresh
- - PrivacyBudgetType
- - Parameters
- MembershipIdentifier
- x-stackql-resource-name: privacy_budget_template
- description: Represents a privacy budget within a collaboration
- x-type-name: AWS::CleanRooms::PrivacyBudgetTemplate
+ - InputReferenceConfig
+ - Name
+ x-stackql-resource-name: id_namespace_association
+ description: Represents an association between an ID namespace and a collaboration
+ x-type-name: AWS::CleanRooms::IdNamespaceAssociation
x-stackql-primary-identifier:
- - PrivacyBudgetTemplateIdentifier
+ - IdNamespaceAssociationIdentifier
- MembershipIdentifier
x-create-only-properties:
- MembershipIdentifier
- - PrivacyBudgetType
- - AutoRefresh
+ - InputReferenceConfig
x-read-only-properties:
- - CollaborationArn
- - CollaborationIdentifier
- - PrivacyBudgetTemplateIdentifier
+ - IdNamespaceAssociationIdentifier
- Arn
- MembershipArn
+ - CollaborationIdentifier
+ - CollaborationArn
+ - InputReferenceProperties
x-required-properties:
- - AutoRefresh
- - PrivacyBudgetType
- - Parameters
- MembershipIdentifier
- x-replacement-strategy: delete_then_create
+ - InputReferenceConfig
+ - Name
x-tagging:
taggable: true
tagOnCreate: true
tagUpdatable: true
cloudFormationSystemTags: true
tagProperty: /properties/Tags
+ permissions:
+ - cleanrooms:ListTagsForResource
+ - cleanrooms:UntagResource
+ - cleanrooms:TagResource
x-required-permissions:
create:
- - cleanrooms:CreatePrivacyBudgetTemplate
+ - cleanrooms:CreateIdNamespaceAssociation
+ - cleanrooms:GetIdNamespaceAssociation
+ - cleanrooms:ListIdNamespaceAssociations
- cleanrooms:ListTagsForResource
- cleanrooms:TagResource
- - cleanrooms:GetPrivacyBudgetTemplate
- - cleanrooms:ListPrivacyBudgetTemplates
+ - cleanrooms:GetMembership
+ - cleanrooms:GetCollaboration
+ - entityresolution:GetIdNamespace
+ - entityresolution:AddPolicyStatement
read:
- - cleanrooms:GetPrivacyBudgetTemplate
+ - cleanrooms:GetIdNamespaceAssociation
- cleanrooms:ListTagsForResource
+ - cleanrooms:GetMembership
+ - cleanrooms:GetCollaboration
+ - entityresolution:GetIdNamespace
update:
- - cleanrooms:UpdatePrivacyBudgetTemplate
- - cleanrooms:GetPrivacyBudgetTemplate
+ - cleanrooms:UpdateIdNamespaceAssociation
+ - cleanrooms:GetIdNamespaceAssociation
+ - cleanrooms:GetMembership
+ - cleanrooms:GetCollaboration
- cleanrooms:ListTagsForResource
- cleanrooms:TagResource
- cleanrooms:UntagResource
+ - entityresolution:GetIdNamespace
+ - entityresolution:AddPolicyStatement
delete:
- - cleanrooms:DeletePrivacyBudgetTemplate
- - cleanrooms:GetPrivacyBudgetTemplate
- - cleanrooms:ListPrivacyBudgetTemplates
+ - cleanrooms:DeleteIdNamespaceAssociation
+ - cleanrooms:GetIdNamespaceAssociation
+ - cleanrooms:ListIdNamespaceAssociations
+ - cleanrooms:GetMembership
+ - cleanrooms:GetCollaboration
- cleanrooms:ListTagsForResource
- cleanrooms:UntagResource
+ - entityresolution:GetIdNamespace
+ - entityresolution:DeletePolicyStatement
list:
- - cleanrooms:ListPrivacyBudgetTemplates
- CreateAnalysisTemplateRequest:
+ - cleanrooms:ListIdNamespaceAssociations
+ - cleanrooms:GetMembership
+ - cleanrooms:GetCollaboration
+ MembershipQueryLogStatus:
+ type: string
+ enum:
+ - ENABLED
+ - DISABLED
+ MembershipStatus:
+ type: string
+ enum:
+ - ACTIVE
+ - REMOVED
+ - COLLABORATION_DELETED
+ ResultFormat:
+ type: string
+ enum:
+ - CSV
+ - PARQUET
+ ProtectedQueryS3OutputConfiguration:
+ type: object
+ additionalProperties: false
properties:
- ClientToken:
+ ResultFormat:
+ $ref: '#/components/schemas/ResultFormat'
+ Bucket:
type: string
- RoleArn:
+ minLength: 3
+ maxLength: 63
+ KeyPrefix:
type: string
- TypeName:
- type: string
- TypeVersionId:
- type: string
- DesiredState:
- type: object
- properties:
- Arn:
- type: string
- maxLength: 200
- CollaborationArn:
- type: string
- maxLength: 100
- CollaborationIdentifier:
- type: string
- maxLength: 36
- minLength: 36
- pattern: '[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}'
- Tags:
- description: An arbitrary set of tags (key-value pairs) for this cleanrooms analysis template.
- x-insertionOrder: false
- items:
- $ref: '#/components/schemas/Tag'
- type: array
- AnalysisParameters:
- description: The member who can query can provide this placeholder for a literal data value in an analysis template
- x-insertionOrder: false
- items:
- $ref: '#/components/schemas/AnalysisParameter'
- type: array
- minItems: 0
- maxItems: 10
- AnalysisTemplateIdentifier:
- type: string
- maxLength: 36
- minLength: 36
- pattern: '[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}'
- Description:
- type: string
- maxLength: 255
- pattern: ^[\u0020-\uD7FF\uE000-\uFFFD\uD800\uDBFF-\uDC00\uDFFF\t\r\n]*$
- MembershipArn:
- type: string
- maxLength: 100
- MembershipIdentifier:
- type: string
- maxLength: 36
- minLength: 36
- pattern: '[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}'
- Name:
- type: string
- maxLength: 128
- pattern: ^[a-zA-Z0-9_](([a-zA-Z0-9_ ]+-)*([a-zA-Z0-9_ ]+))?$
- Schema:
- $ref: '#/components/schemas/AnalysisSchema'
- Source:
- $ref: '#/components/schemas/AnalysisSource'
- Format:
- type: string
- enum:
- - SQL
- x-stackQL-stringOnly: true
- x-title: CreateAnalysisTemplateRequest
+ SingleFileOutput:
+ type: boolean
+ required:
+ - ResultFormat
+ - Bucket
+ MembershipProtectedQueryOutputConfiguration:
type: object
- required: []
- CreateCollaborationRequest:
+ additionalProperties: false
properties:
- ClientToken:
- type: string
- RoleArn:
- type: string
- TypeName:
- type: string
- TypeVersionId:
- type: string
- DesiredState:
- type: object
- properties:
- Arn:
- type: string
- maxLength: 100
- Tags:
- description: An arbitrary set of tags (key-value pairs) for this cleanrooms collaboration.
- x-insertionOrder: false
- items:
- $ref: '#/components/schemas/Tag'
- uniqueItems: true
- type: array
- CollaborationIdentifier:
- type: string
- maxLength: 36
- minLength: 36
- pattern: '[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}'
- CreatorDisplayName:
- $ref: '#/components/schemas/Name'
- CreatorMemberAbilities:
- $ref: '#/components/schemas/MemberAbilities'
- DataEncryptionMetadata:
- $ref: '#/components/schemas/DataEncryptionMetadata'
- Description:
- type: string
- maxLength: 255
- minLength: 1
- pattern: ^(?!\s*$)[\u0020-\uD7FF\uE000-\uFFFD\uD800\uDBFF-\uDC00\uDFFF\t\r\n]*$
- Members:
- type: array
- x-insertionOrder: false
- items:
- $ref: '#/components/schemas/MemberSpecification'
- maxItems: 9
- minItems: 0
- Name:
- type: string
- maxLength: 100
- minLength: 1
- pattern: ^(?!\s*$)[\u0020-\uD7FF\uE000-\uFFFD\uD800\uDBFF-\uDC00\uDFFF\t]*$
- QueryLogStatus:
- $ref: '#/components/schemas/CollaborationQueryLogStatus'
- CreatorPaymentConfiguration:
- $ref: '#/components/schemas/PaymentConfiguration'
- x-stackQL-stringOnly: true
- x-title: CreateCollaborationRequest
+ S3:
+ $ref: '#/components/schemas/ProtectedQueryS3OutputConfiguration'
+ required:
+ - S3
+ MembershipProtectedQueryResultConfiguration:
type: object
- required: []
- CreateConfiguredTableRequest:
+ additionalProperties: false
properties:
- ClientToken:
- type: string
+ OutputConfiguration:
+ $ref: '#/components/schemas/MembershipProtectedQueryOutputConfiguration'
RoleArn:
type: string
- TypeName:
- type: string
- TypeVersionId:
- type: string
- DesiredState:
- type: object
- properties:
- Arn:
- type: string
- maxLength: 100
- Tags:
- description: An arbitrary set of tags (key-value pairs) for this cleanrooms collaboration.
- x-insertionOrder: false
- items:
- $ref: '#/components/schemas/Tag'
- uniqueItems: true
- type: array
- AllowedColumns:
- type: array
- x-insertionOrder: false
- items:
- type: string
- maxLength: 128
- pattern: ^[a-z0-9_](([a-z0-9_ ]+-)*([a-z0-9_ ]+))?$
- maxItems: 100
- minItems: 1
- AnalysisMethod:
- $ref: '#/components/schemas/AnalysisMethod'
- ConfiguredTableIdentifier:
- type: string
- maxLength: 36
- minLength: 36
- pattern: '[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}'
- Description:
- type: string
- maxLength: 255
- pattern: ^[\u0020-\uD7FF\uE000-\uFFFD\uD800\uDBFF-\uDC00\uDFFF\t\r\n]*$
- Name:
- type: string
- maxLength: 100
- minLength: 1
- pattern: ^(?!\s*$)[\u0020-\uD7FF\uE000-\uFFFD\uD800\uDBFF-\uDC00\uDFFF\t]*$
- AnalysisRules:
- type: array
- x-insertionOrder: false
- items:
- $ref: '#/components/schemas/AnalysisRule'
- maxItems: 1
- minItems: 1
- TableReference:
- $ref: '#/components/schemas/TableReference'
- x-stackQL-stringOnly: true
- x-title: CreateConfiguredTableRequest
+ minLength: 32
+ maxLength: 512
+ required:
+ - OutputConfiguration
+ MembershipPaymentConfiguration:
type: object
- required: []
- CreateConfiguredTableAssociationRequest:
+ additionalProperties: false
properties:
- ClientToken:
+ QueryCompute:
+ $ref: '#/components/schemas/MembershipQueryComputePaymentConfig'
+ MachineLearning:
+ $ref: '#/components/schemas/MembershipMLPaymentConfig'
+ required:
+ - QueryCompute
+ MembershipQueryComputePaymentConfig:
+ type: object
+ additionalProperties: false
+ properties:
+ IsResponsible:
+ type: boolean
+ required:
+ - IsResponsible
+ MembershipMLPaymentConfig:
+ type: object
+ additionalProperties: false
+ properties:
+ ModelTraining:
+ $ref: '#/components/schemas/MembershipModelTrainingPaymentConfig'
+ ModelInference:
+ $ref: '#/components/schemas/MembershipModelInferencePaymentConfig'
+ MembershipModelTrainingPaymentConfig:
+ type: object
+ additionalProperties: false
+ properties:
+ IsResponsible:
+ type: boolean
+ required:
+ - IsResponsible
+ MembershipModelInferencePaymentConfig:
+ type: object
+ additionalProperties: false
+ properties:
+ IsResponsible:
+ type: boolean
+ required:
+ - IsResponsible
+ Membership:
+ type: object
+ properties:
+ Arn:
type: string
- RoleArn:
+ maxLength: 100
+ Tags:
+ description: An arbitrary set of tags (key-value pairs) for this cleanrooms membership.
+ x-insertionOrder: false
+ items:
+ $ref: '#/components/schemas/Tag'
+ uniqueItems: true
+ type: array
+ CollaborationArn:
type: string
- TypeName:
+ maxLength: 100
+ CollaborationCreatorAccountId:
type: string
- TypeVersionId:
+ maxLength: 12
+ minLength: 12
+ pattern: ^\d+$
+ CollaborationIdentifier:
type: string
- DesiredState:
- type: object
- properties:
- Arn:
- type: string
- maxLength: 100
+ maxLength: 36
+ minLength: 36
+ pattern: '[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}'
+ MembershipIdentifier:
+ type: string
+ maxLength: 36
+ minLength: 36
+ pattern: '[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}'
+ QueryLogStatus:
+ $ref: '#/components/schemas/MembershipQueryLogStatus'
+ DefaultResultConfiguration:
+ $ref: '#/components/schemas/MembershipProtectedQueryResultConfiguration'
+ PaymentConfiguration:
+ $ref: '#/components/schemas/MembershipPaymentConfiguration'
+ required:
+ - CollaborationIdentifier
+ - QueryLogStatus
+ x-stackql-resource-name: membership
+ description: Represents an AWS account that is a part of a collaboration
+ x-type-name: AWS::CleanRooms::Membership
+ x-stackql-primary-identifier:
+ - MembershipIdentifier
+ x-create-only-properties:
+ - CollaborationIdentifier
+ x-read-only-properties:
+ - Arn
+ - CollaborationArn
+ - CollaborationCreatorAccountId
+ - MembershipIdentifier
+ x-required-properties:
+ - CollaborationIdentifier
+ - QueryLogStatus
+ x-tagging:
+ taggable: true
+ tagOnCreate: true
+ tagUpdatable: true
+ cloudFormationSystemTags: true
+ tagProperty: /properties/Tags
+ permissions:
+ - cleanrooms:ListTagsForResource
+ - cleanrooms:UntagResource
+ - cleanrooms:TagResource
+ x-required-permissions:
+ create:
+ - cleanrooms:CreateMembership
+ - logs:CreateLogDelivery
+ - logs:GetLogDelivery
+ - logs:UpdateLogDelivery
+ - logs:DeleteLogDelivery
+ - logs:ListLogDeliveries
+ - logs:DescribeLogGroups
+ - logs:DescribeResourcePolicies
+ - logs:PutResourcePolicy
+ - logs:CreateLogGroup
+ - cleanrooms:GetMembership
+ - cleanrooms:ListTagsForResource
+ - cleanrooms:TagResource
+ - cleanrooms:ListMemberships
+ - iam:PassRole
+ read:
+ - cleanrooms:GetMembership
+ - cleanrooms:ListTagsForResource
+ - logs:ListLogDeliveries
+ - logs:DescribeLogGroups
+ - logs:DescribeResourcePolicies
+ - logs:GetLogDelivery
+ update:
+ - cleanrooms:UpdateMembership
+ - cleanrooms:GetMembership
+ - logs:CreateLogDelivery
+ - logs:GetLogDelivery
+ - logs:UpdateLogDelivery
+ - logs:DeleteLogDelivery
+ - logs:ListLogDeliveries
+ - logs:DescribeLogGroups
+ - logs:DescribeResourcePolicies
+ - logs:PutResourcePolicy
+ - logs:CreateLogGroup
+ - cleanrooms:ListTagsForResource
+ - cleanrooms:TagResource
+ - cleanrooms:UntagResource
+ - iam:PassRole
+ delete:
+ - cleanrooms:DeleteMembership
+ - cleanrooms:GetMembership
+ - cleanrooms:ListMemberships
+ - cleanrooms:ListTagsForResource
+ - logs:ListLogDeliveries
+ - logs:DescribeLogGroups
+ - logs:DescribeResourcePolicies
+ - logs:GetLogDelivery
+ list:
+ - cleanrooms:ListMemberships
+ PrivacyBudgetTemplate:
+ type: object
+ properties:
+ Arn:
+ type: string
+ maxLength: 200
+ CollaborationArn:
+ type: string
+ maxLength: 100
+ CollaborationIdentifier:
+ type: string
+ maxLength: 36
+ minLength: 36
+ pattern: '[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}'
+ PrivacyBudgetTemplateIdentifier:
+ type: string
+ maxLength: 36
+ minLength: 36
+ pattern: '[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}'
+ Tags:
+ description: An arbitrary set of tags (key-value pairs) for this cleanrooms privacy budget template.
+ x-insertionOrder: false
+ items:
+ $ref: '#/components/schemas/Tag'
+ type: array
+ AutoRefresh:
+ type: string
+ enum:
+ - CALENDAR_MONTH
+ - NONE
+ PrivacyBudgetType:
+ type: string
+ enum:
+ - DIFFERENTIAL_PRIVACY
+ Parameters:
+ type: object
+ additionalProperties: false
+ properties:
+ Epsilon:
+ type: integer
+ minimum: 1
+ maximum: 20
+ UsersNoisePerQuery:
+ type: integer
+ minimum: 10
+ maximum: 100
+ required:
+ - Epsilon
+ - UsersNoisePerQuery
+ MembershipArn:
+ type: string
+ maxLength: 100
+ MembershipIdentifier:
+ type: string
+ maxLength: 36
+ minLength: 36
+ pattern: '[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}'
+ required:
+ - AutoRefresh
+ - PrivacyBudgetType
+ - Parameters
+ - MembershipIdentifier
+ x-stackql-resource-name: privacy_budget_template
+ description: Represents a privacy budget within a collaboration
+ x-type-name: AWS::CleanRooms::PrivacyBudgetTemplate
+ x-stackql-primary-identifier:
+ - PrivacyBudgetTemplateIdentifier
+ - MembershipIdentifier
+ x-create-only-properties:
+ - MembershipIdentifier
+ - PrivacyBudgetType
+ - AutoRefresh
+ x-read-only-properties:
+ - CollaborationArn
+ - CollaborationIdentifier
+ - PrivacyBudgetTemplateIdentifier
+ - Arn
+ - MembershipArn
+ x-required-properties:
+ - AutoRefresh
+ - PrivacyBudgetType
+ - Parameters
+ - MembershipIdentifier
+ x-replacement-strategy: delete_then_create
+ x-tagging:
+ taggable: true
+ tagOnCreate: true
+ tagUpdatable: true
+ cloudFormationSystemTags: true
+ tagProperty: /properties/Tags
+ permissions:
+ - cleanrooms:ListTagsForResource
+ - cleanrooms:UntagResource
+ - cleanrooms:TagResource
+ x-required-permissions:
+ create:
+ - cleanrooms:CreatePrivacyBudgetTemplate
+ - cleanrooms:ListTagsForResource
+ - cleanrooms:TagResource
+ - cleanrooms:GetPrivacyBudgetTemplate
+ - cleanrooms:ListPrivacyBudgetTemplates
+ read:
+ - cleanrooms:GetPrivacyBudgetTemplate
+ - cleanrooms:ListTagsForResource
+ update:
+ - cleanrooms:UpdatePrivacyBudgetTemplate
+ - cleanrooms:GetPrivacyBudgetTemplate
+ - cleanrooms:ListTagsForResource
+ - cleanrooms:TagResource
+ - cleanrooms:UntagResource
+ delete:
+ - cleanrooms:DeletePrivacyBudgetTemplate
+ - cleanrooms:GetPrivacyBudgetTemplate
+ - cleanrooms:ListPrivacyBudgetTemplates
+ - cleanrooms:ListTagsForResource
+ - cleanrooms:UntagResource
+ list:
+ - cleanrooms:ListPrivacyBudgetTemplates
+ CreateAnalysisTemplateRequest:
+ properties:
+ ClientToken:
+ type: string
+ RoleArn:
+ type: string
+ TypeName:
+ type: string
+ TypeVersionId:
+ type: string
+ DesiredState:
+ type: object
+ properties:
+ Arn:
+ type: string
+ maxLength: 200
+ CollaborationArn:
+ type: string
+ maxLength: 100
+ CollaborationIdentifier:
+ type: string
+ maxLength: 36
+ minLength: 36
+ pattern: '[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}'
Tags:
- description: An arbitrary set of tags (key-value pairs) for this cleanrooms collaboration.
+ description: An arbitrary set of tags (key-value pairs) for this cleanrooms analysis template.
x-insertionOrder: false
items:
$ref: '#/components/schemas/Tag'
type: array
- ConfiguredTableAssociationIdentifier:
- type: string
- maxLength: 36
- minLength: 36
- pattern: '[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}'
- ConfiguredTableIdentifier:
+ AnalysisParameters:
+ description: The member who can query can provide this placeholder for a literal data value in an analysis template
+ x-insertionOrder: false
+ items:
+ $ref: '#/components/schemas/AnalysisParameter'
+ type: array
+ minItems: 0
+ maxItems: 10
+ AnalysisTemplateIdentifier:
type: string
maxLength: 36
minLength: 36
@@ -1808,6 +2293,9 @@ components:
type: string
maxLength: 255
pattern: ^[\u0020-\uD7FF\uE000-\uFFFD\uD800\uDBFF-\uDC00\uDFFF\t\r\n]*$
+ MembershipArn:
+ type: string
+ maxLength: 100
MembershipIdentifier:
type: string
maxLength: 36
@@ -1817,15 +2305,19 @@ components:
type: string
maxLength: 128
pattern: ^[a-zA-Z0-9_](([a-zA-Z0-9_ ]+-)*([a-zA-Z0-9_ ]+))?$
- RoleArn:
- type: string
- maxLength: 512
- minLength: 32
+ Schema:
+ $ref: '#/components/schemas/AnalysisSchema'
+ Source:
+ $ref: '#/components/schemas/AnalysisSource'
+ Format:
+ type: string
+ enum:
+ - SQL
x-stackQL-stringOnly: true
- x-title: CreateConfiguredTableAssociationRequest
+ x-title: CreateAnalysisTemplateRequest
type: object
required: []
- CreateMembershipRequest:
+ CreateCollaborationRequest:
properties:
ClientToken:
type: string
@@ -1842,41 +2334,114 @@ components:
type: string
maxLength: 100
Tags:
- description: An arbitrary set of tags (key-value pairs) for this cleanrooms membership.
+ description: An arbitrary set of tags (key-value pairs) for this cleanrooms collaboration.
x-insertionOrder: false
items:
$ref: '#/components/schemas/Tag'
uniqueItems: true
type: array
- CollaborationArn:
- type: string
- maxLength: 100
- CollaborationCreatorAccountId:
- type: string
- maxLength: 12
- minLength: 12
- pattern: ^\d+$
CollaborationIdentifier:
type: string
maxLength: 36
minLength: 36
pattern: '[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}'
- MembershipIdentifier:
+ CreatorDisplayName:
+ $ref: '#/components/schemas/Name'
+ CreatorMemberAbilities:
+ $ref: '#/components/schemas/MemberAbilities'
+ CreatorMLMemberAbilities:
+ $ref: '#/components/schemas/MLMemberAbilities'
+ DataEncryptionMetadata:
+ $ref: '#/components/schemas/DataEncryptionMetadata'
+ Description:
+ type: string
+ maxLength: 255
+ minLength: 1
+ pattern: ^(?!\s*$)[\u0020-\uD7FF\uE000-\uFFFD\uD800\uDBFF-\uDC00\uDFFF\t\r\n]*$
+ Members:
+ type: array
+ x-insertionOrder: false
+ items:
+ $ref: '#/components/schemas/MemberSpecification'
+ maxItems: 9
+ minItems: 0
+ Name:
+ type: string
+ maxLength: 100
+ minLength: 1
+ pattern: ^(?!\s*$)[\u0020-\uD7FF\uE000-\uFFFD\uD800\uDBFF-\uDC00\uDFFF\t]*$
+ QueryLogStatus:
+ $ref: '#/components/schemas/CollaborationQueryLogStatus'
+ AnalyticsEngine:
+ $ref: '#/components/schemas/AnalyticsEngine'
+ CreatorPaymentConfiguration:
+ $ref: '#/components/schemas/PaymentConfiguration'
+ x-stackQL-stringOnly: true
+ x-title: CreateCollaborationRequest
+ type: object
+ required: []
+ CreateConfiguredTableRequest:
+ properties:
+ ClientToken:
+ type: string
+ RoleArn:
+ type: string
+ TypeName:
+ type: string
+ TypeVersionId:
+ type: string
+ DesiredState:
+ type: object
+ properties:
+ Arn:
+ type: string
+ maxLength: 100
+ Tags:
+ description: An arbitrary set of tags (key-value pairs) for this cleanrooms collaboration.
+ x-insertionOrder: false
+ items:
+ $ref: '#/components/schemas/Tag'
+ uniqueItems: true
+ type: array
+ AllowedColumns:
+ type: array
+ x-insertionOrder: false
+ items:
+ type: string
+ maxLength: 128
+ pattern: ^[a-z0-9_](([a-z0-9_ ]+-)*([a-z0-9_ ]+))?$
+ maxItems: 100
+ minItems: 1
+ AnalysisMethod:
+ $ref: '#/components/schemas/AnalysisMethod'
+ ConfiguredTableIdentifier:
type: string
maxLength: 36
minLength: 36
pattern: '[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}'
- QueryLogStatus:
- $ref: '#/components/schemas/MembershipQueryLogStatus'
- DefaultResultConfiguration:
- $ref: '#/components/schemas/MembershipProtectedQueryResultConfiguration'
- PaymentConfiguration:
- $ref: '#/components/schemas/MembershipPaymentConfiguration'
+ Description:
+ type: string
+ maxLength: 255
+ pattern: ^[\u0020-\uD7FF\uE000-\uFFFD\uD800\uDBFF-\uDC00\uDFFF\t\r\n]*$
+ Name:
+ type: string
+ maxLength: 100
+ minLength: 1
+ pattern: ^(?!\s*$)[\u0020-\uD7FF\uE000-\uFFFD\uD800\uDBFF-\uDC00\uDFFF\t]*$
+ AnalysisRules:
+ type: array
+ x-insertionOrder: false
+ items:
+ $ref: '#/components/schemas/AnalysisRule'
+ maxItems: 1
+ minItems: 1
+ TableReference:
+ $ref: '#/components/schemas/TableReference'
x-stackQL-stringOnly: true
- x-title: CreateMembershipRequest
+ x-title: CreateConfiguredTableRequest
type: object
required: []
- CreatePrivacyBudgetTemplateRequest:
+ CreateConfiguredTableAssociationRequest:
properties:
ClientToken:
type: string
@@ -1891,63 +2456,281 @@ components:
properties:
Arn:
type: string
- maxLength: 200
- CollaborationArn:
+ maxLength: 256
+ Tags:
+ description: An arbitrary set of tags (key-value pairs) for this cleanrooms collaboration.
+ x-insertionOrder: false
+ items:
+ $ref: '#/components/schemas/Tag'
+ type: array
+ ConfiguredTableAssociationIdentifier:
type: string
- maxLength: 100
- CollaborationIdentifier:
+ maxLength: 36
+ minLength: 36
+ pattern: '[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}'
+ ConfiguredTableIdentifier:
type: string
maxLength: 36
minLength: 36
pattern: '[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}'
- PrivacyBudgetTemplateIdentifier:
+ Description:
+ type: string
+ maxLength: 255
+ pattern: ^[\u0020-\uD7FF\uE000-\uFFFD\uD800\uDBFF-\uDC00\uDFFF\t\r\n]*$
+ MembershipIdentifier:
type: string
maxLength: 36
minLength: 36
pattern: '[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}'
+ Name:
+ type: string
+ maxLength: 128
+ pattern: ^[a-zA-Z0-9_](([a-zA-Z0-9_ ]+-)*([a-zA-Z0-9_ ]+))?$
+ RoleArn:
+ type: string
+ maxLength: 512
+ minLength: 32
+ ConfiguredTableAssociationAnalysisRules:
+ type: array
+ x-insertionOrder: false
+ items:
+ $ref: '#/components/schemas/ConfiguredTableAssociationAnalysisRule'
+ maxItems: 1
+ minItems: 1
+ x-stackQL-stringOnly: true
+ x-title: CreateConfiguredTableAssociationRequest
+ type: object
+ required: []
+ CreateIdMappingTableRequest:
+ properties:
+ ClientToken:
+ type: string
+ RoleArn:
+ type: string
+ TypeName:
+ type: string
+ TypeVersionId:
+ type: string
+ DesiredState:
+ type: object
+ properties:
+ IdMappingTableIdentifier:
+ $ref: '#/components/schemas/UUID'
+ Arn:
+ type: string
+ maxLength: 200
+ InputReferenceConfig:
+ $ref: '#/components/schemas/IdMappingTableInputReferenceConfig'
+ MembershipIdentifier:
+ $ref: '#/components/schemas/UUID'
+ MembershipArn:
+ type: string
+ maxLength: 100
+ CollaborationIdentifier:
+ $ref: '#/components/schemas/UUID'
+ CollaborationArn:
+ type: string
+ maxLength: 100
+ Description:
+ type: string
+ maxLength: 255
+ pattern: ^[\u0020-\uD7FF\uE000-\uFFFD\uD800\uDBFF-\uDC00\uDFFF\t\r\n]*$
+ Name:
+ type: string
+ maxLength: 128
+ pattern: ^[a-zA-Z0-9_](([a-zA-Z0-9_ ]+-)*([a-zA-Z0-9_ ]+))?$
+ InputReferenceProperties:
+ $ref: '#/components/schemas/IdMappingTableInputReferenceProperties'
+ KmsKeyArn:
+ type: string
+ maxLength: 2048
+ minLength: 4
Tags:
- description: An arbitrary set of tags (key-value pairs) for this cleanrooms privacy budget template.
+ type: array
x-insertionOrder: false
items:
$ref: '#/components/schemas/Tag'
- type: array
- AutoRefresh:
- type: string
- enum:
- - CALENDAR_MONTH
- - NONE
- PrivacyBudgetType:
+ uniqueItems: true
+ x-stackQL-stringOnly: true
+ x-title: CreateIdMappingTableRequest
+ type: object
+ required: []
+ CreateIdNamespaceAssociationRequest:
+ properties:
+ ClientToken:
+ type: string
+ RoleArn:
+ type: string
+ TypeName:
+ type: string
+ TypeVersionId:
+ type: string
+ DesiredState:
+ type: object
+ properties:
+ IdNamespaceAssociationIdentifier:
+ $ref: '#/components/schemas/UUID'
+ Arn:
type: string
- enum:
- - DIFFERENTIAL_PRIVACY
- Parameters:
- type: object
- additionalProperties: false
- properties:
- Epsilon:
- type: integer
- minimum: 1
- maximum: 20
- UsersNoisePerQuery:
- type: integer
- minimum: 10
- maximum: 100
- required:
- - Epsilon
- - UsersNoisePerQuery
+ maxLength: 256
+ MembershipIdentifier:
+ $ref: '#/components/schemas/UUID'
MembershipArn:
type: string
maxLength: 100
- MembershipIdentifier:
+ CollaborationIdentifier:
+ $ref: '#/components/schemas/UUID'
+ CollaborationArn:
type: string
- maxLength: 36
- minLength: 36
- pattern: '[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}'
+ maxLength: 100
+ InputReferenceConfig:
+ $ref: '#/components/schemas/IdNamespaceAssociationInputReferenceConfig'
+ Tags:
+ type: array
+ x-insertionOrder: false
+ items:
+ $ref: '#/components/schemas/Tag'
+ uniqueItems: true
+ Name:
+ type: string
+ maxLength: 100
+ minLength: 1
+ pattern: ^(?!\s*$)[\u0020-\uD7FF\uE000-\uFFFD\uD800\uDBFF-\uDC00\uDFFF\t]*$
+ Description:
+ type: string
+ maxLength: 255
+ pattern: ^[\u0020-\uD7FF\uE000-\uFFFD\uD800\uDBFF-\uDC00\uDFFF\t\r\n]*$
+ IdMappingConfig:
+ $ref: '#/components/schemas/IdMappingConfig'
+ InputReferenceProperties:
+ $ref: '#/components/schemas/IdNamespaceAssociationInputReferenceProperties'
x-stackQL-stringOnly: true
- x-title: CreatePrivacyBudgetTemplateRequest
+ x-title: CreateIdNamespaceAssociationRequest
type: object
required: []
- securitySchemes:
+ CreateMembershipRequest:
+ properties:
+ ClientToken:
+ type: string
+ RoleArn:
+ type: string
+ TypeName:
+ type: string
+ TypeVersionId:
+ type: string
+ DesiredState:
+ type: object
+ properties:
+ Arn:
+ type: string
+ maxLength: 100
+ Tags:
+ description: An arbitrary set of tags (key-value pairs) for this cleanrooms membership.
+ x-insertionOrder: false
+ items:
+ $ref: '#/components/schemas/Tag'
+ uniqueItems: true
+ type: array
+ CollaborationArn:
+ type: string
+ maxLength: 100
+ CollaborationCreatorAccountId:
+ type: string
+ maxLength: 12
+ minLength: 12
+ pattern: ^\d+$
+ CollaborationIdentifier:
+ type: string
+ maxLength: 36
+ minLength: 36
+ pattern: '[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}'
+ MembershipIdentifier:
+ type: string
+ maxLength: 36
+ minLength: 36
+ pattern: '[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}'
+ QueryLogStatus:
+ $ref: '#/components/schemas/MembershipQueryLogStatus'
+ DefaultResultConfiguration:
+ $ref: '#/components/schemas/MembershipProtectedQueryResultConfiguration'
+ PaymentConfiguration:
+ $ref: '#/components/schemas/MembershipPaymentConfiguration'
+ x-stackQL-stringOnly: true
+ x-title: CreateMembershipRequest
+ type: object
+ required: []
+ CreatePrivacyBudgetTemplateRequest:
+ properties:
+ ClientToken:
+ type: string
+ RoleArn:
+ type: string
+ TypeName:
+ type: string
+ TypeVersionId:
+ type: string
+ DesiredState:
+ type: object
+ properties:
+ Arn:
+ type: string
+ maxLength: 200
+ CollaborationArn:
+ type: string
+ maxLength: 100
+ CollaborationIdentifier:
+ type: string
+ maxLength: 36
+ minLength: 36
+ pattern: '[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}'
+ PrivacyBudgetTemplateIdentifier:
+ type: string
+ maxLength: 36
+ minLength: 36
+ pattern: '[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}'
+ Tags:
+ description: An arbitrary set of tags (key-value pairs) for this cleanrooms privacy budget template.
+ x-insertionOrder: false
+ items:
+ $ref: '#/components/schemas/Tag'
+ type: array
+ AutoRefresh:
+ type: string
+ enum:
+ - CALENDAR_MONTH
+ - NONE
+ PrivacyBudgetType:
+ type: string
+ enum:
+ - DIFFERENTIAL_PRIVACY
+ Parameters:
+ type: object
+ additionalProperties: false
+ properties:
+ Epsilon:
+ type: integer
+ minimum: 1
+ maximum: 20
+ UsersNoisePerQuery:
+ type: integer
+ minimum: 10
+ maximum: 100
+ required:
+ - Epsilon
+ - UsersNoisePerQuery
+ MembershipArn:
+ type: string
+ maxLength: 100
+ MembershipIdentifier:
+ type: string
+ maxLength: 36
+ minLength: 36
+ pattern: '[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}'
+ x-stackQL-stringOnly: true
+ x-title: CreatePrivacyBudgetTemplateRequest
+ type: object
+ required: []
+ securitySchemes:
hmac:
type: apiKey
name: Authorization
@@ -1961,8 +2744,509 @@ components:
x-cfn-schema-name: AnalysisTemplate
x-cfn-type-name: AWS::CleanRooms::AnalysisTemplate
x-identifiers:
- - AnalysisTemplateIdentifier
- - MembershipIdentifier
+ - AnalysisTemplateIdentifier
+ - MembershipIdentifier
+ x-type: cloud_control
+ methods:
+ create_resource:
+ config:
+ requestBodyTranslate:
+ algorithm: naive_DesiredState
+ operation:
+ $ref: '#/paths/~1?Action=CreateResource&Version=2021-09-30&__AnalysisTemplate&__detailTransformed=true/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::CleanRooms::AnalysisTemplate"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ update_resource:
+ operation:
+ $ref: '#/paths/~1?Action=UpdateResource&Version=2021-09-30/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::CleanRooms::AnalysisTemplate"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ delete_resource:
+ operation:
+ $ref: '#/paths/~1?Action=DeleteResource&Version=2021-09-30/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::CleanRooms::AnalysisTemplate"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ sqlVerbs:
+ insert:
+ - $ref: '#/components/x-stackQL-resources/analysis_templates/methods/create_resource'
+ delete:
+ - $ref: '#/components/x-stackQL-resources/analysis_templates/methods/delete_resource'
+ update:
+ - $ref: '#/components/x-stackQL-resources/analysis_templates/methods/update_resource'
+ config:
+ views:
+ select:
+ predicate: sqlDialect == "sqlite3" && requiredParams == [ data__Identifier ]
+ ddl: |-
+ SELECT
+ region,
+ data__Identifier,
+ JSON_EXTRACT(Properties, '$.Arn') as arn,
+ JSON_EXTRACT(Properties, '$.CollaborationArn') as collaboration_arn,
+ JSON_EXTRACT(Properties, '$.CollaborationIdentifier') as collaboration_identifier,
+ JSON_EXTRACT(Properties, '$.Tags') as tags,
+ JSON_EXTRACT(Properties, '$.AnalysisParameters') as analysis_parameters,
+ JSON_EXTRACT(Properties, '$.AnalysisTemplateIdentifier') as analysis_template_identifier,
+ JSON_EXTRACT(Properties, '$.Description') as description,
+ JSON_EXTRACT(Properties, '$.MembershipArn') as membership_arn,
+ JSON_EXTRACT(Properties, '$.MembershipIdentifier') as membership_identifier,
+ JSON_EXTRACT(Properties, '$.Name') as name,
+ JSON_EXTRACT(Properties, '$.Schema') as _schema,
+ JSON_EXTRACT(Properties, '$.Source') as source,
+ JSON_EXTRACT(Properties, '$.Format') as _format
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::CleanRooms::AnalysisTemplate'
+ AND data__Identifier = '|'
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "sqlite3"
+ ddl: |-
+ SELECT
+ detail.region,
+ JSON_EXTRACT(detail.Properties, '$.Arn') as arn,
+ JSON_EXTRACT(detail.Properties, '$.CollaborationArn') as collaboration_arn,
+ JSON_EXTRACT(detail.Properties, '$.CollaborationIdentifier') as collaboration_identifier,
+ JSON_EXTRACT(detail.Properties, '$.Tags') as tags,
+ JSON_EXTRACT(detail.Properties, '$.AnalysisParameters') as analysis_parameters,
+ JSON_EXTRACT(detail.Properties, '$.AnalysisTemplateIdentifier') as analysis_template_identifier,
+ JSON_EXTRACT(detail.Properties, '$.Description') as description,
+ JSON_EXTRACT(detail.Properties, '$.MembershipArn') as membership_arn,
+ JSON_EXTRACT(detail.Properties, '$.MembershipIdentifier') as membership_identifier,
+ JSON_EXTRACT(detail.Properties, '$.Name') as name,
+ JSON_EXTRACT(detail.Properties, '$.Schema') as _schema,
+ JSON_EXTRACT(detail.Properties, '$.Source') as source,
+ JSON_EXTRACT(detail.Properties, '$.Format') as _format
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ WHERE listing.data__TypeName = 'AWS::CleanRooms::AnalysisTemplate'
+ AND detail.data__TypeName = 'AWS::CleanRooms::AnalysisTemplate'
+ AND listing.region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres" && requiredParams == [ data__Identifier ]
+ ddl: |-
+ SELECT
+ region,
+ data__Identifier,
+ json_extract_path_text(Properties, 'Arn') as arn,
+ json_extract_path_text(Properties, 'CollaborationArn') as collaboration_arn,
+ json_extract_path_text(Properties, 'CollaborationIdentifier') as collaboration_identifier,
+ json_extract_path_text(Properties, 'Tags') as tags,
+ json_extract_path_text(Properties, 'AnalysisParameters') as analysis_parameters,
+ json_extract_path_text(Properties, 'AnalysisTemplateIdentifier') as analysis_template_identifier,
+ json_extract_path_text(Properties, 'Description') as description,
+ json_extract_path_text(Properties, 'MembershipArn') as membership_arn,
+ json_extract_path_text(Properties, 'MembershipIdentifier') as membership_identifier,
+ json_extract_path_text(Properties, 'Name') as name,
+ json_extract_path_text(Properties, 'Schema') as _schema,
+ json_extract_path_text(Properties, 'Source') as source,
+ json_extract_path_text(Properties, 'Format') as _format
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::CleanRooms::AnalysisTemplate'
+ AND data__Identifier = '|'
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres"
+ ddl: |-
+ SELECT
+ detail.region,
+ json_extract_path_text(detail.Properties, 'Arn') as arn,
+ json_extract_path_text(detail.Properties, 'CollaborationArn') as collaboration_arn,
+ json_extract_path_text(detail.Properties, 'CollaborationIdentifier') as collaboration_identifier,
+ json_extract_path_text(detail.Properties, 'Tags') as tags,
+ json_extract_path_text(detail.Properties, 'AnalysisParameters') as analysis_parameters,
+ json_extract_path_text(detail.Properties, 'AnalysisTemplateIdentifier') as analysis_template_identifier,
+ json_extract_path_text(detail.Properties, 'Description') as description,
+ json_extract_path_text(detail.Properties, 'MembershipArn') as membership_arn,
+ json_extract_path_text(detail.Properties, 'MembershipIdentifier') as membership_identifier,
+ json_extract_path_text(detail.Properties, 'Name') as name,
+ json_extract_path_text(detail.Properties, 'Schema') as _schema,
+ json_extract_path_text(detail.Properties, 'Source') as source,
+ json_extract_path_text(detail.Properties, 'Format') as _format
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ WHERE listing.data__TypeName = 'AWS::CleanRooms::AnalysisTemplate'
+ AND detail.data__TypeName = 'AWS::CleanRooms::AnalysisTemplate'
+ AND listing.region = 'us-east-1'
+ analysis_templates_list_only:
+ name: analysis_templates_list_only
+ id: aws.cleanrooms.analysis_templates_list_only
+ x-cfn-schema-name: AnalysisTemplate
+ x-cfn-type-name: AWS::CleanRooms::AnalysisTemplate
+ x-identifiers:
+ - AnalysisTemplateIdentifier
+ - MembershipIdentifier
+ x-type: cloud_control_view
+ methods: {}
+ sqlVerbs:
+ insert: []
+ delete: []
+ update: []
+ config:
+ views:
+ select:
+ predicate: sqlDialect == "sqlite3"
+ ddl: |-
+ SELECT
+ region,
+ JSON_EXTRACT(Properties, '$.AnalysisTemplateIdentifier') as analysis_template_identifier,
+ JSON_EXTRACT(Properties, '$.MembershipIdentifier') as membership_identifier
+ FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::CleanRooms::AnalysisTemplate'
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres"
+ ddl: |-
+ SELECT
+ region,
+ json_extract_path_text(Properties, 'AnalysisTemplateIdentifier') as analysis_template_identifier,
+ json_extract_path_text(Properties, 'MembershipIdentifier') as membership_identifier
+ FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::CleanRooms::AnalysisTemplate'
+ AND region = 'us-east-1'
+ analysis_template_tags:
+ name: analysis_template_tags
+ id: aws.cleanrooms.analysis_template_tags
+ x-cfn-schema-name: AnalysisTemplate
+ x-cfn-type-name: AWS::CleanRooms::AnalysisTemplate
+ x-type: cloud_control_view
+ methods: {}
+ sqlVerbs:
+ insert: []
+ delete: []
+ update: []
+ config:
+ views:
+ select:
+ predicate: sqlDialect == "sqlite3"
+ ddl: |-
+ SELECT
+ detail.region,
+ JSON_EXTRACT(json_each.value, '$.Key') as tag_key,
+ JSON_EXTRACT(json_each.value, '$.Value') as tag_value,
+ JSON_EXTRACT(detail.Properties, '$.Arn') as arn,
+ JSON_EXTRACT(detail.Properties, '$.CollaborationArn') as collaboration_arn,
+ JSON_EXTRACT(detail.Properties, '$.CollaborationIdentifier') as collaboration_identifier,
+ JSON_EXTRACT(detail.Properties, '$.AnalysisParameters') as analysis_parameters,
+ JSON_EXTRACT(detail.Properties, '$.AnalysisTemplateIdentifier') as analysis_template_identifier,
+ JSON_EXTRACT(detail.Properties, '$.Description') as description,
+ JSON_EXTRACT(detail.Properties, '$.MembershipArn') as membership_arn,
+ JSON_EXTRACT(detail.Properties, '$.MembershipIdentifier') as membership_identifier,
+ JSON_EXTRACT(detail.Properties, '$.Name') as name,
+ JSON_EXTRACT(detail.Properties, '$.Schema') as _schema,
+ JSON_EXTRACT(detail.Properties, '$.Source') as source,
+ JSON_EXTRACT(detail.Properties, '$.Format') as _format
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ ,json_each(JSON_EXTRACT(detail.Properties, '$.Tags'))
+ WHERE listing.data__TypeName = 'AWS::CleanRooms::AnalysisTemplate'
+ AND detail.data__TypeName = 'AWS::CleanRooms::AnalysisTemplate'
+ AND listing.region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres"
+ ddl: |-
+ SELECT
+ detail.region,
+ json_extract_path_text(json_each.value, 'Key') as tag_key,
+ json_extract_path_text(json_each.value, 'Value') as tag_value,
+ json_extract_path_text(detail.Properties, 'Arn') as arn,
+ json_extract_path_text(detail.Properties, 'CollaborationArn') as collaboration_arn,
+ json_extract_path_text(detail.Properties, 'CollaborationIdentifier') as collaboration_identifier,
+ json_extract_path_text(detail.Properties, 'AnalysisParameters') as analysis_parameters,
+ json_extract_path_text(detail.Properties, 'AnalysisTemplateIdentifier') as analysis_template_identifier,
+ json_extract_path_text(detail.Properties, 'Description') as description,
+ json_extract_path_text(detail.Properties, 'MembershipArn') as membership_arn,
+ json_extract_path_text(detail.Properties, 'MembershipIdentifier') as membership_identifier,
+ json_extract_path_text(detail.Properties, 'Name') as name,
+ json_extract_path_text(detail.Properties, 'Schema') as _schema,
+ json_extract_path_text(detail.Properties, 'Source') as source,
+ json_extract_path_text(detail.Properties, 'Format') as _format
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ ,json_array_elements_text(json_extract_path_text(detail.Properties, 'Tags'))
+ WHERE listing.data__TypeName = 'AWS::CleanRooms::AnalysisTemplate'
+ AND detail.data__TypeName = 'AWS::CleanRooms::AnalysisTemplate'
+ AND listing.region = 'us-east-1'
+ collaborations:
+ name: collaborations
+ id: aws.cleanrooms.collaborations
+ x-cfn-schema-name: Collaboration
+ x-cfn-type-name: AWS::CleanRooms::Collaboration
+ x-identifiers:
+ - CollaborationIdentifier
+ x-type: cloud_control
+ methods:
+ create_resource:
+ config:
+ requestBodyTranslate:
+ algorithm: naive_DesiredState
+ operation:
+ $ref: '#/paths/~1?Action=CreateResource&Version=2021-09-30&__Collaboration&__detailTransformed=true/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::CleanRooms::Collaboration"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ update_resource:
+ operation:
+ $ref: '#/paths/~1?Action=UpdateResource&Version=2021-09-30/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::CleanRooms::Collaboration"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ delete_resource:
+ operation:
+ $ref: '#/paths/~1?Action=DeleteResource&Version=2021-09-30/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::CleanRooms::Collaboration"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ sqlVerbs:
+ insert:
+ - $ref: '#/components/x-stackQL-resources/collaborations/methods/create_resource'
+ delete:
+ - $ref: '#/components/x-stackQL-resources/collaborations/methods/delete_resource'
+ update:
+ - $ref: '#/components/x-stackQL-resources/collaborations/methods/update_resource'
+ config:
+ views:
+ select:
+ predicate: sqlDialect == "sqlite3" && requiredParams == [ data__Identifier ]
+ ddl: |-
+ SELECT
+ region,
+ data__Identifier,
+ JSON_EXTRACT(Properties, '$.Arn') as arn,
+ JSON_EXTRACT(Properties, '$.Tags') as tags,
+ JSON_EXTRACT(Properties, '$.CollaborationIdentifier') as collaboration_identifier,
+ JSON_EXTRACT(Properties, '$.CreatorDisplayName') as creator_display_name,
+ JSON_EXTRACT(Properties, '$.CreatorMemberAbilities') as creator_member_abilities,
+ JSON_EXTRACT(Properties, '$.CreatorMLMemberAbilities') as creator_ml_member_abilities,
+ JSON_EXTRACT(Properties, '$.DataEncryptionMetadata') as data_encryption_metadata,
+ JSON_EXTRACT(Properties, '$.Description') as description,
+ JSON_EXTRACT(Properties, '$.Members') as members,
+ JSON_EXTRACT(Properties, '$.Name') as name,
+ JSON_EXTRACT(Properties, '$.QueryLogStatus') as query_log_status,
+ JSON_EXTRACT(Properties, '$.AnalyticsEngine') as analytics_engine,
+ JSON_EXTRACT(Properties, '$.CreatorPaymentConfiguration') as creator_payment_configuration
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::CleanRooms::Collaboration'
+ AND data__Identifier = ''
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "sqlite3"
+ ddl: |-
+ SELECT
+ detail.region,
+ JSON_EXTRACT(detail.Properties, '$.Arn') as arn,
+ JSON_EXTRACT(detail.Properties, '$.Tags') as tags,
+ JSON_EXTRACT(detail.Properties, '$.CollaborationIdentifier') as collaboration_identifier,
+ JSON_EXTRACT(detail.Properties, '$.CreatorDisplayName') as creator_display_name,
+ JSON_EXTRACT(detail.Properties, '$.CreatorMemberAbilities') as creator_member_abilities,
+ JSON_EXTRACT(detail.Properties, '$.CreatorMLMemberAbilities') as creator_ml_member_abilities,
+ JSON_EXTRACT(detail.Properties, '$.DataEncryptionMetadata') as data_encryption_metadata,
+ JSON_EXTRACT(detail.Properties, '$.Description') as description,
+ JSON_EXTRACT(detail.Properties, '$.Members') as members,
+ JSON_EXTRACT(detail.Properties, '$.Name') as name,
+ JSON_EXTRACT(detail.Properties, '$.QueryLogStatus') as query_log_status,
+ JSON_EXTRACT(detail.Properties, '$.AnalyticsEngine') as analytics_engine,
+ JSON_EXTRACT(detail.Properties, '$.CreatorPaymentConfiguration') as creator_payment_configuration
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ WHERE listing.data__TypeName = 'AWS::CleanRooms::Collaboration'
+ AND detail.data__TypeName = 'AWS::CleanRooms::Collaboration'
+ AND listing.region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres" && requiredParams == [ data__Identifier ]
+ ddl: |-
+ SELECT
+ region,
+ data__Identifier,
+ json_extract_path_text(Properties, 'Arn') as arn,
+ json_extract_path_text(Properties, 'Tags') as tags,
+ json_extract_path_text(Properties, 'CollaborationIdentifier') as collaboration_identifier,
+ json_extract_path_text(Properties, 'CreatorDisplayName') as creator_display_name,
+ json_extract_path_text(Properties, 'CreatorMemberAbilities') as creator_member_abilities,
+ json_extract_path_text(Properties, 'CreatorMLMemberAbilities') as creator_ml_member_abilities,
+ json_extract_path_text(Properties, 'DataEncryptionMetadata') as data_encryption_metadata,
+ json_extract_path_text(Properties, 'Description') as description,
+ json_extract_path_text(Properties, 'Members') as members,
+ json_extract_path_text(Properties, 'Name') as name,
+ json_extract_path_text(Properties, 'QueryLogStatus') as query_log_status,
+ json_extract_path_text(Properties, 'AnalyticsEngine') as analytics_engine,
+ json_extract_path_text(Properties, 'CreatorPaymentConfiguration') as creator_payment_configuration
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::CleanRooms::Collaboration'
+ AND data__Identifier = ''
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres"
+ ddl: |-
+ SELECT
+ detail.region,
+ json_extract_path_text(detail.Properties, 'Arn') as arn,
+ json_extract_path_text(detail.Properties, 'Tags') as tags,
+ json_extract_path_text(detail.Properties, 'CollaborationIdentifier') as collaboration_identifier,
+ json_extract_path_text(detail.Properties, 'CreatorDisplayName') as creator_display_name,
+ json_extract_path_text(detail.Properties, 'CreatorMemberAbilities') as creator_member_abilities,
+ json_extract_path_text(detail.Properties, 'CreatorMLMemberAbilities') as creator_ml_member_abilities,
+ json_extract_path_text(detail.Properties, 'DataEncryptionMetadata') as data_encryption_metadata,
+ json_extract_path_text(detail.Properties, 'Description') as description,
+ json_extract_path_text(detail.Properties, 'Members') as members,
+ json_extract_path_text(detail.Properties, 'Name') as name,
+ json_extract_path_text(detail.Properties, 'QueryLogStatus') as query_log_status,
+ json_extract_path_text(detail.Properties, 'AnalyticsEngine') as analytics_engine,
+ json_extract_path_text(detail.Properties, 'CreatorPaymentConfiguration') as creator_payment_configuration
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ WHERE listing.data__TypeName = 'AWS::CleanRooms::Collaboration'
+ AND detail.data__TypeName = 'AWS::CleanRooms::Collaboration'
+ AND listing.region = 'us-east-1'
+ collaborations_list_only:
+ name: collaborations_list_only
+ id: aws.cleanrooms.collaborations_list_only
+ x-cfn-schema-name: Collaboration
+ x-cfn-type-name: AWS::CleanRooms::Collaboration
+ x-identifiers:
+ - CollaborationIdentifier
+ x-type: cloud_control_view
+ methods: {}
+ sqlVerbs:
+ insert: []
+ delete: []
+ update: []
+ config:
+ views:
+ select:
+ predicate: sqlDialect == "sqlite3"
+ ddl: |-
+ SELECT
+ region,
+ JSON_EXTRACT(Properties, '$.CollaborationIdentifier') as collaboration_identifier
+ FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::CleanRooms::Collaboration'
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres"
+ ddl: |-
+ SELECT
+ region,
+ json_extract_path_text(Properties, 'CollaborationIdentifier') as collaboration_identifier
+ FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::CleanRooms::Collaboration'
+ AND region = 'us-east-1'
+ collaboration_tags:
+ name: collaboration_tags
+ id: aws.cleanrooms.collaboration_tags
+ x-cfn-schema-name: Collaboration
+ x-cfn-type-name: AWS::CleanRooms::Collaboration
+ x-type: cloud_control_view
+ methods: {}
+ sqlVerbs:
+ insert: []
+ delete: []
+ update: []
+ config:
+ views:
+ select:
+ predicate: sqlDialect == "sqlite3"
+ ddl: |-
+ SELECT
+ detail.region,
+ JSON_EXTRACT(json_each.value, '$.Key') as tag_key,
+ JSON_EXTRACT(json_each.value, '$.Value') as tag_value,
+ JSON_EXTRACT(detail.Properties, '$.Arn') as arn,
+ JSON_EXTRACT(detail.Properties, '$.CollaborationIdentifier') as collaboration_identifier,
+ JSON_EXTRACT(detail.Properties, '$.CreatorDisplayName') as creator_display_name,
+ JSON_EXTRACT(detail.Properties, '$.CreatorMemberAbilities') as creator_member_abilities,
+ JSON_EXTRACT(detail.Properties, '$.CreatorMLMemberAbilities') as creator_ml_member_abilities,
+ JSON_EXTRACT(detail.Properties, '$.DataEncryptionMetadata') as data_encryption_metadata,
+ JSON_EXTRACT(detail.Properties, '$.Description') as description,
+ JSON_EXTRACT(detail.Properties, '$.Members') as members,
+ JSON_EXTRACT(detail.Properties, '$.Name') as name,
+ JSON_EXTRACT(detail.Properties, '$.QueryLogStatus') as query_log_status,
+ JSON_EXTRACT(detail.Properties, '$.AnalyticsEngine') as analytics_engine,
+ JSON_EXTRACT(detail.Properties, '$.CreatorPaymentConfiguration') as creator_payment_configuration
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ ,json_each(JSON_EXTRACT(detail.Properties, '$.Tags'))
+ WHERE listing.data__TypeName = 'AWS::CleanRooms::Collaboration'
+ AND detail.data__TypeName = 'AWS::CleanRooms::Collaboration'
+ AND listing.region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres"
+ ddl: |-
+ SELECT
+ detail.region,
+ json_extract_path_text(json_each.value, 'Key') as tag_key,
+ json_extract_path_text(json_each.value, 'Value') as tag_value,
+ json_extract_path_text(detail.Properties, 'Arn') as arn,
+ json_extract_path_text(detail.Properties, 'CollaborationIdentifier') as collaboration_identifier,
+ json_extract_path_text(detail.Properties, 'CreatorDisplayName') as creator_display_name,
+ json_extract_path_text(detail.Properties, 'CreatorMemberAbilities') as creator_member_abilities,
+ json_extract_path_text(detail.Properties, 'CreatorMLMemberAbilities') as creator_ml_member_abilities,
+ json_extract_path_text(detail.Properties, 'DataEncryptionMetadata') as data_encryption_metadata,
+ json_extract_path_text(detail.Properties, 'Description') as description,
+ json_extract_path_text(detail.Properties, 'Members') as members,
+ json_extract_path_text(detail.Properties, 'Name') as name,
+ json_extract_path_text(detail.Properties, 'QueryLogStatus') as query_log_status,
+ json_extract_path_text(detail.Properties, 'AnalyticsEngine') as analytics_engine,
+ json_extract_path_text(detail.Properties, 'CreatorPaymentConfiguration') as creator_payment_configuration
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ ,json_array_elements_text(json_extract_path_text(detail.Properties, 'Tags'))
+ WHERE listing.data__TypeName = 'AWS::CleanRooms::Collaboration'
+ AND detail.data__TypeName = 'AWS::CleanRooms::Collaboration'
+ AND listing.region = 'us-east-1'
+ configured_tables:
+ name: configured_tables
+ id: aws.cleanrooms.configured_tables
+ x-cfn-schema-name: ConfiguredTable
+ x-cfn-type-name: AWS::CleanRooms::ConfiguredTable
+ x-identifiers:
+ - ConfiguredTableIdentifier
x-type: cloud_control
methods:
create_resource:
@@ -1970,12 +3254,12 @@ components:
requestBodyTranslate:
algorithm: naive_DesiredState
operation:
- $ref: '#/paths/~1?Action=CreateResource&Version=2021-09-30&__AnalysisTemplate&__detailTransformed=true/post'
+ $ref: '#/paths/~1?Action=CreateResource&Version=2021-09-30&__ConfiguredTable&__detailTransformed=true/post'
request:
mediaType: application/x-amz-json-1.0
base: |-
{
- "TypeName": "AWS::CleanRooms::AnalysisTemplate"
+ "TypeName": "AWS::CleanRooms::ConfiguredTable"
}
response:
mediaType: application/json
@@ -1987,7 +3271,7 @@ components:
mediaType: application/x-amz-json-1.0
base: |-
{
- "TypeName": "AWS::CleanRooms::AnalysisTemplate"
+ "TypeName": "AWS::CleanRooms::ConfiguredTable"
}
response:
mediaType: application/json
@@ -1999,18 +3283,18 @@ components:
mediaType: application/x-amz-json-1.0
base: |-
{
- "TypeName": "AWS::CleanRooms::AnalysisTemplate"
+ "TypeName": "AWS::CleanRooms::ConfiguredTable"
}
response:
mediaType: application/json
openAPIDocKey: '200'
sqlVerbs:
insert:
- - $ref: '#/components/x-stackQL-resources/analysis_templates/methods/create_resource'
+ - $ref: '#/components/x-stackQL-resources/configured_tables/methods/create_resource'
delete:
- - $ref: '#/components/x-stackQL-resources/analysis_templates/methods/delete_resource'
+ - $ref: '#/components/x-stackQL-resources/configured_tables/methods/delete_resource'
update:
- - $ref: '#/components/x-stackQL-resources/analysis_templates/methods/update_resource'
+ - $ref: '#/components/x-stackQL-resources/configured_tables/methods/update_resource'
config:
views:
select:
@@ -2020,20 +3304,16 @@ components:
region,
data__Identifier,
JSON_EXTRACT(Properties, '$.Arn') as arn,
- JSON_EXTRACT(Properties, '$.CollaborationArn') as collaboration_arn,
- JSON_EXTRACT(Properties, '$.CollaborationIdentifier') as collaboration_identifier,
JSON_EXTRACT(Properties, '$.Tags') as tags,
- JSON_EXTRACT(Properties, '$.AnalysisParameters') as analysis_parameters,
- JSON_EXTRACT(Properties, '$.AnalysisTemplateIdentifier') as analysis_template_identifier,
+ JSON_EXTRACT(Properties, '$.AllowedColumns') as allowed_columns,
+ JSON_EXTRACT(Properties, '$.AnalysisMethod') as analysis_method,
+ JSON_EXTRACT(Properties, '$.ConfiguredTableIdentifier') as configured_table_identifier,
JSON_EXTRACT(Properties, '$.Description') as description,
- JSON_EXTRACT(Properties, '$.MembershipArn') as membership_arn,
- JSON_EXTRACT(Properties, '$.MembershipIdentifier') as membership_identifier,
JSON_EXTRACT(Properties, '$.Name') as name,
- JSON_EXTRACT(Properties, '$.Schema') as _schema,
- JSON_EXTRACT(Properties, '$.Source') as source,
- JSON_EXTRACT(Properties, '$.Format') as _format
- FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::CleanRooms::AnalysisTemplate'
- AND data__Identifier = '|'
+ JSON_EXTRACT(Properties, '$.AnalysisRules') as analysis_rules,
+ JSON_EXTRACT(Properties, '$.TableReference') as table_reference
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::CleanRooms::ConfiguredTable'
+ AND data__Identifier = ''
AND region = 'us-east-1'
fallback:
predicate: sqlDialect == "sqlite3"
@@ -2041,24 +3321,20 @@ components:
SELECT
detail.region,
JSON_EXTRACT(detail.Properties, '$.Arn') as arn,
- JSON_EXTRACT(detail.Properties, '$.CollaborationArn') as collaboration_arn,
- JSON_EXTRACT(detail.Properties, '$.CollaborationIdentifier') as collaboration_identifier,
JSON_EXTRACT(detail.Properties, '$.Tags') as tags,
- JSON_EXTRACT(detail.Properties, '$.AnalysisParameters') as analysis_parameters,
- JSON_EXTRACT(detail.Properties, '$.AnalysisTemplateIdentifier') as analysis_template_identifier,
+ JSON_EXTRACT(detail.Properties, '$.AllowedColumns') as allowed_columns,
+ JSON_EXTRACT(detail.Properties, '$.AnalysisMethod') as analysis_method,
+ JSON_EXTRACT(detail.Properties, '$.ConfiguredTableIdentifier') as configured_table_identifier,
JSON_EXTRACT(detail.Properties, '$.Description') as description,
- JSON_EXTRACT(detail.Properties, '$.MembershipArn') as membership_arn,
- JSON_EXTRACT(detail.Properties, '$.MembershipIdentifier') as membership_identifier,
JSON_EXTRACT(detail.Properties, '$.Name') as name,
- JSON_EXTRACT(detail.Properties, '$.Schema') as _schema,
- JSON_EXTRACT(detail.Properties, '$.Source') as source,
- JSON_EXTRACT(detail.Properties, '$.Format') as _format
+ JSON_EXTRACT(detail.Properties, '$.AnalysisRules') as analysis_rules,
+ JSON_EXTRACT(detail.Properties, '$.TableReference') as table_reference
FROM aws.cloud_control.resources listing
LEFT OUTER JOIN aws.cloud_control.resource detail
ON detail.data__Identifier = listing.Identifier
AND detail.region = listing.region
- WHERE listing.data__TypeName = 'AWS::CleanRooms::AnalysisTemplate'
- AND detail.data__TypeName = 'AWS::CleanRooms::AnalysisTemplate'
+ WHERE listing.data__TypeName = 'AWS::CleanRooms::ConfiguredTable'
+ AND detail.data__TypeName = 'AWS::CleanRooms::ConfiguredTable'
AND listing.region = 'us-east-1'
fallback:
predicate: sqlDialect == "postgres" && requiredParams == [ data__Identifier ]
@@ -2067,20 +3343,16 @@ components:
region,
data__Identifier,
json_extract_path_text(Properties, 'Arn') as arn,
- json_extract_path_text(Properties, 'CollaborationArn') as collaboration_arn,
- json_extract_path_text(Properties, 'CollaborationIdentifier') as collaboration_identifier,
json_extract_path_text(Properties, 'Tags') as tags,
- json_extract_path_text(Properties, 'AnalysisParameters') as analysis_parameters,
- json_extract_path_text(Properties, 'AnalysisTemplateIdentifier') as analysis_template_identifier,
+ json_extract_path_text(Properties, 'AllowedColumns') as allowed_columns,
+ json_extract_path_text(Properties, 'AnalysisMethod') as analysis_method,
+ json_extract_path_text(Properties, 'ConfiguredTableIdentifier') as configured_table_identifier,
json_extract_path_text(Properties, 'Description') as description,
- json_extract_path_text(Properties, 'MembershipArn') as membership_arn,
- json_extract_path_text(Properties, 'MembershipIdentifier') as membership_identifier,
json_extract_path_text(Properties, 'Name') as name,
- json_extract_path_text(Properties, 'Schema') as _schema,
- json_extract_path_text(Properties, 'Source') as source,
- json_extract_path_text(Properties, 'Format') as _format
- FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::CleanRooms::AnalysisTemplate'
- AND data__Identifier = '|'
+ json_extract_path_text(Properties, 'AnalysisRules') as analysis_rules,
+ json_extract_path_text(Properties, 'TableReference') as table_reference
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::CleanRooms::ConfiguredTable'
+ AND data__Identifier = ''
AND region = 'us-east-1'
fallback:
predicate: sqlDialect == "postgres"
@@ -2088,33 +3360,28 @@ components:
SELECT
detail.region,
json_extract_path_text(detail.Properties, 'Arn') as arn,
- json_extract_path_text(detail.Properties, 'CollaborationArn') as collaboration_arn,
- json_extract_path_text(detail.Properties, 'CollaborationIdentifier') as collaboration_identifier,
json_extract_path_text(detail.Properties, 'Tags') as tags,
- json_extract_path_text(detail.Properties, 'AnalysisParameters') as analysis_parameters,
- json_extract_path_text(detail.Properties, 'AnalysisTemplateIdentifier') as analysis_template_identifier,
+ json_extract_path_text(detail.Properties, 'AllowedColumns') as allowed_columns,
+ json_extract_path_text(detail.Properties, 'AnalysisMethod') as analysis_method,
+ json_extract_path_text(detail.Properties, 'ConfiguredTableIdentifier') as configured_table_identifier,
json_extract_path_text(detail.Properties, 'Description') as description,
- json_extract_path_text(detail.Properties, 'MembershipArn') as membership_arn,
- json_extract_path_text(detail.Properties, 'MembershipIdentifier') as membership_identifier,
json_extract_path_text(detail.Properties, 'Name') as name,
- json_extract_path_text(detail.Properties, 'Schema') as _schema,
- json_extract_path_text(detail.Properties, 'Source') as source,
- json_extract_path_text(detail.Properties, 'Format') as _format
+ json_extract_path_text(detail.Properties, 'AnalysisRules') as analysis_rules,
+ json_extract_path_text(detail.Properties, 'TableReference') as table_reference
FROM aws.cloud_control.resources listing
LEFT OUTER JOIN aws.cloud_control.resource detail
ON detail.data__Identifier = listing.Identifier
AND detail.region = listing.region
- WHERE listing.data__TypeName = 'AWS::CleanRooms::AnalysisTemplate'
- AND detail.data__TypeName = 'AWS::CleanRooms::AnalysisTemplate'
+ WHERE listing.data__TypeName = 'AWS::CleanRooms::ConfiguredTable'
+ AND detail.data__TypeName = 'AWS::CleanRooms::ConfiguredTable'
AND listing.region = 'us-east-1'
- analysis_templates_list_only:
- name: analysis_templates_list_only
- id: aws.cleanrooms.analysis_templates_list_only
- x-cfn-schema-name: AnalysisTemplate
- x-cfn-type-name: AWS::CleanRooms::AnalysisTemplate
+ configured_tables_list_only:
+ name: configured_tables_list_only
+ id: aws.cleanrooms.configured_tables_list_only
+ x-cfn-schema-name: ConfiguredTable
+ x-cfn-type-name: AWS::CleanRooms::ConfiguredTable
x-identifiers:
- - AnalysisTemplateIdentifier
- - MembershipIdentifier
+ - ConfiguredTableIdentifier
x-type: cloud_control_view
methods: {}
sqlVerbs:
@@ -2128,24 +3395,22 @@ components:
ddl: |-
SELECT
region,
- JSON_EXTRACT(Properties, '$.AnalysisTemplateIdentifier') as analysis_template_identifier,
- JSON_EXTRACT(Properties, '$.MembershipIdentifier') as membership_identifier
- FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::CleanRooms::AnalysisTemplate'
+ JSON_EXTRACT(Properties, '$.ConfiguredTableIdentifier') as configured_table_identifier
+ FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::CleanRooms::ConfiguredTable'
AND region = 'us-east-1'
fallback:
predicate: sqlDialect == "postgres"
ddl: |-
SELECT
region,
- json_extract_path_text(Properties, 'AnalysisTemplateIdentifier') as analysis_template_identifier,
- json_extract_path_text(Properties, 'MembershipIdentifier') as membership_identifier
- FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::CleanRooms::AnalysisTemplate'
+ json_extract_path_text(Properties, 'ConfiguredTableIdentifier') as configured_table_identifier
+ FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::CleanRooms::ConfiguredTable'
AND region = 'us-east-1'
- analysis_template_tags:
- name: analysis_template_tags
- id: aws.cleanrooms.analysis_template_tags
- x-cfn-schema-name: AnalysisTemplate
- x-cfn-type-name: AWS::CleanRooms::AnalysisTemplate
+ configured_table_tags:
+ name: configured_table_tags
+ id: aws.cleanrooms.configured_table_tags
+ x-cfn-schema-name: ConfiguredTable
+ x-cfn-type-name: AWS::CleanRooms::ConfiguredTable
x-type: cloud_control_view
methods: {}
sqlVerbs:
@@ -2162,24 +3427,20 @@ components:
JSON_EXTRACT(json_each.value, '$.Key') as tag_key,
JSON_EXTRACT(json_each.value, '$.Value') as tag_value,
JSON_EXTRACT(detail.Properties, '$.Arn') as arn,
- JSON_EXTRACT(detail.Properties, '$.CollaborationArn') as collaboration_arn,
- JSON_EXTRACT(detail.Properties, '$.CollaborationIdentifier') as collaboration_identifier,
- JSON_EXTRACT(detail.Properties, '$.AnalysisParameters') as analysis_parameters,
- JSON_EXTRACT(detail.Properties, '$.AnalysisTemplateIdentifier') as analysis_template_identifier,
+ JSON_EXTRACT(detail.Properties, '$.AllowedColumns') as allowed_columns,
+ JSON_EXTRACT(detail.Properties, '$.AnalysisMethod') as analysis_method,
+ JSON_EXTRACT(detail.Properties, '$.ConfiguredTableIdentifier') as configured_table_identifier,
JSON_EXTRACT(detail.Properties, '$.Description') as description,
- JSON_EXTRACT(detail.Properties, '$.MembershipArn') as membership_arn,
- JSON_EXTRACT(detail.Properties, '$.MembershipIdentifier') as membership_identifier,
JSON_EXTRACT(detail.Properties, '$.Name') as name,
- JSON_EXTRACT(detail.Properties, '$.Schema') as _schema,
- JSON_EXTRACT(detail.Properties, '$.Source') as source,
- JSON_EXTRACT(detail.Properties, '$.Format') as _format
+ JSON_EXTRACT(detail.Properties, '$.AnalysisRules') as analysis_rules,
+ JSON_EXTRACT(detail.Properties, '$.TableReference') as table_reference
FROM aws.cloud_control.resources listing
LEFT OUTER JOIN aws.cloud_control.resource detail
ON detail.data__Identifier = listing.Identifier
AND detail.region = listing.region
,json_each(JSON_EXTRACT(detail.Properties, '$.Tags'))
- WHERE listing.data__TypeName = 'AWS::CleanRooms::AnalysisTemplate'
- AND detail.data__TypeName = 'AWS::CleanRooms::AnalysisTemplate'
+ WHERE listing.data__TypeName = 'AWS::CleanRooms::ConfiguredTable'
+ AND detail.data__TypeName = 'AWS::CleanRooms::ConfiguredTable'
AND listing.region = 'us-east-1'
fallback:
predicate: sqlDialect == "postgres"
@@ -2189,32 +3450,29 @@ components:
json_extract_path_text(json_each.value, 'Key') as tag_key,
json_extract_path_text(json_each.value, 'Value') as tag_value,
json_extract_path_text(detail.Properties, 'Arn') as arn,
- json_extract_path_text(detail.Properties, 'CollaborationArn') as collaboration_arn,
- json_extract_path_text(detail.Properties, 'CollaborationIdentifier') as collaboration_identifier,
- json_extract_path_text(detail.Properties, 'AnalysisParameters') as analysis_parameters,
- json_extract_path_text(detail.Properties, 'AnalysisTemplateIdentifier') as analysis_template_identifier,
+ json_extract_path_text(detail.Properties, 'AllowedColumns') as allowed_columns,
+ json_extract_path_text(detail.Properties, 'AnalysisMethod') as analysis_method,
+ json_extract_path_text(detail.Properties, 'ConfiguredTableIdentifier') as configured_table_identifier,
json_extract_path_text(detail.Properties, 'Description') as description,
- json_extract_path_text(detail.Properties, 'MembershipArn') as membership_arn,
- json_extract_path_text(detail.Properties, 'MembershipIdentifier') as membership_identifier,
json_extract_path_text(detail.Properties, 'Name') as name,
- json_extract_path_text(detail.Properties, 'Schema') as _schema,
- json_extract_path_text(detail.Properties, 'Source') as source,
- json_extract_path_text(detail.Properties, 'Format') as _format
+ json_extract_path_text(detail.Properties, 'AnalysisRules') as analysis_rules,
+ json_extract_path_text(detail.Properties, 'TableReference') as table_reference
FROM aws.cloud_control.resources listing
LEFT OUTER JOIN aws.cloud_control.resource detail
ON detail.data__Identifier = listing.Identifier
AND detail.region = listing.region
,json_array_elements_text(json_extract_path_text(detail.Properties, 'Tags'))
- WHERE listing.data__TypeName = 'AWS::CleanRooms::AnalysisTemplate'
- AND detail.data__TypeName = 'AWS::CleanRooms::AnalysisTemplate'
+ WHERE listing.data__TypeName = 'AWS::CleanRooms::ConfiguredTable'
+ AND detail.data__TypeName = 'AWS::CleanRooms::ConfiguredTable'
AND listing.region = 'us-east-1'
- collaborations:
- name: collaborations
- id: aws.cleanrooms.collaborations
- x-cfn-schema-name: Collaboration
- x-cfn-type-name: AWS::CleanRooms::Collaboration
+ configured_table_associations:
+ name: configured_table_associations
+ id: aws.cleanrooms.configured_table_associations
+ x-cfn-schema-name: ConfiguredTableAssociation
+ x-cfn-type-name: AWS::CleanRooms::ConfiguredTableAssociation
x-identifiers:
- - CollaborationIdentifier
+ - ConfiguredTableAssociationIdentifier
+ - MembershipIdentifier
x-type: cloud_control
methods:
create_resource:
@@ -2222,12 +3480,12 @@ components:
requestBodyTranslate:
algorithm: naive_DesiredState
operation:
- $ref: '#/paths/~1?Action=CreateResource&Version=2021-09-30&__Collaboration&__detailTransformed=true/post'
+ $ref: '#/paths/~1?Action=CreateResource&Version=2021-09-30&__ConfiguredTableAssociation&__detailTransformed=true/post'
request:
mediaType: application/x-amz-json-1.0
base: |-
{
- "TypeName": "AWS::CleanRooms::Collaboration"
+ "TypeName": "AWS::CleanRooms::ConfiguredTableAssociation"
}
response:
mediaType: application/json
@@ -2239,7 +3497,7 @@ components:
mediaType: application/x-amz-json-1.0
base: |-
{
- "TypeName": "AWS::CleanRooms::Collaboration"
+ "TypeName": "AWS::CleanRooms::ConfiguredTableAssociation"
}
response:
mediaType: application/json
@@ -2251,18 +3509,18 @@ components:
mediaType: application/x-amz-json-1.0
base: |-
{
- "TypeName": "AWS::CleanRooms::Collaboration"
+ "TypeName": "AWS::CleanRooms::ConfiguredTableAssociation"
}
response:
mediaType: application/json
openAPIDocKey: '200'
sqlVerbs:
insert:
- - $ref: '#/components/x-stackQL-resources/collaborations/methods/create_resource'
+ - $ref: '#/components/x-stackQL-resources/configured_table_associations/methods/create_resource'
delete:
- - $ref: '#/components/x-stackQL-resources/collaborations/methods/delete_resource'
+ - $ref: '#/components/x-stackQL-resources/configured_table_associations/methods/delete_resource'
update:
- - $ref: '#/components/x-stackQL-resources/collaborations/methods/update_resource'
+ - $ref: '#/components/x-stackQL-resources/configured_table_associations/methods/update_resource'
config:
views:
select:
@@ -2273,17 +3531,15 @@ components:
data__Identifier,
JSON_EXTRACT(Properties, '$.Arn') as arn,
JSON_EXTRACT(Properties, '$.Tags') as tags,
- JSON_EXTRACT(Properties, '$.CollaborationIdentifier') as collaboration_identifier,
- JSON_EXTRACT(Properties, '$.CreatorDisplayName') as creator_display_name,
- JSON_EXTRACT(Properties, '$.CreatorMemberAbilities') as creator_member_abilities,
- JSON_EXTRACT(Properties, '$.DataEncryptionMetadata') as data_encryption_metadata,
+ JSON_EXTRACT(Properties, '$.ConfiguredTableAssociationIdentifier') as configured_table_association_identifier,
+ JSON_EXTRACT(Properties, '$.ConfiguredTableIdentifier') as configured_table_identifier,
JSON_EXTRACT(Properties, '$.Description') as description,
- JSON_EXTRACT(Properties, '$.Members') as members,
+ JSON_EXTRACT(Properties, '$.MembershipIdentifier') as membership_identifier,
JSON_EXTRACT(Properties, '$.Name') as name,
- JSON_EXTRACT(Properties, '$.QueryLogStatus') as query_log_status,
- JSON_EXTRACT(Properties, '$.CreatorPaymentConfiguration') as creator_payment_configuration
- FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::CleanRooms::Collaboration'
- AND data__Identifier = ''
+ JSON_EXTRACT(Properties, '$.RoleArn') as role_arn,
+ JSON_EXTRACT(Properties, '$.ConfiguredTableAssociationAnalysisRules') as configured_table_association_analysis_rules
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::CleanRooms::ConfiguredTableAssociation'
+ AND data__Identifier = '|'
AND region = 'us-east-1'
fallback:
predicate: sqlDialect == "sqlite3"
@@ -2292,21 +3548,19 @@ components:
detail.region,
JSON_EXTRACT(detail.Properties, '$.Arn') as arn,
JSON_EXTRACT(detail.Properties, '$.Tags') as tags,
- JSON_EXTRACT(detail.Properties, '$.CollaborationIdentifier') as collaboration_identifier,
- JSON_EXTRACT(detail.Properties, '$.CreatorDisplayName') as creator_display_name,
- JSON_EXTRACT(detail.Properties, '$.CreatorMemberAbilities') as creator_member_abilities,
- JSON_EXTRACT(detail.Properties, '$.DataEncryptionMetadata') as data_encryption_metadata,
+ JSON_EXTRACT(detail.Properties, '$.ConfiguredTableAssociationIdentifier') as configured_table_association_identifier,
+ JSON_EXTRACT(detail.Properties, '$.ConfiguredTableIdentifier') as configured_table_identifier,
JSON_EXTRACT(detail.Properties, '$.Description') as description,
- JSON_EXTRACT(detail.Properties, '$.Members') as members,
+ JSON_EXTRACT(detail.Properties, '$.MembershipIdentifier') as membership_identifier,
JSON_EXTRACT(detail.Properties, '$.Name') as name,
- JSON_EXTRACT(detail.Properties, '$.QueryLogStatus') as query_log_status,
- JSON_EXTRACT(detail.Properties, '$.CreatorPaymentConfiguration') as creator_payment_configuration
+ JSON_EXTRACT(detail.Properties, '$.RoleArn') as role_arn,
+ JSON_EXTRACT(detail.Properties, '$.ConfiguredTableAssociationAnalysisRules') as configured_table_association_analysis_rules
FROM aws.cloud_control.resources listing
LEFT OUTER JOIN aws.cloud_control.resource detail
ON detail.data__Identifier = listing.Identifier
AND detail.region = listing.region
- WHERE listing.data__TypeName = 'AWS::CleanRooms::Collaboration'
- AND detail.data__TypeName = 'AWS::CleanRooms::Collaboration'
+ WHERE listing.data__TypeName = 'AWS::CleanRooms::ConfiguredTableAssociation'
+ AND detail.data__TypeName = 'AWS::CleanRooms::ConfiguredTableAssociation'
AND listing.region = 'us-east-1'
fallback:
predicate: sqlDialect == "postgres" && requiredParams == [ data__Identifier ]
@@ -2316,17 +3570,15 @@ components:
data__Identifier,
json_extract_path_text(Properties, 'Arn') as arn,
json_extract_path_text(Properties, 'Tags') as tags,
- json_extract_path_text(Properties, 'CollaborationIdentifier') as collaboration_identifier,
- json_extract_path_text(Properties, 'CreatorDisplayName') as creator_display_name,
- json_extract_path_text(Properties, 'CreatorMemberAbilities') as creator_member_abilities,
- json_extract_path_text(Properties, 'DataEncryptionMetadata') as data_encryption_metadata,
+ json_extract_path_text(Properties, 'ConfiguredTableAssociationIdentifier') as configured_table_association_identifier,
+ json_extract_path_text(Properties, 'ConfiguredTableIdentifier') as configured_table_identifier,
json_extract_path_text(Properties, 'Description') as description,
- json_extract_path_text(Properties, 'Members') as members,
+ json_extract_path_text(Properties, 'MembershipIdentifier') as membership_identifier,
json_extract_path_text(Properties, 'Name') as name,
- json_extract_path_text(Properties, 'QueryLogStatus') as query_log_status,
- json_extract_path_text(Properties, 'CreatorPaymentConfiguration') as creator_payment_configuration
- FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::CleanRooms::Collaboration'
- AND data__Identifier = ''
+ json_extract_path_text(Properties, 'RoleArn') as role_arn,
+ json_extract_path_text(Properties, 'ConfiguredTableAssociationAnalysisRules') as configured_table_association_analysis_rules
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::CleanRooms::ConfiguredTableAssociation'
+ AND data__Identifier = '|'
AND region = 'us-east-1'
fallback:
predicate: sqlDialect == "postgres"
@@ -2335,29 +3587,28 @@ components:
detail.region,
json_extract_path_text(detail.Properties, 'Arn') as arn,
json_extract_path_text(detail.Properties, 'Tags') as tags,
- json_extract_path_text(detail.Properties, 'CollaborationIdentifier') as collaboration_identifier,
- json_extract_path_text(detail.Properties, 'CreatorDisplayName') as creator_display_name,
- json_extract_path_text(detail.Properties, 'CreatorMemberAbilities') as creator_member_abilities,
- json_extract_path_text(detail.Properties, 'DataEncryptionMetadata') as data_encryption_metadata,
+ json_extract_path_text(detail.Properties, 'ConfiguredTableAssociationIdentifier') as configured_table_association_identifier,
+ json_extract_path_text(detail.Properties, 'ConfiguredTableIdentifier') as configured_table_identifier,
json_extract_path_text(detail.Properties, 'Description') as description,
- json_extract_path_text(detail.Properties, 'Members') as members,
+ json_extract_path_text(detail.Properties, 'MembershipIdentifier') as membership_identifier,
json_extract_path_text(detail.Properties, 'Name') as name,
- json_extract_path_text(detail.Properties, 'QueryLogStatus') as query_log_status,
- json_extract_path_text(detail.Properties, 'CreatorPaymentConfiguration') as creator_payment_configuration
+ json_extract_path_text(detail.Properties, 'RoleArn') as role_arn,
+ json_extract_path_text(detail.Properties, 'ConfiguredTableAssociationAnalysisRules') as configured_table_association_analysis_rules
FROM aws.cloud_control.resources listing
LEFT OUTER JOIN aws.cloud_control.resource detail
ON detail.data__Identifier = listing.Identifier
AND detail.region = listing.region
- WHERE listing.data__TypeName = 'AWS::CleanRooms::Collaboration'
- AND detail.data__TypeName = 'AWS::CleanRooms::Collaboration'
+ WHERE listing.data__TypeName = 'AWS::CleanRooms::ConfiguredTableAssociation'
+ AND detail.data__TypeName = 'AWS::CleanRooms::ConfiguredTableAssociation'
AND listing.region = 'us-east-1'
- collaborations_list_only:
- name: collaborations_list_only
- id: aws.cleanrooms.collaborations_list_only
- x-cfn-schema-name: Collaboration
- x-cfn-type-name: AWS::CleanRooms::Collaboration
+ configured_table_associations_list_only:
+ name: configured_table_associations_list_only
+ id: aws.cleanrooms.configured_table_associations_list_only
+ x-cfn-schema-name: ConfiguredTableAssociation
+ x-cfn-type-name: AWS::CleanRooms::ConfiguredTableAssociation
x-identifiers:
- - CollaborationIdentifier
+ - ConfiguredTableAssociationIdentifier
+ - MembershipIdentifier
x-type: cloud_control_view
methods: {}
sqlVerbs:
@@ -2371,22 +3622,24 @@ components:
ddl: |-
SELECT
region,
- JSON_EXTRACT(Properties, '$.CollaborationIdentifier') as collaboration_identifier
- FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::CleanRooms::Collaboration'
+ JSON_EXTRACT(Properties, '$.ConfiguredTableAssociationIdentifier') as configured_table_association_identifier,
+ JSON_EXTRACT(Properties, '$.MembershipIdentifier') as membership_identifier
+ FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::CleanRooms::ConfiguredTableAssociation'
AND region = 'us-east-1'
fallback:
predicate: sqlDialect == "postgres"
ddl: |-
SELECT
region,
- json_extract_path_text(Properties, 'CollaborationIdentifier') as collaboration_identifier
- FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::CleanRooms::Collaboration'
+ json_extract_path_text(Properties, 'ConfiguredTableAssociationIdentifier') as configured_table_association_identifier,
+ json_extract_path_text(Properties, 'MembershipIdentifier') as membership_identifier
+ FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::CleanRooms::ConfiguredTableAssociation'
AND region = 'us-east-1'
- collaboration_tags:
- name: collaboration_tags
- id: aws.cleanrooms.collaboration_tags
- x-cfn-schema-name: Collaboration
- x-cfn-type-name: AWS::CleanRooms::Collaboration
+ configured_table_association_tags:
+ name: configured_table_association_tags
+ id: aws.cleanrooms.configured_table_association_tags
+ x-cfn-schema-name: ConfiguredTableAssociation
+ x-cfn-type-name: AWS::CleanRooms::ConfiguredTableAssociation
x-type: cloud_control_view
methods: {}
sqlVerbs:
@@ -2403,22 +3656,20 @@ components:
JSON_EXTRACT(json_each.value, '$.Key') as tag_key,
JSON_EXTRACT(json_each.value, '$.Value') as tag_value,
JSON_EXTRACT(detail.Properties, '$.Arn') as arn,
- JSON_EXTRACT(detail.Properties, '$.CollaborationIdentifier') as collaboration_identifier,
- JSON_EXTRACT(detail.Properties, '$.CreatorDisplayName') as creator_display_name,
- JSON_EXTRACT(detail.Properties, '$.CreatorMemberAbilities') as creator_member_abilities,
- JSON_EXTRACT(detail.Properties, '$.DataEncryptionMetadata') as data_encryption_metadata,
+ JSON_EXTRACT(detail.Properties, '$.ConfiguredTableAssociationIdentifier') as configured_table_association_identifier,
+ JSON_EXTRACT(detail.Properties, '$.ConfiguredTableIdentifier') as configured_table_identifier,
JSON_EXTRACT(detail.Properties, '$.Description') as description,
- JSON_EXTRACT(detail.Properties, '$.Members') as members,
+ JSON_EXTRACT(detail.Properties, '$.MembershipIdentifier') as membership_identifier,
JSON_EXTRACT(detail.Properties, '$.Name') as name,
- JSON_EXTRACT(detail.Properties, '$.QueryLogStatus') as query_log_status,
- JSON_EXTRACT(detail.Properties, '$.CreatorPaymentConfiguration') as creator_payment_configuration
+ JSON_EXTRACT(detail.Properties, '$.RoleArn') as role_arn,
+ JSON_EXTRACT(detail.Properties, '$.ConfiguredTableAssociationAnalysisRules') as configured_table_association_analysis_rules
FROM aws.cloud_control.resources listing
LEFT OUTER JOIN aws.cloud_control.resource detail
ON detail.data__Identifier = listing.Identifier
AND detail.region = listing.region
,json_each(JSON_EXTRACT(detail.Properties, '$.Tags'))
- WHERE listing.data__TypeName = 'AWS::CleanRooms::Collaboration'
- AND detail.data__TypeName = 'AWS::CleanRooms::Collaboration'
+ WHERE listing.data__TypeName = 'AWS::CleanRooms::ConfiguredTableAssociation'
+ AND detail.data__TypeName = 'AWS::CleanRooms::ConfiguredTableAssociation'
AND listing.region = 'us-east-1'
fallback:
predicate: sqlDialect == "postgres"
@@ -2428,30 +3679,29 @@ components:
json_extract_path_text(json_each.value, 'Key') as tag_key,
json_extract_path_text(json_each.value, 'Value') as tag_value,
json_extract_path_text(detail.Properties, 'Arn') as arn,
- json_extract_path_text(detail.Properties, 'CollaborationIdentifier') as collaboration_identifier,
- json_extract_path_text(detail.Properties, 'CreatorDisplayName') as creator_display_name,
- json_extract_path_text(detail.Properties, 'CreatorMemberAbilities') as creator_member_abilities,
- json_extract_path_text(detail.Properties, 'DataEncryptionMetadata') as data_encryption_metadata,
+ json_extract_path_text(detail.Properties, 'ConfiguredTableAssociationIdentifier') as configured_table_association_identifier,
+ json_extract_path_text(detail.Properties, 'ConfiguredTableIdentifier') as configured_table_identifier,
json_extract_path_text(detail.Properties, 'Description') as description,
- json_extract_path_text(detail.Properties, 'Members') as members,
+ json_extract_path_text(detail.Properties, 'MembershipIdentifier') as membership_identifier,
json_extract_path_text(detail.Properties, 'Name') as name,
- json_extract_path_text(detail.Properties, 'QueryLogStatus') as query_log_status,
- json_extract_path_text(detail.Properties, 'CreatorPaymentConfiguration') as creator_payment_configuration
+ json_extract_path_text(detail.Properties, 'RoleArn') as role_arn,
+ json_extract_path_text(detail.Properties, 'ConfiguredTableAssociationAnalysisRules') as configured_table_association_analysis_rules
FROM aws.cloud_control.resources listing
LEFT OUTER JOIN aws.cloud_control.resource detail
ON detail.data__Identifier = listing.Identifier
AND detail.region = listing.region
,json_array_elements_text(json_extract_path_text(detail.Properties, 'Tags'))
- WHERE listing.data__TypeName = 'AWS::CleanRooms::Collaboration'
- AND detail.data__TypeName = 'AWS::CleanRooms::Collaboration'
+ WHERE listing.data__TypeName = 'AWS::CleanRooms::ConfiguredTableAssociation'
+ AND detail.data__TypeName = 'AWS::CleanRooms::ConfiguredTableAssociation'
AND listing.region = 'us-east-1'
- configured_tables:
- name: configured_tables
- id: aws.cleanrooms.configured_tables
- x-cfn-schema-name: ConfiguredTable
- x-cfn-type-name: AWS::CleanRooms::ConfiguredTable
+ id_mapping_tables:
+ name: id_mapping_tables
+ id: aws.cleanrooms.id_mapping_tables
+ x-cfn-schema-name: IdMappingTable
+ x-cfn-type-name: AWS::CleanRooms::IdMappingTable
x-identifiers:
- - ConfiguredTableIdentifier
+ - IdMappingTableIdentifier
+ - MembershipIdentifier
x-type: cloud_control
methods:
create_resource:
@@ -2459,12 +3709,12 @@ components:
requestBodyTranslate:
algorithm: naive_DesiredState
operation:
- $ref: '#/paths/~1?Action=CreateResource&Version=2021-09-30&__ConfiguredTable&__detailTransformed=true/post'
+ $ref: '#/paths/~1?Action=CreateResource&Version=2021-09-30&__IdMappingTable&__detailTransformed=true/post'
request:
mediaType: application/x-amz-json-1.0
base: |-
{
- "TypeName": "AWS::CleanRooms::ConfiguredTable"
+ "TypeName": "AWS::CleanRooms::IdMappingTable"
}
response:
mediaType: application/json
@@ -2476,7 +3726,7 @@ components:
mediaType: application/x-amz-json-1.0
base: |-
{
- "TypeName": "AWS::CleanRooms::ConfiguredTable"
+ "TypeName": "AWS::CleanRooms::IdMappingTable"
}
response:
mediaType: application/json
@@ -2488,18 +3738,18 @@ components:
mediaType: application/x-amz-json-1.0
base: |-
{
- "TypeName": "AWS::CleanRooms::ConfiguredTable"
+ "TypeName": "AWS::CleanRooms::IdMappingTable"
}
response:
mediaType: application/json
openAPIDocKey: '200'
sqlVerbs:
insert:
- - $ref: '#/components/x-stackQL-resources/configured_tables/methods/create_resource'
+ - $ref: '#/components/x-stackQL-resources/id_mapping_tables/methods/create_resource'
delete:
- - $ref: '#/components/x-stackQL-resources/configured_tables/methods/delete_resource'
+ - $ref: '#/components/x-stackQL-resources/id_mapping_tables/methods/delete_resource'
update:
- - $ref: '#/components/x-stackQL-resources/configured_tables/methods/update_resource'
+ - $ref: '#/components/x-stackQL-resources/id_mapping_tables/methods/update_resource'
config:
views:
select:
@@ -2508,38 +3758,44 @@ components:
SELECT
region,
data__Identifier,
+ JSON_EXTRACT(Properties, '$.IdMappingTableIdentifier') as id_mapping_table_identifier,
JSON_EXTRACT(Properties, '$.Arn') as arn,
- JSON_EXTRACT(Properties, '$.Tags') as tags,
- JSON_EXTRACT(Properties, '$.AllowedColumns') as allowed_columns,
- JSON_EXTRACT(Properties, '$.AnalysisMethod') as analysis_method,
- JSON_EXTRACT(Properties, '$.ConfiguredTableIdentifier') as configured_table_identifier,
+ JSON_EXTRACT(Properties, '$.InputReferenceConfig') as input_reference_config,
+ JSON_EXTRACT(Properties, '$.MembershipIdentifier') as membership_identifier,
+ JSON_EXTRACT(Properties, '$.MembershipArn') as membership_arn,
+ JSON_EXTRACT(Properties, '$.CollaborationIdentifier') as collaboration_identifier,
+ JSON_EXTRACT(Properties, '$.CollaborationArn') as collaboration_arn,
JSON_EXTRACT(Properties, '$.Description') as description,
JSON_EXTRACT(Properties, '$.Name') as name,
- JSON_EXTRACT(Properties, '$.AnalysisRules') as analysis_rules,
- JSON_EXTRACT(Properties, '$.TableReference') as table_reference
- FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::CleanRooms::ConfiguredTable'
- AND data__Identifier = ''
+ JSON_EXTRACT(Properties, '$.InputReferenceProperties') as input_reference_properties,
+ JSON_EXTRACT(Properties, '$.KmsKeyArn') as kms_key_arn,
+ JSON_EXTRACT(Properties, '$.Tags') as tags
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::CleanRooms::IdMappingTable'
+ AND data__Identifier = '|'
AND region = 'us-east-1'
fallback:
predicate: sqlDialect == "sqlite3"
ddl: |-
SELECT
detail.region,
+ JSON_EXTRACT(detail.Properties, '$.IdMappingTableIdentifier') as id_mapping_table_identifier,
JSON_EXTRACT(detail.Properties, '$.Arn') as arn,
- JSON_EXTRACT(detail.Properties, '$.Tags') as tags,
- JSON_EXTRACT(detail.Properties, '$.AllowedColumns') as allowed_columns,
- JSON_EXTRACT(detail.Properties, '$.AnalysisMethod') as analysis_method,
- JSON_EXTRACT(detail.Properties, '$.ConfiguredTableIdentifier') as configured_table_identifier,
+ JSON_EXTRACT(detail.Properties, '$.InputReferenceConfig') as input_reference_config,
+ JSON_EXTRACT(detail.Properties, '$.MembershipIdentifier') as membership_identifier,
+ JSON_EXTRACT(detail.Properties, '$.MembershipArn') as membership_arn,
+ JSON_EXTRACT(detail.Properties, '$.CollaborationIdentifier') as collaboration_identifier,
+ JSON_EXTRACT(detail.Properties, '$.CollaborationArn') as collaboration_arn,
JSON_EXTRACT(detail.Properties, '$.Description') as description,
JSON_EXTRACT(detail.Properties, '$.Name') as name,
- JSON_EXTRACT(detail.Properties, '$.AnalysisRules') as analysis_rules,
- JSON_EXTRACT(detail.Properties, '$.TableReference') as table_reference
+ JSON_EXTRACT(detail.Properties, '$.InputReferenceProperties') as input_reference_properties,
+ JSON_EXTRACT(detail.Properties, '$.KmsKeyArn') as kms_key_arn,
+ JSON_EXTRACT(detail.Properties, '$.Tags') as tags
FROM aws.cloud_control.resources listing
LEFT OUTER JOIN aws.cloud_control.resource detail
ON detail.data__Identifier = listing.Identifier
AND detail.region = listing.region
- WHERE listing.data__TypeName = 'AWS::CleanRooms::ConfiguredTable'
- AND detail.data__TypeName = 'AWS::CleanRooms::ConfiguredTable'
+ WHERE listing.data__TypeName = 'AWS::CleanRooms::IdMappingTable'
+ AND detail.data__TypeName = 'AWS::CleanRooms::IdMappingTable'
AND listing.region = 'us-east-1'
fallback:
predicate: sqlDialect == "postgres" && requiredParams == [ data__Identifier ]
@@ -2547,46 +3803,53 @@ components:
SELECT
region,
data__Identifier,
+ json_extract_path_text(Properties, 'IdMappingTableIdentifier') as id_mapping_table_identifier,
json_extract_path_text(Properties, 'Arn') as arn,
- json_extract_path_text(Properties, 'Tags') as tags,
- json_extract_path_text(Properties, 'AllowedColumns') as allowed_columns,
- json_extract_path_text(Properties, 'AnalysisMethod') as analysis_method,
- json_extract_path_text(Properties, 'ConfiguredTableIdentifier') as configured_table_identifier,
+ json_extract_path_text(Properties, 'InputReferenceConfig') as input_reference_config,
+ json_extract_path_text(Properties, 'MembershipIdentifier') as membership_identifier,
+ json_extract_path_text(Properties, 'MembershipArn') as membership_arn,
+ json_extract_path_text(Properties, 'CollaborationIdentifier') as collaboration_identifier,
+ json_extract_path_text(Properties, 'CollaborationArn') as collaboration_arn,
json_extract_path_text(Properties, 'Description') as description,
json_extract_path_text(Properties, 'Name') as name,
- json_extract_path_text(Properties, 'AnalysisRules') as analysis_rules,
- json_extract_path_text(Properties, 'TableReference') as table_reference
- FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::CleanRooms::ConfiguredTable'
- AND data__Identifier = ''
+ json_extract_path_text(Properties, 'InputReferenceProperties') as input_reference_properties,
+ json_extract_path_text(Properties, 'KmsKeyArn') as kms_key_arn,
+ json_extract_path_text(Properties, 'Tags') as tags
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::CleanRooms::IdMappingTable'
+ AND data__Identifier = '|'
AND region = 'us-east-1'
fallback:
predicate: sqlDialect == "postgres"
ddl: |-
SELECT
detail.region,
+ json_extract_path_text(detail.Properties, 'IdMappingTableIdentifier') as id_mapping_table_identifier,
json_extract_path_text(detail.Properties, 'Arn') as arn,
- json_extract_path_text(detail.Properties, 'Tags') as tags,
- json_extract_path_text(detail.Properties, 'AllowedColumns') as allowed_columns,
- json_extract_path_text(detail.Properties, 'AnalysisMethod') as analysis_method,
- json_extract_path_text(detail.Properties, 'ConfiguredTableIdentifier') as configured_table_identifier,
+ json_extract_path_text(detail.Properties, 'InputReferenceConfig') as input_reference_config,
+ json_extract_path_text(detail.Properties, 'MembershipIdentifier') as membership_identifier,
+ json_extract_path_text(detail.Properties, 'MembershipArn') as membership_arn,
+ json_extract_path_text(detail.Properties, 'CollaborationIdentifier') as collaboration_identifier,
+ json_extract_path_text(detail.Properties, 'CollaborationArn') as collaboration_arn,
json_extract_path_text(detail.Properties, 'Description') as description,
json_extract_path_text(detail.Properties, 'Name') as name,
- json_extract_path_text(detail.Properties, 'AnalysisRules') as analysis_rules,
- json_extract_path_text(detail.Properties, 'TableReference') as table_reference
+ json_extract_path_text(detail.Properties, 'InputReferenceProperties') as input_reference_properties,
+ json_extract_path_text(detail.Properties, 'KmsKeyArn') as kms_key_arn,
+ json_extract_path_text(detail.Properties, 'Tags') as tags
FROM aws.cloud_control.resources listing
LEFT OUTER JOIN aws.cloud_control.resource detail
ON detail.data__Identifier = listing.Identifier
AND detail.region = listing.region
- WHERE listing.data__TypeName = 'AWS::CleanRooms::ConfiguredTable'
- AND detail.data__TypeName = 'AWS::CleanRooms::ConfiguredTable'
+ WHERE listing.data__TypeName = 'AWS::CleanRooms::IdMappingTable'
+ AND detail.data__TypeName = 'AWS::CleanRooms::IdMappingTable'
AND listing.region = 'us-east-1'
- configured_tables_list_only:
- name: configured_tables_list_only
- id: aws.cleanrooms.configured_tables_list_only
- x-cfn-schema-name: ConfiguredTable
- x-cfn-type-name: AWS::CleanRooms::ConfiguredTable
+ id_mapping_tables_list_only:
+ name: id_mapping_tables_list_only
+ id: aws.cleanrooms.id_mapping_tables_list_only
+ x-cfn-schema-name: IdMappingTable
+ x-cfn-type-name: AWS::CleanRooms::IdMappingTable
x-identifiers:
- - ConfiguredTableIdentifier
+ - IdMappingTableIdentifier
+ - MembershipIdentifier
x-type: cloud_control_view
methods: {}
sqlVerbs:
@@ -2600,22 +3863,24 @@ components:
ddl: |-
SELECT
region,
- JSON_EXTRACT(Properties, '$.ConfiguredTableIdentifier') as configured_table_identifier
- FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::CleanRooms::ConfiguredTable'
+ JSON_EXTRACT(Properties, '$.IdMappingTableIdentifier') as id_mapping_table_identifier,
+ JSON_EXTRACT(Properties, '$.MembershipIdentifier') as membership_identifier
+ FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::CleanRooms::IdMappingTable'
AND region = 'us-east-1'
fallback:
predicate: sqlDialect == "postgres"
ddl: |-
SELECT
region,
- json_extract_path_text(Properties, 'ConfiguredTableIdentifier') as configured_table_identifier
- FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::CleanRooms::ConfiguredTable'
+ json_extract_path_text(Properties, 'IdMappingTableIdentifier') as id_mapping_table_identifier,
+ json_extract_path_text(Properties, 'MembershipIdentifier') as membership_identifier
+ FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::CleanRooms::IdMappingTable'
AND region = 'us-east-1'
- configured_table_tags:
- name: configured_table_tags
- id: aws.cleanrooms.configured_table_tags
- x-cfn-schema-name: ConfiguredTable
- x-cfn-type-name: AWS::CleanRooms::ConfiguredTable
+ id_mapping_table_tags:
+ name: id_mapping_table_tags
+ id: aws.cleanrooms.id_mapping_table_tags
+ x-cfn-schema-name: IdMappingTable
+ x-cfn-type-name: AWS::CleanRooms::IdMappingTable
x-type: cloud_control_view
methods: {}
sqlVerbs:
@@ -2631,21 +3896,24 @@ components:
detail.region,
JSON_EXTRACT(json_each.value, '$.Key') as tag_key,
JSON_EXTRACT(json_each.value, '$.Value') as tag_value,
+ JSON_EXTRACT(detail.Properties, '$.IdMappingTableIdentifier') as id_mapping_table_identifier,
JSON_EXTRACT(detail.Properties, '$.Arn') as arn,
- JSON_EXTRACT(detail.Properties, '$.AllowedColumns') as allowed_columns,
- JSON_EXTRACT(detail.Properties, '$.AnalysisMethod') as analysis_method,
- JSON_EXTRACT(detail.Properties, '$.ConfiguredTableIdentifier') as configured_table_identifier,
+ JSON_EXTRACT(detail.Properties, '$.InputReferenceConfig') as input_reference_config,
+ JSON_EXTRACT(detail.Properties, '$.MembershipIdentifier') as membership_identifier,
+ JSON_EXTRACT(detail.Properties, '$.MembershipArn') as membership_arn,
+ JSON_EXTRACT(detail.Properties, '$.CollaborationIdentifier') as collaboration_identifier,
+ JSON_EXTRACT(detail.Properties, '$.CollaborationArn') as collaboration_arn,
JSON_EXTRACT(detail.Properties, '$.Description') as description,
JSON_EXTRACT(detail.Properties, '$.Name') as name,
- JSON_EXTRACT(detail.Properties, '$.AnalysisRules') as analysis_rules,
- JSON_EXTRACT(detail.Properties, '$.TableReference') as table_reference
+ JSON_EXTRACT(detail.Properties, '$.InputReferenceProperties') as input_reference_properties,
+ JSON_EXTRACT(detail.Properties, '$.KmsKeyArn') as kms_key_arn
FROM aws.cloud_control.resources listing
LEFT OUTER JOIN aws.cloud_control.resource detail
ON detail.data__Identifier = listing.Identifier
AND detail.region = listing.region
,json_each(JSON_EXTRACT(detail.Properties, '$.Tags'))
- WHERE listing.data__TypeName = 'AWS::CleanRooms::ConfiguredTable'
- AND detail.data__TypeName = 'AWS::CleanRooms::ConfiguredTable'
+ WHERE listing.data__TypeName = 'AWS::CleanRooms::IdMappingTable'
+ AND detail.data__TypeName = 'AWS::CleanRooms::IdMappingTable'
AND listing.region = 'us-east-1'
fallback:
predicate: sqlDialect == "postgres"
@@ -2654,29 +3922,32 @@ components:
detail.region,
json_extract_path_text(json_each.value, 'Key') as tag_key,
json_extract_path_text(json_each.value, 'Value') as tag_value,
+ json_extract_path_text(detail.Properties, 'IdMappingTableIdentifier') as id_mapping_table_identifier,
json_extract_path_text(detail.Properties, 'Arn') as arn,
- json_extract_path_text(detail.Properties, 'AllowedColumns') as allowed_columns,
- json_extract_path_text(detail.Properties, 'AnalysisMethod') as analysis_method,
- json_extract_path_text(detail.Properties, 'ConfiguredTableIdentifier') as configured_table_identifier,
+ json_extract_path_text(detail.Properties, 'InputReferenceConfig') as input_reference_config,
+ json_extract_path_text(detail.Properties, 'MembershipIdentifier') as membership_identifier,
+ json_extract_path_text(detail.Properties, 'MembershipArn') as membership_arn,
+ json_extract_path_text(detail.Properties, 'CollaborationIdentifier') as collaboration_identifier,
+ json_extract_path_text(detail.Properties, 'CollaborationArn') as collaboration_arn,
json_extract_path_text(detail.Properties, 'Description') as description,
json_extract_path_text(detail.Properties, 'Name') as name,
- json_extract_path_text(detail.Properties, 'AnalysisRules') as analysis_rules,
- json_extract_path_text(detail.Properties, 'TableReference') as table_reference
+ json_extract_path_text(detail.Properties, 'InputReferenceProperties') as input_reference_properties,
+ json_extract_path_text(detail.Properties, 'KmsKeyArn') as kms_key_arn
FROM aws.cloud_control.resources listing
LEFT OUTER JOIN aws.cloud_control.resource detail
ON detail.data__Identifier = listing.Identifier
AND detail.region = listing.region
,json_array_elements_text(json_extract_path_text(detail.Properties, 'Tags'))
- WHERE listing.data__TypeName = 'AWS::CleanRooms::ConfiguredTable'
- AND detail.data__TypeName = 'AWS::CleanRooms::ConfiguredTable'
+ WHERE listing.data__TypeName = 'AWS::CleanRooms::IdMappingTable'
+ AND detail.data__TypeName = 'AWS::CleanRooms::IdMappingTable'
AND listing.region = 'us-east-1'
- configured_table_associations:
- name: configured_table_associations
- id: aws.cleanrooms.configured_table_associations
- x-cfn-schema-name: ConfiguredTableAssociation
- x-cfn-type-name: AWS::CleanRooms::ConfiguredTableAssociation
+ id_namespace_associations:
+ name: id_namespace_associations
+ id: aws.cleanrooms.id_namespace_associations
+ x-cfn-schema-name: IdNamespaceAssociation
+ x-cfn-type-name: AWS::CleanRooms::IdNamespaceAssociation
x-identifiers:
- - ConfiguredTableAssociationIdentifier
+ - IdNamespaceAssociationIdentifier
- MembershipIdentifier
x-type: cloud_control
methods:
@@ -2685,12 +3956,12 @@ components:
requestBodyTranslate:
algorithm: naive_DesiredState
operation:
- $ref: '#/paths/~1?Action=CreateResource&Version=2021-09-30&__ConfiguredTableAssociation&__detailTransformed=true/post'
+ $ref: '#/paths/~1?Action=CreateResource&Version=2021-09-30&__IdNamespaceAssociation&__detailTransformed=true/post'
request:
mediaType: application/x-amz-json-1.0
base: |-
{
- "TypeName": "AWS::CleanRooms::ConfiguredTableAssociation"
+ "TypeName": "AWS::CleanRooms::IdNamespaceAssociation"
}
response:
mediaType: application/json
@@ -2702,7 +3973,7 @@ components:
mediaType: application/x-amz-json-1.0
base: |-
{
- "TypeName": "AWS::CleanRooms::ConfiguredTableAssociation"
+ "TypeName": "AWS::CleanRooms::IdNamespaceAssociation"
}
response:
mediaType: application/json
@@ -2714,18 +3985,18 @@ components:
mediaType: application/x-amz-json-1.0
base: |-
{
- "TypeName": "AWS::CleanRooms::ConfiguredTableAssociation"
+ "TypeName": "AWS::CleanRooms::IdNamespaceAssociation"
}
response:
mediaType: application/json
openAPIDocKey: '200'
sqlVerbs:
insert:
- - $ref: '#/components/x-stackQL-resources/configured_table_associations/methods/create_resource'
+ - $ref: '#/components/x-stackQL-resources/id_namespace_associations/methods/create_resource'
delete:
- - $ref: '#/components/x-stackQL-resources/configured_table_associations/methods/delete_resource'
+ - $ref: '#/components/x-stackQL-resources/id_namespace_associations/methods/delete_resource'
update:
- - $ref: '#/components/x-stackQL-resources/configured_table_associations/methods/update_resource'
+ - $ref: '#/components/x-stackQL-resources/id_namespace_associations/methods/update_resource'
config:
views:
select:
@@ -2734,36 +4005,44 @@ components:
SELECT
region,
data__Identifier,
+ JSON_EXTRACT(Properties, '$.IdNamespaceAssociationIdentifier') as id_namespace_association_identifier,
JSON_EXTRACT(Properties, '$.Arn') as arn,
- JSON_EXTRACT(Properties, '$.Tags') as tags,
- JSON_EXTRACT(Properties, '$.ConfiguredTableAssociationIdentifier') as configured_table_association_identifier,
- JSON_EXTRACT(Properties, '$.ConfiguredTableIdentifier') as configured_table_identifier,
- JSON_EXTRACT(Properties, '$.Description') as description,
JSON_EXTRACT(Properties, '$.MembershipIdentifier') as membership_identifier,
+ JSON_EXTRACT(Properties, '$.MembershipArn') as membership_arn,
+ JSON_EXTRACT(Properties, '$.CollaborationIdentifier') as collaboration_identifier,
+ JSON_EXTRACT(Properties, '$.CollaborationArn') as collaboration_arn,
+ JSON_EXTRACT(Properties, '$.InputReferenceConfig') as input_reference_config,
+ JSON_EXTRACT(Properties, '$.Tags') as tags,
JSON_EXTRACT(Properties, '$.Name') as name,
- JSON_EXTRACT(Properties, '$.RoleArn') as role_arn
- FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::CleanRooms::ConfiguredTableAssociation'
- AND data__Identifier = '|'
+ JSON_EXTRACT(Properties, '$.Description') as description,
+ JSON_EXTRACT(Properties, '$.IdMappingConfig') as id_mapping_config,
+ JSON_EXTRACT(Properties, '$.InputReferenceProperties') as input_reference_properties
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::CleanRooms::IdNamespaceAssociation'
+ AND data__Identifier = '|'
AND region = 'us-east-1'
fallback:
predicate: sqlDialect == "sqlite3"
ddl: |-
SELECT
detail.region,
+ JSON_EXTRACT(detail.Properties, '$.IdNamespaceAssociationIdentifier') as id_namespace_association_identifier,
JSON_EXTRACT(detail.Properties, '$.Arn') as arn,
- JSON_EXTRACT(detail.Properties, '$.Tags') as tags,
- JSON_EXTRACT(detail.Properties, '$.ConfiguredTableAssociationIdentifier') as configured_table_association_identifier,
- JSON_EXTRACT(detail.Properties, '$.ConfiguredTableIdentifier') as configured_table_identifier,
- JSON_EXTRACT(detail.Properties, '$.Description') as description,
JSON_EXTRACT(detail.Properties, '$.MembershipIdentifier') as membership_identifier,
+ JSON_EXTRACT(detail.Properties, '$.MembershipArn') as membership_arn,
+ JSON_EXTRACT(detail.Properties, '$.CollaborationIdentifier') as collaboration_identifier,
+ JSON_EXTRACT(detail.Properties, '$.CollaborationArn') as collaboration_arn,
+ JSON_EXTRACT(detail.Properties, '$.InputReferenceConfig') as input_reference_config,
+ JSON_EXTRACT(detail.Properties, '$.Tags') as tags,
JSON_EXTRACT(detail.Properties, '$.Name') as name,
- JSON_EXTRACT(detail.Properties, '$.RoleArn') as role_arn
+ JSON_EXTRACT(detail.Properties, '$.Description') as description,
+ JSON_EXTRACT(detail.Properties, '$.IdMappingConfig') as id_mapping_config,
+ JSON_EXTRACT(detail.Properties, '$.InputReferenceProperties') as input_reference_properties
FROM aws.cloud_control.resources listing
LEFT OUTER JOIN aws.cloud_control.resource detail
ON detail.data__Identifier = listing.Identifier
AND detail.region = listing.region
- WHERE listing.data__TypeName = 'AWS::CleanRooms::ConfiguredTableAssociation'
- AND detail.data__TypeName = 'AWS::CleanRooms::ConfiguredTableAssociation'
+ WHERE listing.data__TypeName = 'AWS::CleanRooms::IdNamespaceAssociation'
+ AND detail.data__TypeName = 'AWS::CleanRooms::IdNamespaceAssociation'
AND listing.region = 'us-east-1'
fallback:
predicate: sqlDialect == "postgres" && requiredParams == [ data__Identifier ]
@@ -2771,44 +4050,52 @@ components:
SELECT
region,
data__Identifier,
+ json_extract_path_text(Properties, 'IdNamespaceAssociationIdentifier') as id_namespace_association_identifier,
json_extract_path_text(Properties, 'Arn') as arn,
- json_extract_path_text(Properties, 'Tags') as tags,
- json_extract_path_text(Properties, 'ConfiguredTableAssociationIdentifier') as configured_table_association_identifier,
- json_extract_path_text(Properties, 'ConfiguredTableIdentifier') as configured_table_identifier,
- json_extract_path_text(Properties, 'Description') as description,
json_extract_path_text(Properties, 'MembershipIdentifier') as membership_identifier,
+ json_extract_path_text(Properties, 'MembershipArn') as membership_arn,
+ json_extract_path_text(Properties, 'CollaborationIdentifier') as collaboration_identifier,
+ json_extract_path_text(Properties, 'CollaborationArn') as collaboration_arn,
+ json_extract_path_text(Properties, 'InputReferenceConfig') as input_reference_config,
+ json_extract_path_text(Properties, 'Tags') as tags,
json_extract_path_text(Properties, 'Name') as name,
- json_extract_path_text(Properties, 'RoleArn') as role_arn
- FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::CleanRooms::ConfiguredTableAssociation'
- AND data__Identifier = '|'
+ json_extract_path_text(Properties, 'Description') as description,
+ json_extract_path_text(Properties, 'IdMappingConfig') as id_mapping_config,
+ json_extract_path_text(Properties, 'InputReferenceProperties') as input_reference_properties
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::CleanRooms::IdNamespaceAssociation'
+ AND data__Identifier = '|'
AND region = 'us-east-1'
fallback:
predicate: sqlDialect == "postgres"
ddl: |-
SELECT
detail.region,
+ json_extract_path_text(detail.Properties, 'IdNamespaceAssociationIdentifier') as id_namespace_association_identifier,
json_extract_path_text(detail.Properties, 'Arn') as arn,
- json_extract_path_text(detail.Properties, 'Tags') as tags,
- json_extract_path_text(detail.Properties, 'ConfiguredTableAssociationIdentifier') as configured_table_association_identifier,
- json_extract_path_text(detail.Properties, 'ConfiguredTableIdentifier') as configured_table_identifier,
- json_extract_path_text(detail.Properties, 'Description') as description,
json_extract_path_text(detail.Properties, 'MembershipIdentifier') as membership_identifier,
+ json_extract_path_text(detail.Properties, 'MembershipArn') as membership_arn,
+ json_extract_path_text(detail.Properties, 'CollaborationIdentifier') as collaboration_identifier,
+ json_extract_path_text(detail.Properties, 'CollaborationArn') as collaboration_arn,
+ json_extract_path_text(detail.Properties, 'InputReferenceConfig') as input_reference_config,
+ json_extract_path_text(detail.Properties, 'Tags') as tags,
json_extract_path_text(detail.Properties, 'Name') as name,
- json_extract_path_text(detail.Properties, 'RoleArn') as role_arn
+ json_extract_path_text(detail.Properties, 'Description') as description,
+ json_extract_path_text(detail.Properties, 'IdMappingConfig') as id_mapping_config,
+ json_extract_path_text(detail.Properties, 'InputReferenceProperties') as input_reference_properties
FROM aws.cloud_control.resources listing
LEFT OUTER JOIN aws.cloud_control.resource detail
ON detail.data__Identifier = listing.Identifier
AND detail.region = listing.region
- WHERE listing.data__TypeName = 'AWS::CleanRooms::ConfiguredTableAssociation'
- AND detail.data__TypeName = 'AWS::CleanRooms::ConfiguredTableAssociation'
+ WHERE listing.data__TypeName = 'AWS::CleanRooms::IdNamespaceAssociation'
+ AND detail.data__TypeName = 'AWS::CleanRooms::IdNamespaceAssociation'
AND listing.region = 'us-east-1'
- configured_table_associations_list_only:
- name: configured_table_associations_list_only
- id: aws.cleanrooms.configured_table_associations_list_only
- x-cfn-schema-name: ConfiguredTableAssociation
- x-cfn-type-name: AWS::CleanRooms::ConfiguredTableAssociation
+ id_namespace_associations_list_only:
+ name: id_namespace_associations_list_only
+ id: aws.cleanrooms.id_namespace_associations_list_only
+ x-cfn-schema-name: IdNamespaceAssociation
+ x-cfn-type-name: AWS::CleanRooms::IdNamespaceAssociation
x-identifiers:
- - ConfiguredTableAssociationIdentifier
+ - IdNamespaceAssociationIdentifier
- MembershipIdentifier
x-type: cloud_control_view
methods: {}
@@ -2823,24 +4110,24 @@ components:
ddl: |-
SELECT
region,
- JSON_EXTRACT(Properties, '$.ConfiguredTableAssociationIdentifier') as configured_table_association_identifier,
+ JSON_EXTRACT(Properties, '$.IdNamespaceAssociationIdentifier') as id_namespace_association_identifier,
JSON_EXTRACT(Properties, '$.MembershipIdentifier') as membership_identifier
- FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::CleanRooms::ConfiguredTableAssociation'
+ FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::CleanRooms::IdNamespaceAssociation'
AND region = 'us-east-1'
fallback:
predicate: sqlDialect == "postgres"
ddl: |-
SELECT
region,
- json_extract_path_text(Properties, 'ConfiguredTableAssociationIdentifier') as configured_table_association_identifier,
+ json_extract_path_text(Properties, 'IdNamespaceAssociationIdentifier') as id_namespace_association_identifier,
json_extract_path_text(Properties, 'MembershipIdentifier') as membership_identifier
- FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::CleanRooms::ConfiguredTableAssociation'
+ FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::CleanRooms::IdNamespaceAssociation'
AND region = 'us-east-1'
- configured_table_association_tags:
- name: configured_table_association_tags
- id: aws.cleanrooms.configured_table_association_tags
- x-cfn-schema-name: ConfiguredTableAssociation
- x-cfn-type-name: AWS::CleanRooms::ConfiguredTableAssociation
+ id_namespace_association_tags:
+ name: id_namespace_association_tags
+ id: aws.cleanrooms.id_namespace_association_tags
+ x-cfn-schema-name: IdNamespaceAssociation
+ x-cfn-type-name: AWS::CleanRooms::IdNamespaceAssociation
x-type: cloud_control_view
methods: {}
sqlVerbs:
@@ -2856,20 +4143,24 @@ components:
detail.region,
JSON_EXTRACT(json_each.value, '$.Key') as tag_key,
JSON_EXTRACT(json_each.value, '$.Value') as tag_value,
+ JSON_EXTRACT(detail.Properties, '$.IdNamespaceAssociationIdentifier') as id_namespace_association_identifier,
JSON_EXTRACT(detail.Properties, '$.Arn') as arn,
- JSON_EXTRACT(detail.Properties, '$.ConfiguredTableAssociationIdentifier') as configured_table_association_identifier,
- JSON_EXTRACT(detail.Properties, '$.ConfiguredTableIdentifier') as configured_table_identifier,
- JSON_EXTRACT(detail.Properties, '$.Description') as description,
JSON_EXTRACT(detail.Properties, '$.MembershipIdentifier') as membership_identifier,
+ JSON_EXTRACT(detail.Properties, '$.MembershipArn') as membership_arn,
+ JSON_EXTRACT(detail.Properties, '$.CollaborationIdentifier') as collaboration_identifier,
+ JSON_EXTRACT(detail.Properties, '$.CollaborationArn') as collaboration_arn,
+ JSON_EXTRACT(detail.Properties, '$.InputReferenceConfig') as input_reference_config,
JSON_EXTRACT(detail.Properties, '$.Name') as name,
- JSON_EXTRACT(detail.Properties, '$.RoleArn') as role_arn
+ JSON_EXTRACT(detail.Properties, '$.Description') as description,
+ JSON_EXTRACT(detail.Properties, '$.IdMappingConfig') as id_mapping_config,
+ JSON_EXTRACT(detail.Properties, '$.InputReferenceProperties') as input_reference_properties
FROM aws.cloud_control.resources listing
LEFT OUTER JOIN aws.cloud_control.resource detail
ON detail.data__Identifier = listing.Identifier
AND detail.region = listing.region
,json_each(JSON_EXTRACT(detail.Properties, '$.Tags'))
- WHERE listing.data__TypeName = 'AWS::CleanRooms::ConfiguredTableAssociation'
- AND detail.data__TypeName = 'AWS::CleanRooms::ConfiguredTableAssociation'
+ WHERE listing.data__TypeName = 'AWS::CleanRooms::IdNamespaceAssociation'
+ AND detail.data__TypeName = 'AWS::CleanRooms::IdNamespaceAssociation'
AND listing.region = 'us-east-1'
fallback:
predicate: sqlDialect == "postgres"
@@ -2878,20 +4169,24 @@ components:
detail.region,
json_extract_path_text(json_each.value, 'Key') as tag_key,
json_extract_path_text(json_each.value, 'Value') as tag_value,
+ json_extract_path_text(detail.Properties, 'IdNamespaceAssociationIdentifier') as id_namespace_association_identifier,
json_extract_path_text(detail.Properties, 'Arn') as arn,
- json_extract_path_text(detail.Properties, 'ConfiguredTableAssociationIdentifier') as configured_table_association_identifier,
- json_extract_path_text(detail.Properties, 'ConfiguredTableIdentifier') as configured_table_identifier,
- json_extract_path_text(detail.Properties, 'Description') as description,
json_extract_path_text(detail.Properties, 'MembershipIdentifier') as membership_identifier,
+ json_extract_path_text(detail.Properties, 'MembershipArn') as membership_arn,
+ json_extract_path_text(detail.Properties, 'CollaborationIdentifier') as collaboration_identifier,
+ json_extract_path_text(detail.Properties, 'CollaborationArn') as collaboration_arn,
+ json_extract_path_text(detail.Properties, 'InputReferenceConfig') as input_reference_config,
json_extract_path_text(detail.Properties, 'Name') as name,
- json_extract_path_text(detail.Properties, 'RoleArn') as role_arn
+ json_extract_path_text(detail.Properties, 'Description') as description,
+ json_extract_path_text(detail.Properties, 'IdMappingConfig') as id_mapping_config,
+ json_extract_path_text(detail.Properties, 'InputReferenceProperties') as input_reference_properties
FROM aws.cloud_control.resources listing
LEFT OUTER JOIN aws.cloud_control.resource detail
ON detail.data__Identifier = listing.Identifier
AND detail.region = listing.region
,json_array_elements_text(json_extract_path_text(detail.Properties, 'Tags'))
- WHERE listing.data__TypeName = 'AWS::CleanRooms::ConfiguredTableAssociation'
- AND detail.data__TypeName = 'AWS::CleanRooms::ConfiguredTableAssociation'
+ WHERE listing.data__TypeName = 'AWS::CleanRooms::IdNamespaceAssociation'
+ AND detail.data__TypeName = 'AWS::CleanRooms::IdNamespaceAssociation'
AND listing.region = 'us-east-1'
memberships:
name: memberships
@@ -3664,6 +4959,90 @@ paths:
schema:
$ref: '#/components/x-cloud-control-schemas/ProgressEvent'
description: Success
+ /?Action=CreateResource&Version=2021-09-30&__IdMappingTable&__detailTransformed=true:
+ parameters:
+ - $ref: '#/components/parameters/X-Amz-Content-Sha256'
+ - $ref: '#/components/parameters/X-Amz-Date'
+ - $ref: '#/components/parameters/X-Amz-Algorithm'
+ - $ref: '#/components/parameters/X-Amz-Credential'
+ - $ref: '#/components/parameters/X-Amz-Security-Token'
+ - $ref: '#/components/parameters/X-Amz-Signature'
+ - $ref: '#/components/parameters/X-Amz-SignedHeaders'
+ post:
+ operationId: CreateIdMappingTable
+ parameters:
+ - description: Action Header
+ in: header
+ name: X-Amz-Target
+ required: false
+ schema:
+ default: CloudApiService.CreateResource
+ enum:
+ - CloudApiService.CreateResource
+ type: string
+ - in: header
+ name: Content-Type
+ required: false
+ schema:
+ default: application/x-amz-json-1.0
+ enum:
+ - application/x-amz-json-1.0
+ type: string
+ requestBody:
+ content:
+ application/x-amz-json-1.0:
+ schema:
+ $ref: '#/components/schemas/CreateIdMappingTableRequest'
+ required: true
+ responses:
+ '200':
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/x-cloud-control-schemas/ProgressEvent'
+ description: Success
+ /?Action=CreateResource&Version=2021-09-30&__IdNamespaceAssociation&__detailTransformed=true:
+ parameters:
+ - $ref: '#/components/parameters/X-Amz-Content-Sha256'
+ - $ref: '#/components/parameters/X-Amz-Date'
+ - $ref: '#/components/parameters/X-Amz-Algorithm'
+ - $ref: '#/components/parameters/X-Amz-Credential'
+ - $ref: '#/components/parameters/X-Amz-Security-Token'
+ - $ref: '#/components/parameters/X-Amz-Signature'
+ - $ref: '#/components/parameters/X-Amz-SignedHeaders'
+ post:
+ operationId: CreateIdNamespaceAssociation
+ parameters:
+ - description: Action Header
+ in: header
+ name: X-Amz-Target
+ required: false
+ schema:
+ default: CloudApiService.CreateResource
+ enum:
+ - CloudApiService.CreateResource
+ type: string
+ - in: header
+ name: Content-Type
+ required: false
+ schema:
+ default: application/x-amz-json-1.0
+ enum:
+ - application/x-amz-json-1.0
+ type: string
+ requestBody:
+ content:
+ application/x-amz-json-1.0:
+ schema:
+ $ref: '#/components/schemas/CreateIdNamespaceAssociationRequest'
+ required: true
+ responses:
+ '200':
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/x-cloud-control-schemas/ProgressEvent'
+ description: Success
/?Action=CreateResource&Version=2021-09-30&__Membership&__detailTransformed=true:
parameters:
- $ref: '#/components/parameters/X-Amz-Content-Sha256'
diff --git a/providers/src/aws/v00.00.00000/services/cleanroomsml.yaml b/providers/src/aws/v00.00.00000/services/cleanroomsml.yaml
index ed35bb88..639c989d 100644
--- a/providers/src/aws/v00.00.00000/services/cleanroomsml.yaml
+++ b/providers/src/aws/v00.00.00000/services/cleanroomsml.yaml
@@ -557,6 +557,9 @@ components:
tagUpdatable: true
cloudFormationSystemTags: true
tagProperty: /properties/Tags
+ permissions:
+ - cleanrooms-ml:TagResource
+ - cleanrooms-ml:UntagResource
x-required-permissions:
create:
- cleanrooms-ml:CreateTrainingDataset
diff --git a/providers/src/aws/v00.00.00000/services/cloudformation.yaml b/providers/src/aws/v00.00.00000/services/cloudformation.yaml
index fcc939c9..aa677490 100644
--- a/providers/src/aws/v00.00.00000/services/cloudformation.yaml
+++ b/providers/src/aws/v00.00.00000/services/cloudformation.yaml
@@ -385,6 +385,279 @@ components:
$ref: '#/components/x-cloud-control-schemas/ProgressEvent'
type: object
schemas:
+ S3Location:
+ description: S3 Source Location for the Guard files.
+ type: object
+ properties:
+ Uri:
+ description: S3 uri of Guard files.
+ type: string
+ VersionId:
+ description: S3 object version
+ type: string
+ additionalProperties: false
+ required:
+ - Uri
+ Role:
+ description: IAM Role ARN
+ pattern: arn:.+:iam::[0-9]{12}:role/.+
+ type: string
+ maxLength: 256
+ StackName:
+ pattern: ^[a-zA-Z][-a-zA-Z0-9]*$
+ description: CloudFormation Stack name
+ type: string
+ maxLength: 128
+ TargetOperation:
+ description: Which operations should this Hook run against? Resource changes, stacks or change sets.
+ type: string
+ enum:
+ - RESOURCE
+ - STACK
+ - CHANGE_SET
+ - CLOUD_CONTROL
+ TargetName:
+ description: Type name of hook target. Hook targets are the destination where hooks will be invoked against.
+ type: string
+ pattern: ^(?!.*\*\?).*$
+ minLength: 1
+ maxLength: 256
+ Action:
+ description: Target actions are the type of operation hooks will be executed at.
+ type: string
+ enum:
+ - CREATE
+ - UPDATE
+ - DELETE
+ InvocationPoint:
+ description: Invocation points are the point in provisioning workflow where hooks will be executed.
+ type: string
+ enum:
+ - PRE_PROVISION
+ HookTarget:
+ description: Hook targets are the destination where hooks will be invoked against.
+ type: object
+ properties:
+ TargetName:
+ $ref: '#/components/schemas/TargetName'
+ Action:
+ $ref: '#/components/schemas/Action'
+ InvocationPoint:
+ $ref: '#/components/schemas/InvocationPoint'
+ additionalProperties: false
+ required:
+ - TargetName
+ - Action
+ - InvocationPoint
+ GuardHook:
+ type: object
+ properties:
+ RuleLocation:
+ $ref: '#/components/schemas/S3Location'
+ LogBucket:
+ description: S3 Bucket where the guard validate report will be uploaded to
+ type: string
+ HookStatus:
+ default: DISABLED
+ description: Attribute to specify which stacks this hook applies to or should get invoked for
+ type: string
+ enum:
+ - ENABLED
+ - DISABLED
+ TargetOperations:
+ description: Which operations should this Hook run against? Resource changes, stacks or change sets.
+ type: array
+ uniqueItems: true
+ items:
+ $ref: '#/components/schemas/TargetOperation'
+ FailureMode:
+ default: WARN
+ description: Attribute to specify CloudFormation behavior on hook failure.
+ type: string
+ enum:
+ - FAIL
+ - WARN
+ TargetFilters:
+ description: Attribute to specify which targets should invoke the hook
+ type: object
+ oneOf:
+ - type: object
+ minProperties: 1
+ properties:
+ TargetNames:
+ description: List of type names that the hook is going to target
+ type: array
+ minItems: 1
+ maxItems: 50
+ uniqueItems: true
+ x-insertionOrder: false
+ items:
+ $ref: '#/components/schemas/TargetName'
+ Actions:
+ description: List of actions that the hook is going to target
+ type: array
+ minItems: 1
+ maxItems: 50
+ uniqueItems: true
+ x-insertionOrder: false
+ items:
+ $ref: '#/components/schemas/Action'
+ InvocationPoints:
+ description: List of invocation points that the hook is going to target
+ type: array
+ minItems: 1
+ maxItems: 50
+ uniqueItems: true
+ x-insertionOrder: false
+ items:
+ $ref: '#/components/schemas/InvocationPoint'
+ additionalProperties: false
+ - type: object
+ properties:
+ Targets:
+ description: List of hook targets
+ type: array
+ minItems: 1
+ maxItems: 50
+ uniqueItems: true
+ items:
+ $ref: '#/components/schemas/HookTarget'
+ additionalProperties: false
+ required:
+ - Targets
+ StackFilters:
+ description: Filters to allow hooks to target specific stack attributes
+ type: object
+ properties:
+ FilteringCriteria:
+ description: Attribute to specify the filtering behavior. ANY will make the Hook pass if one filter matches. ALL will make the Hook pass if all filters match
+ type: string
+ default: ALL
+ enum:
+ - ALL
+ - ANY
+ StackNames:
+ description: List of stack names as filters
+ type: object
+ additionalProperties: false
+ minProperties: 1
+ properties:
+ Include:
+ description: List of stack names that the hook is going to target
+ type: array
+ maxItems: 50
+ minItems: 1
+ uniqueItems: true
+ x-insertionOrder: false
+ items:
+ $ref: '#/components/schemas/StackName'
+ Exclude:
+ description: List of stack names that the hook is going to be excluded from
+ type: array
+ maxItems: 50
+ minItems: 1
+ uniqueItems: true
+ x-insertionOrder: false
+ items:
+ $ref: '#/components/schemas/StackName'
+ StackRoles:
+ description: List of stack roles that are performing the stack operations.
+ type: object
+ additionalProperties: false
+ minProperties: 1
+ properties:
+ Include:
+ description: List of stack roles that the hook is going to target
+ type: array
+ maxItems: 50
+ minItems: 1
+ uniqueItems: true
+ x-insertionOrder: false
+ items:
+ $ref: '#/components/schemas/Role'
+ Exclude:
+ description: List of stack roles that the hook is going to be excluded from
+ type: array
+ maxItems: 50
+ minItems: 1
+ uniqueItems: true
+ x-insertionOrder: false
+ items:
+ $ref: '#/components/schemas/Role'
+ required:
+ - FilteringCriteria
+ additionalProperties: false
+ Alias:
+ description: The typename alias for the hook.
+ pattern: ^(?!(?i)aws)[A-Za-z0-9]{2,64}::[A-Za-z0-9]{2,64}::[A-Za-z0-9]{2,64}$
+ type: string
+ HookArn:
+ description: The Amazon Resource Name (ARN) of the activated hook
+ pattern: ^arn:aws[A-Za-z0-9-]{0,64}:cloudformation:[A-Za-z0-9-]{1,64}:([0-9]{12})?:type/hook/.+$
+ type: string
+ ExecutionRole:
+ description: The execution role ARN assumed by hooks to read Guard rules from S3 and write Guard outputs to S3.
+ $ref: '#/components/schemas/Role'
+ Options:
+ properties:
+ InputParams:
+ $ref: '#/components/schemas/S3Location'
+ required: []
+ additionalProperties: false
+ required:
+ - RuleLocation
+ - HookStatus
+ - TargetOperations
+ - FailureMode
+ - Alias
+ - ExecutionRole
+ x-stackql-resource-name: guard_hook
+ description: This is a CloudFormation resource for activating the first-party AWS::Hooks::GuardHook.
+ x-type-name: AWS::CloudFormation::GuardHook
+ x-stackql-primary-identifier:
+ - HookArn
+ x-create-only-properties:
+ - ExecutionRole
+ - Alias
+ x-read-only-properties:
+ - HookArn
+ x-required-properties:
+ - RuleLocation
+ - HookStatus
+ - TargetOperations
+ - FailureMode
+ - Alias
+ - ExecutionRole
+ x-tagging:
+ taggable: false
+ tagOnCreate: false
+ tagUpdatable: false
+ cloudFormationSystemTags: false
+ x-required-permissions:
+ create:
+ - cloudformation:ActivateType
+ - cloudformation:DescribeType
+ - cloudformation:ListTypes
+ - cloudformation:SetTypeConfiguration
+ - cloudformation:BatchDescribeTypeConfigurations
+ - iam:PassRole
+ read:
+ - cloudformation:DescribeType
+ - cloudformation:BatchDescribeTypeConfigurations
+ update:
+ - cloudformation:BatchDescribeTypeConfigurations
+ - cloudformation:DescribeType
+ - cloudformation:SetTypeConfiguration
+ - iam:PassRole
+ delete:
+ - cloudformation:BatchDescribeTypeConfigurations
+ - cloudformation:DescribeType
+ - cloudformation:DeactivateType
+ - cloudformation:SetTypeConfiguration
+ list:
+ - cloudformation:ListTypes
+ - cloudformation:DescribeType
+ - cloudformation:BatchDescribeTypeConfigurations
HookDefaultVersion:
type: object
properties:
@@ -598,6 +871,208 @@ components:
list:
- cloudformation:ListTypes
- cloudformation:ListTypeVersions
+ LambdaHook:
+ type: object
+ properties:
+ LambdaFunction:
+ description: Amazon Resource Name (ARN), Partial ARN, name, version, or alias of the Lambda function to invoke with this hook.
+ type: string
+ minLength: 1
+ maxLength: 170
+ pattern: (arn:(aws[a-zA-Z-]*)?:lambda:)?([a-z]{2}(-gov)?(-iso([a-z])?)?-[a-z]+-\d{1}:)?(\d{12}:)?(function:)?([a-zA-Z0-9-_]+)(:(\$LATEST|[a-zA-Z0-9-_]+))?
+ HookStatus:
+ default: ENABLED
+ description: Attribute to specify which stacks this hook applies to or should get invoked for
+ type: string
+ enum:
+ - ENABLED
+ - DISABLED
+ TargetOperations:
+ description: Which operations should this Hook run against? Resource changes, stacks or change sets.
+ type: array
+ uniqueItems: true
+ items:
+ $ref: '#/components/schemas/TargetOperation'
+ FailureMode:
+ description: Attribute to specify CloudFormation behavior on hook failure.
+ type: string
+ enum:
+ - FAIL
+ - WARN
+ TargetFilters:
+ description: Attribute to specify which targets should invoke the hook
+ type: object
+ oneOf:
+ - type: object
+ minProperties: 1
+ properties:
+ TargetNames:
+ description: List of type names that the hook is going to target
+ type: array
+ minItems: 1
+ maxItems: 50
+ uniqueItems: true
+ x-insertionOrder: false
+ items:
+ $ref: '#/components/schemas/TargetName'
+ Actions:
+ description: List of actions that the hook is going to target
+ type: array
+ minItems: 1
+ maxItems: 50
+ uniqueItems: true
+ x-insertionOrder: false
+ items:
+ $ref: '#/components/schemas/Action'
+ InvocationPoints:
+ description: List of invocation points that the hook is going to target
+ type: array
+ minItems: 1
+ maxItems: 50
+ uniqueItems: true
+ x-insertionOrder: false
+ items:
+ $ref: '#/components/schemas/InvocationPoint'
+ additionalProperties: false
+ - type: object
+ properties:
+ Targets:
+ description: List of hook targets
+ type: array
+ minItems: 1
+ maxItems: 50
+ uniqueItems: true
+ items:
+ $ref: '#/components/schemas/HookTarget'
+ additionalProperties: false
+ required:
+ - Targets
+ StackFilters:
+ description: Filters to allow hooks to target specific stack attributes
+ type: object
+ properties:
+ FilteringCriteria:
+ description: Attribute to specify the filtering behavior. ANY will make the Hook pass if one filter matches. ALL will make the Hook pass if all filters match
+ type: string
+ default: ALL
+ enum:
+ - ALL
+ - ANY
+ StackNames:
+ description: List of stack names as filters
+ type: object
+ additionalProperties: false
+ minProperties: 1
+ properties:
+ Include:
+ description: List of stack names that the hook is going to target
+ type: array
+ maxItems: 50
+ minItems: 1
+ uniqueItems: true
+ x-insertionOrder: false
+ items:
+ $ref: '#/components/schemas/StackName'
+ Exclude:
+ description: List of stack names that the hook is going to be excluded from
+ type: array
+ maxItems: 50
+ minItems: 1
+ uniqueItems: true
+ x-insertionOrder: false
+ items:
+ $ref: '#/components/schemas/StackName'
+ StackRoles:
+ description: List of stack roles that are performing the stack operations.
+ type: object
+ additionalProperties: false
+ minProperties: 1
+ properties:
+ Include:
+ description: List of stack roles that the hook is going to target
+ type: array
+ maxItems: 50
+ minItems: 1
+ uniqueItems: true
+ x-insertionOrder: false
+ items:
+ $ref: '#/components/schemas/Role'
+ Exclude:
+ description: List of stack roles that the hook is going to be excluded from
+ type: array
+ maxItems: 50
+ minItems: 1
+ uniqueItems: true
+ x-insertionOrder: false
+ items:
+ $ref: '#/components/schemas/Role'
+ required:
+ - FilteringCriteria
+ additionalProperties: false
+ Alias:
+ description: The typename alias for the hook.
+ pattern: ^(?!(?i)aws)[A-Za-z0-9]{2,64}::[A-Za-z0-9]{2,64}::[A-Za-z0-9]{2,64}$
+ type: string
+ HookArn:
+ description: The Amazon Resource Name (ARN) of the activated hook
+ pattern: ^arn:aws[A-Za-z0-9-]{0,64}:cloudformation:[A-Za-z0-9-]{1,64}:([0-9]{12})?:type/hook/.+$
+ type: string
+ ExecutionRole:
+ description: The execution role ARN assumed by Hooks to invoke Lambda.
+ $ref: '#/components/schemas/Role'
+ required:
+ - LambdaFunction
+ - FailureMode
+ - Alias
+ - ExecutionRole
+ - TargetOperations
+ - HookStatus
+ x-stackql-resource-name: lambda_hook
+ description: This is a CloudFormation resource for the first-party AWS::Hooks::LambdaHook.
+ x-type-name: AWS::CloudFormation::LambdaHook
+ x-stackql-primary-identifier:
+ - HookArn
+ x-create-only-properties:
+ - Alias
+ x-read-only-properties:
+ - HookArn
+ x-required-properties:
+ - LambdaFunction
+ - FailureMode
+ - Alias
+ - ExecutionRole
+ - TargetOperations
+ - HookStatus
+ x-tagging:
+ taggable: false
+ tagOnCreate: false
+ tagUpdatable: false
+ cloudFormationSystemTags: false
+ x-required-permissions:
+ create:
+ - cloudformation:ListTypes
+ - cloudformation:ActivateType
+ - cloudformation:BatchDescribeTypeConfigurations
+ - cloudformation:DescribeType
+ - cloudformation:SetTypeConfiguration
+ - iam:PassRole
+ read:
+ - cloudformation:BatchDescribeTypeConfigurations
+ - cloudformation:DescribeType
+ update:
+ - cloudformation:BatchDescribeTypeConfigurations
+ - cloudformation:DescribeType
+ - cloudformation:SetTypeConfiguration
+ - iam:PassRole
+ delete:
+ - cloudformation:BatchDescribeTypeConfigurations
+ - cloudformation:DeactivateType
+ - cloudformation:DescribeType
+ - cloudformation:SetTypeConfiguration
+ list:
+ - cloudformation:ListTypes
+ - cloudformation:BatchDescribeTypeConfigurations
+ - cloudformation:DescribeType
ModuleDefaultVersion:
type: object
properties:
@@ -743,7 +1218,7 @@ components:
maxLength: 64
PublisherId:
description: The publisher id assigned by CloudFormation for publishing in this region.
- pattern: '[0-9a-zA-Z]{40}'
+ pattern: '[0-9a-zA-Z-]{40}'
type: string
minLength: 1
maxLength: 40
@@ -808,7 +1283,7 @@ components:
type: boolean
PublisherId:
description: The publisher id assigned by CloudFormation for publishing in this region.
- pattern: '[0-9a-zA-Z]{40}'
+ pattern: '[0-9a-zA-Z-]{40}'
type: string
minLength: 1
maxLength: 40
@@ -844,8 +1319,6 @@ components:
x-create-only-properties:
- AcceptTermsAndConditions
- ConnectionArn
- x-write-only-properties:
- - ConnectionArn
x-read-only-properties:
- PublisherId
- PublisherStatus
@@ -1221,6 +1694,12 @@ components:
enum:
- SEQUENTIAL
- PARALLEL
+ ConcurrencyMode:
+ description: Specifies how the concurrency level behaves during the operation execution.
+ type: string
+ enum:
+ - STRICT_FAILURE_TOLERANCE
+ - SOFT_FAILURE_TOLERANCE
Active:
description: When true, StackSets performs non-conflicting operations concurrently and queues conflicting operations. After conflicting operations finish, StackSets starts queued operations in request order.
type: boolean
@@ -1248,6 +1727,8 @@ components:
$ref: '#/components/schemas/Region'
RegionConcurrencyType:
$ref: '#/components/schemas/RegionConcurrencyType'
+ ConcurrencyMode:
+ $ref: '#/components/schemas/ConcurrencyMode'
additionalProperties: false
Parameter:
type: object
@@ -1483,7 +1964,7 @@ components:
type: string
PublisherId:
description: The publisher id assigned by CloudFormation for publishing in this region.
- pattern: '[0-9a-zA-Z]{40}'
+ pattern: '[0-9a-zA-Z-]{40}'
type: string
minLength: 1
maxLength: 40
@@ -1561,6 +2042,175 @@ components:
- cloudformation:DescribeType
list:
- cloudformation:ListTypes
+ CreateGuardHookRequest:
+ properties:
+ ClientToken:
+ type: string
+ RoleArn:
+ type: string
+ TypeName:
+ type: string
+ TypeVersionId:
+ type: string
+ DesiredState:
+ type: object
+ properties:
+ RuleLocation:
+ $ref: '#/components/schemas/S3Location'
+ LogBucket:
+ description: S3 Bucket where the guard validate report will be uploaded to
+ type: string
+ HookStatus:
+ default: DISABLED
+ description: Attribute to specify which stacks this hook applies to or should get invoked for
+ type: string
+ enum:
+ - ENABLED
+ - DISABLED
+ TargetOperations:
+ description: Which operations should this Hook run against? Resource changes, stacks or change sets.
+ type: array
+ uniqueItems: true
+ items:
+ $ref: '#/components/schemas/TargetOperation'
+ FailureMode:
+ default: WARN
+ description: Attribute to specify CloudFormation behavior on hook failure.
+ type: string
+ enum:
+ - FAIL
+ - WARN
+ TargetFilters:
+ description: Attribute to specify which targets should invoke the hook
+ type: object
+ oneOf:
+ - type: object
+ minProperties: 1
+ properties:
+ TargetNames:
+ description: List of type names that the hook is going to target
+ type: array
+ minItems: 1
+ maxItems: 50
+ uniqueItems: true
+ x-insertionOrder: false
+ items:
+ $ref: '#/components/schemas/TargetName'
+ Actions:
+ description: List of actions that the hook is going to target
+ type: array
+ minItems: 1
+ maxItems: 50
+ uniqueItems: true
+ x-insertionOrder: false
+ items:
+ $ref: '#/components/schemas/Action'
+ InvocationPoints:
+ description: List of invocation points that the hook is going to target
+ type: array
+ minItems: 1
+ maxItems: 50
+ uniqueItems: true
+ x-insertionOrder: false
+ items:
+ $ref: '#/components/schemas/InvocationPoint'
+ additionalProperties: false
+ - type: object
+ properties:
+ Targets:
+ description: List of hook targets
+ type: array
+ minItems: 1
+ maxItems: 50
+ uniqueItems: true
+ items:
+ $ref: '#/components/schemas/HookTarget'
+ additionalProperties: false
+ required:
+ - Targets
+ StackFilters:
+ description: Filters to allow hooks to target specific stack attributes
+ type: object
+ properties:
+ FilteringCriteria:
+ description: Attribute to specify the filtering behavior. ANY will make the Hook pass if one filter matches. ALL will make the Hook pass if all filters match
+ type: string
+ default: ALL
+ enum:
+ - ALL
+ - ANY
+ StackNames:
+ description: List of stack names as filters
+ type: object
+ additionalProperties: false
+ minProperties: 1
+ properties:
+ Include:
+ description: List of stack names that the hook is going to target
+ type: array
+ maxItems: 50
+ minItems: 1
+ uniqueItems: true
+ x-insertionOrder: false
+ items:
+ $ref: '#/components/schemas/StackName'
+ Exclude:
+ description: List of stack names that the hook is going to be excluded from
+ type: array
+ maxItems: 50
+ minItems: 1
+ uniqueItems: true
+ x-insertionOrder: false
+ items:
+ $ref: '#/components/schemas/StackName'
+ StackRoles:
+ description: List of stack roles that are performing the stack operations.
+ type: object
+ additionalProperties: false
+ minProperties: 1
+ properties:
+ Include:
+ description: List of stack roles that the hook is going to target
+ type: array
+ maxItems: 50
+ minItems: 1
+ uniqueItems: true
+ x-insertionOrder: false
+ items:
+ $ref: '#/components/schemas/Role'
+ Exclude:
+ description: List of stack roles that the hook is going to be excluded from
+ type: array
+ maxItems: 50
+ minItems: 1
+ uniqueItems: true
+ x-insertionOrder: false
+ items:
+ $ref: '#/components/schemas/Role'
+ required:
+ - FilteringCriteria
+ additionalProperties: false
+ Alias:
+ description: The typename alias for the hook.
+ pattern: ^(?!(?i)aws)[A-Za-z0-9]{2,64}::[A-Za-z0-9]{2,64}::[A-Za-z0-9]{2,64}$
+ type: string
+ HookArn:
+ description: The Amazon Resource Name (ARN) of the activated hook
+ pattern: ^arn:aws[A-Za-z0-9-]{0,64}:cloudformation:[A-Za-z0-9-]{1,64}:([0-9]{12})?:type/hook/.+$
+ type: string
+ ExecutionRole:
+ description: The execution role ARN assumed by hooks to read Guard rules from S3 and write Guard outputs to S3.
+ $ref: '#/components/schemas/Role'
+ Options:
+ properties:
+ InputParams:
+ $ref: '#/components/schemas/S3Location'
+ required: []
+ additionalProperties: false
+ x-stackQL-stringOnly: true
+ x-title: CreateGuardHookRequest
+ type: object
+ required: []
CreateHookDefaultVersionRequest:
properties:
ClientToken:
@@ -1707,6 +2357,169 @@ components:
x-title: CreateHookVersionRequest
type: object
required: []
+ CreateLambdaHookRequest:
+ properties:
+ ClientToken:
+ type: string
+ RoleArn:
+ type: string
+ TypeName:
+ type: string
+ TypeVersionId:
+ type: string
+ DesiredState:
+ type: object
+ properties:
+ LambdaFunction:
+ description: Amazon Resource Name (ARN), Partial ARN, name, version, or alias of the Lambda function to invoke with this hook.
+ type: string
+ minLength: 1
+ maxLength: 170
+ pattern: (arn:(aws[a-zA-Z-]*)?:lambda:)?([a-z]{2}(-gov)?(-iso([a-z])?)?-[a-z]+-\d{1}:)?(\d{12}:)?(function:)?([a-zA-Z0-9-_]+)(:(\$LATEST|[a-zA-Z0-9-_]+))?
+ HookStatus:
+ default: ENABLED
+ description: Attribute to specify which stacks this hook applies to or should get invoked for
+ type: string
+ enum:
+ - ENABLED
+ - DISABLED
+ TargetOperations:
+ description: Which operations should this Hook run against? Resource changes, stacks or change sets.
+ type: array
+ uniqueItems: true
+ items:
+ $ref: '#/components/schemas/TargetOperation'
+ FailureMode:
+ description: Attribute to specify CloudFormation behavior on hook failure.
+ type: string
+ enum:
+ - FAIL
+ - WARN
+ TargetFilters:
+ description: Attribute to specify which targets should invoke the hook
+ type: object
+ oneOf:
+ - type: object
+ minProperties: 1
+ properties:
+ TargetNames:
+ description: List of type names that the hook is going to target
+ type: array
+ minItems: 1
+ maxItems: 50
+ uniqueItems: true
+ x-insertionOrder: false
+ items:
+ $ref: '#/components/schemas/TargetName'
+ Actions:
+ description: List of actions that the hook is going to target
+ type: array
+ minItems: 1
+ maxItems: 50
+ uniqueItems: true
+ x-insertionOrder: false
+ items:
+ $ref: '#/components/schemas/Action'
+ InvocationPoints:
+ description: List of invocation points that the hook is going to target
+ type: array
+ minItems: 1
+ maxItems: 50
+ uniqueItems: true
+ x-insertionOrder: false
+ items:
+ $ref: '#/components/schemas/InvocationPoint'
+ additionalProperties: false
+ - type: object
+ properties:
+ Targets:
+ description: List of hook targets
+ type: array
+ minItems: 1
+ maxItems: 50
+ uniqueItems: true
+ items:
+ $ref: '#/components/schemas/HookTarget'
+ additionalProperties: false
+ required:
+ - Targets
+ StackFilters:
+ description: Filters to allow hooks to target specific stack attributes
+ type: object
+ properties:
+ FilteringCriteria:
+ description: Attribute to specify the filtering behavior. ANY will make the Hook pass if one filter matches. ALL will make the Hook pass if all filters match
+ type: string
+ default: ALL
+ enum:
+ - ALL
+ - ANY
+ StackNames:
+ description: List of stack names as filters
+ type: object
+ additionalProperties: false
+ minProperties: 1
+ properties:
+ Include:
+ description: List of stack names that the hook is going to target
+ type: array
+ maxItems: 50
+ minItems: 1
+ uniqueItems: true
+ x-insertionOrder: false
+ items:
+ $ref: '#/components/schemas/StackName'
+ Exclude:
+ description: List of stack names that the hook is going to be excluded from
+ type: array
+ maxItems: 50
+ minItems: 1
+ uniqueItems: true
+ x-insertionOrder: false
+ items:
+ $ref: '#/components/schemas/StackName'
+ StackRoles:
+ description: List of stack roles that are performing the stack operations.
+ type: object
+ additionalProperties: false
+ minProperties: 1
+ properties:
+ Include:
+ description: List of stack roles that the hook is going to target
+ type: array
+ maxItems: 50
+ minItems: 1
+ uniqueItems: true
+ x-insertionOrder: false
+ items:
+ $ref: '#/components/schemas/Role'
+ Exclude:
+ description: List of stack roles that the hook is going to be excluded from
+ type: array
+ maxItems: 50
+ minItems: 1
+ uniqueItems: true
+ x-insertionOrder: false
+ items:
+ $ref: '#/components/schemas/Role'
+ required:
+ - FilteringCriteria
+ additionalProperties: false
+ Alias:
+ description: The typename alias for the hook.
+ pattern: ^(?!(?i)aws)[A-Za-z0-9]{2,64}::[A-Za-z0-9]{2,64}::[A-Za-z0-9]{2,64}$
+ type: string
+ HookArn:
+ description: The Amazon Resource Name (ARN) of the activated hook
+ pattern: ^arn:aws[A-Za-z0-9-]{0,64}:cloudformation:[A-Za-z0-9-]{1,64}:([0-9]{12})?:type/hook/.+$
+ type: string
+ ExecutionRole:
+ description: The execution role ARN assumed by Hooks to invoke Lambda.
+ $ref: '#/components/schemas/Role'
+ x-stackQL-stringOnly: true
+ x-title: CreateLambdaHookRequest
+ type: object
+ required: []
CreateModuleDefaultVersionRequest:
properties:
ClientToken:
@@ -1829,7 +2642,7 @@ components:
maxLength: 64
PublisherId:
description: The publisher id assigned by CloudFormation for publishing in this region.
- pattern: '[0-9a-zA-Z]{40}'
+ pattern: '[0-9a-zA-Z-]{40}'
type: string
minLength: 1
maxLength: 40
@@ -1877,7 +2690,7 @@ components:
type: boolean
PublisherId:
description: The publisher id assigned by CloudFormation for publishing in this region.
- pattern: '[0-9a-zA-Z]{40}'
+ pattern: '[0-9a-zA-Z-]{40}'
type: string
minLength: 1
maxLength: 40
@@ -2254,7 +3067,7 @@ components:
type: string
PublisherId:
description: The publisher id assigned by CloudFormation for publishing in this region.
- pattern: '[0-9a-zA-Z]{40}'
+ pattern: '[0-9a-zA-Z-]{40}'
type: string
minLength: 1
maxLength: 40
@@ -2312,6 +3125,180 @@ components:
description: Amazon Signature authorization v4
x-amazon-apigateway-authtype: awsSigv4
x-stackQL-resources:
+ guard_hooks:
+ name: guard_hooks
+ id: aws.cloudformation.guard_hooks
+ x-cfn-schema-name: GuardHook
+ x-cfn-type-name: AWS::CloudFormation::GuardHook
+ x-identifiers:
+ - HookArn
+ x-type: cloud_control
+ methods:
+ create_resource:
+ config:
+ requestBodyTranslate:
+ algorithm: naive_DesiredState
+ operation:
+ $ref: '#/paths/~1?Action=CreateResource&Version=2021-09-30&__GuardHook&__detailTransformed=true/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::CloudFormation::GuardHook"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ update_resource:
+ operation:
+ $ref: '#/paths/~1?Action=UpdateResource&Version=2021-09-30/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::CloudFormation::GuardHook"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ delete_resource:
+ operation:
+ $ref: '#/paths/~1?Action=DeleteResource&Version=2021-09-30/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::CloudFormation::GuardHook"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ sqlVerbs:
+ insert:
+ - $ref: '#/components/x-stackQL-resources/guard_hooks/methods/create_resource'
+ delete:
+ - $ref: '#/components/x-stackQL-resources/guard_hooks/methods/delete_resource'
+ update:
+ - $ref: '#/components/x-stackQL-resources/guard_hooks/methods/update_resource'
+ config:
+ views:
+ select:
+ predicate: sqlDialect == "sqlite3" && requiredParams == [ data__Identifier ]
+ ddl: |-
+ SELECT
+ region,
+ data__Identifier,
+ JSON_EXTRACT(Properties, '$.RuleLocation') as rule_location,
+ JSON_EXTRACT(Properties, '$.LogBucket') as log_bucket,
+ JSON_EXTRACT(Properties, '$.HookStatus') as hook_status,
+ JSON_EXTRACT(Properties, '$.TargetOperations') as target_operations,
+ JSON_EXTRACT(Properties, '$.FailureMode') as failure_mode,
+ JSON_EXTRACT(Properties, '$.TargetFilters') as target_filters,
+ JSON_EXTRACT(Properties, '$.StackFilters') as stack_filters,
+ JSON_EXTRACT(Properties, '$.Alias') as alias,
+ JSON_EXTRACT(Properties, '$.HookArn') as hook_arn,
+ JSON_EXTRACT(Properties, '$.ExecutionRole') as execution_role,
+ JSON_EXTRACT(Properties, '$.Options') as options
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::CloudFormation::GuardHook'
+ AND data__Identifier = ''
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "sqlite3"
+ ddl: |-
+ SELECT
+ detail.region,
+ JSON_EXTRACT(detail.Properties, '$.RuleLocation') as rule_location,
+ JSON_EXTRACT(detail.Properties, '$.LogBucket') as log_bucket,
+ JSON_EXTRACT(detail.Properties, '$.HookStatus') as hook_status,
+ JSON_EXTRACT(detail.Properties, '$.TargetOperations') as target_operations,
+ JSON_EXTRACT(detail.Properties, '$.FailureMode') as failure_mode,
+ JSON_EXTRACT(detail.Properties, '$.TargetFilters') as target_filters,
+ JSON_EXTRACT(detail.Properties, '$.StackFilters') as stack_filters,
+ JSON_EXTRACT(detail.Properties, '$.Alias') as alias,
+ JSON_EXTRACT(detail.Properties, '$.HookArn') as hook_arn,
+ JSON_EXTRACT(detail.Properties, '$.ExecutionRole') as execution_role,
+ JSON_EXTRACT(detail.Properties, '$.Options') as options
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ WHERE listing.data__TypeName = 'AWS::CloudFormation::GuardHook'
+ AND detail.data__TypeName = 'AWS::CloudFormation::GuardHook'
+ AND listing.region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres" && requiredParams == [ data__Identifier ]
+ ddl: |-
+ SELECT
+ region,
+ data__Identifier,
+ json_extract_path_text(Properties, 'RuleLocation') as rule_location,
+ json_extract_path_text(Properties, 'LogBucket') as log_bucket,
+ json_extract_path_text(Properties, 'HookStatus') as hook_status,
+ json_extract_path_text(Properties, 'TargetOperations') as target_operations,
+ json_extract_path_text(Properties, 'FailureMode') as failure_mode,
+ json_extract_path_text(Properties, 'TargetFilters') as target_filters,
+ json_extract_path_text(Properties, 'StackFilters') as stack_filters,
+ json_extract_path_text(Properties, 'Alias') as alias,
+ json_extract_path_text(Properties, 'HookArn') as hook_arn,
+ json_extract_path_text(Properties, 'ExecutionRole') as execution_role,
+ json_extract_path_text(Properties, 'Options') as options
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::CloudFormation::GuardHook'
+ AND data__Identifier = ''
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres"
+ ddl: |-
+ SELECT
+ detail.region,
+ json_extract_path_text(detail.Properties, 'RuleLocation') as rule_location,
+ json_extract_path_text(detail.Properties, 'LogBucket') as log_bucket,
+ json_extract_path_text(detail.Properties, 'HookStatus') as hook_status,
+ json_extract_path_text(detail.Properties, 'TargetOperations') as target_operations,
+ json_extract_path_text(detail.Properties, 'FailureMode') as failure_mode,
+ json_extract_path_text(detail.Properties, 'TargetFilters') as target_filters,
+ json_extract_path_text(detail.Properties, 'StackFilters') as stack_filters,
+ json_extract_path_text(detail.Properties, 'Alias') as alias,
+ json_extract_path_text(detail.Properties, 'HookArn') as hook_arn,
+ json_extract_path_text(detail.Properties, 'ExecutionRole') as execution_role,
+ json_extract_path_text(detail.Properties, 'Options') as options
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ WHERE listing.data__TypeName = 'AWS::CloudFormation::GuardHook'
+ AND detail.data__TypeName = 'AWS::CloudFormation::GuardHook'
+ AND listing.region = 'us-east-1'
+ guard_hooks_list_only:
+ name: guard_hooks_list_only
+ id: aws.cloudformation.guard_hooks_list_only
+ x-cfn-schema-name: GuardHook
+ x-cfn-type-name: AWS::CloudFormation::GuardHook
+ x-identifiers:
+ - HookArn
+ x-type: cloud_control_view
+ methods: {}
+ sqlVerbs:
+ insert: []
+ delete: []
+ update: []
+ config:
+ views:
+ select:
+ predicate: sqlDialect == "sqlite3"
+ ddl: |-
+ SELECT
+ region,
+ JSON_EXTRACT(Properties, '$.HookArn') as hook_arn
+ FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::CloudFormation::GuardHook'
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres"
+ ddl: |-
+ SELECT
+ region,
+ json_extract_path_text(Properties, 'HookArn') as hook_arn
+ FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::CloudFormation::GuardHook'
+ AND region = 'us-east-1'
hook_default_versions:
name: hook_default_versions
id: aws.cloudformation.hook_default_versions
@@ -2748,6 +3735,172 @@ components:
json_extract_path_text(Properties, 'Arn') as arn
FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::CloudFormation::HookVersion'
AND region = 'us-east-1'
+ lambda_hooks:
+ name: lambda_hooks
+ id: aws.cloudformation.lambda_hooks
+ x-cfn-schema-name: LambdaHook
+ x-cfn-type-name: AWS::CloudFormation::LambdaHook
+ x-identifiers:
+ - HookArn
+ x-type: cloud_control
+ methods:
+ create_resource:
+ config:
+ requestBodyTranslate:
+ algorithm: naive_DesiredState
+ operation:
+ $ref: '#/paths/~1?Action=CreateResource&Version=2021-09-30&__LambdaHook&__detailTransformed=true/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::CloudFormation::LambdaHook"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ update_resource:
+ operation:
+ $ref: '#/paths/~1?Action=UpdateResource&Version=2021-09-30/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::CloudFormation::LambdaHook"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ delete_resource:
+ operation:
+ $ref: '#/paths/~1?Action=DeleteResource&Version=2021-09-30/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::CloudFormation::LambdaHook"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ sqlVerbs:
+ insert:
+ - $ref: '#/components/x-stackQL-resources/lambda_hooks/methods/create_resource'
+ delete:
+ - $ref: '#/components/x-stackQL-resources/lambda_hooks/methods/delete_resource'
+ update:
+ - $ref: '#/components/x-stackQL-resources/lambda_hooks/methods/update_resource'
+ config:
+ views:
+ select:
+ predicate: sqlDialect == "sqlite3" && requiredParams == [ data__Identifier ]
+ ddl: |-
+ SELECT
+ region,
+ data__Identifier,
+ JSON_EXTRACT(Properties, '$.LambdaFunction') as lambda_function,
+ JSON_EXTRACT(Properties, '$.HookStatus') as hook_status,
+ JSON_EXTRACT(Properties, '$.TargetOperations') as target_operations,
+ JSON_EXTRACT(Properties, '$.FailureMode') as failure_mode,
+ JSON_EXTRACT(Properties, '$.TargetFilters') as target_filters,
+ JSON_EXTRACT(Properties, '$.StackFilters') as stack_filters,
+ JSON_EXTRACT(Properties, '$.Alias') as alias,
+ JSON_EXTRACT(Properties, '$.HookArn') as hook_arn,
+ JSON_EXTRACT(Properties, '$.ExecutionRole') as execution_role
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::CloudFormation::LambdaHook'
+ AND data__Identifier = ''
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "sqlite3"
+ ddl: |-
+ SELECT
+ detail.region,
+ JSON_EXTRACT(detail.Properties, '$.LambdaFunction') as lambda_function,
+ JSON_EXTRACT(detail.Properties, '$.HookStatus') as hook_status,
+ JSON_EXTRACT(detail.Properties, '$.TargetOperations') as target_operations,
+ JSON_EXTRACT(detail.Properties, '$.FailureMode') as failure_mode,
+ JSON_EXTRACT(detail.Properties, '$.TargetFilters') as target_filters,
+ JSON_EXTRACT(detail.Properties, '$.StackFilters') as stack_filters,
+ JSON_EXTRACT(detail.Properties, '$.Alias') as alias,
+ JSON_EXTRACT(detail.Properties, '$.HookArn') as hook_arn,
+ JSON_EXTRACT(detail.Properties, '$.ExecutionRole') as execution_role
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ WHERE listing.data__TypeName = 'AWS::CloudFormation::LambdaHook'
+ AND detail.data__TypeName = 'AWS::CloudFormation::LambdaHook'
+ AND listing.region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres" && requiredParams == [ data__Identifier ]
+ ddl: |-
+ SELECT
+ region,
+ data__Identifier,
+ json_extract_path_text(Properties, 'LambdaFunction') as lambda_function,
+ json_extract_path_text(Properties, 'HookStatus') as hook_status,
+ json_extract_path_text(Properties, 'TargetOperations') as target_operations,
+ json_extract_path_text(Properties, 'FailureMode') as failure_mode,
+ json_extract_path_text(Properties, 'TargetFilters') as target_filters,
+ json_extract_path_text(Properties, 'StackFilters') as stack_filters,
+ json_extract_path_text(Properties, 'Alias') as alias,
+ json_extract_path_text(Properties, 'HookArn') as hook_arn,
+ json_extract_path_text(Properties, 'ExecutionRole') as execution_role
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::CloudFormation::LambdaHook'
+ AND data__Identifier = ''
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres"
+ ddl: |-
+ SELECT
+ detail.region,
+ json_extract_path_text(detail.Properties, 'LambdaFunction') as lambda_function,
+ json_extract_path_text(detail.Properties, 'HookStatus') as hook_status,
+ json_extract_path_text(detail.Properties, 'TargetOperations') as target_operations,
+ json_extract_path_text(detail.Properties, 'FailureMode') as failure_mode,
+ json_extract_path_text(detail.Properties, 'TargetFilters') as target_filters,
+ json_extract_path_text(detail.Properties, 'StackFilters') as stack_filters,
+ json_extract_path_text(detail.Properties, 'Alias') as alias,
+ json_extract_path_text(detail.Properties, 'HookArn') as hook_arn,
+ json_extract_path_text(detail.Properties, 'ExecutionRole') as execution_role
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ WHERE listing.data__TypeName = 'AWS::CloudFormation::LambdaHook'
+ AND detail.data__TypeName = 'AWS::CloudFormation::LambdaHook'
+ AND listing.region = 'us-east-1'
+ lambda_hooks_list_only:
+ name: lambda_hooks_list_only
+ id: aws.cloudformation.lambda_hooks_list_only
+ x-cfn-schema-name: LambdaHook
+ x-cfn-type-name: AWS::CloudFormation::LambdaHook
+ x-identifiers:
+ - HookArn
+ x-type: cloud_control_view
+ methods: {}
+ sqlVerbs:
+ insert: []
+ delete: []
+ update: []
+ config:
+ views:
+ select:
+ predicate: sqlDialect == "sqlite3"
+ ddl: |-
+ SELECT
+ region,
+ JSON_EXTRACT(Properties, '$.HookArn') as hook_arn
+ FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::CloudFormation::LambdaHook'
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres"
+ ddl: |-
+ SELECT
+ region,
+ json_extract_path_text(Properties, 'HookArn') as hook_arn
+ FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::CloudFormation::LambdaHook'
+ AND region = 'us-east-1'
module_default_versions:
name: module_default_versions
id: aws.cloudformation.module_default_versions
@@ -4406,6 +5559,48 @@ paths:
schema:
$ref: '#/components/x-cloud-control-schemas/UpdateResourceOutput'
description: Success
+ /?Action=CreateResource&Version=2021-09-30&__GuardHook&__detailTransformed=true:
+ parameters:
+ - $ref: '#/components/parameters/X-Amz-Content-Sha256'
+ - $ref: '#/components/parameters/X-Amz-Date'
+ - $ref: '#/components/parameters/X-Amz-Algorithm'
+ - $ref: '#/components/parameters/X-Amz-Credential'
+ - $ref: '#/components/parameters/X-Amz-Security-Token'
+ - $ref: '#/components/parameters/X-Amz-Signature'
+ - $ref: '#/components/parameters/X-Amz-SignedHeaders'
+ post:
+ operationId: CreateGuardHook
+ parameters:
+ - description: Action Header
+ in: header
+ name: X-Amz-Target
+ required: false
+ schema:
+ default: CloudApiService.CreateResource
+ enum:
+ - CloudApiService.CreateResource
+ type: string
+ - in: header
+ name: Content-Type
+ required: false
+ schema:
+ default: application/x-amz-json-1.0
+ enum:
+ - application/x-amz-json-1.0
+ type: string
+ requestBody:
+ content:
+ application/x-amz-json-1.0:
+ schema:
+ $ref: '#/components/schemas/CreateGuardHookRequest'
+ required: true
+ responses:
+ '200':
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/x-cloud-control-schemas/ProgressEvent'
+ description: Success
/?Action=CreateResource&Version=2021-09-30&__HookDefaultVersion&__detailTransformed=true:
parameters:
- $ref: '#/components/parameters/X-Amz-Content-Sha256'
@@ -4532,6 +5727,48 @@ paths:
schema:
$ref: '#/components/x-cloud-control-schemas/ProgressEvent'
description: Success
+ /?Action=CreateResource&Version=2021-09-30&__LambdaHook&__detailTransformed=true:
+ parameters:
+ - $ref: '#/components/parameters/X-Amz-Content-Sha256'
+ - $ref: '#/components/parameters/X-Amz-Date'
+ - $ref: '#/components/parameters/X-Amz-Algorithm'
+ - $ref: '#/components/parameters/X-Amz-Credential'
+ - $ref: '#/components/parameters/X-Amz-Security-Token'
+ - $ref: '#/components/parameters/X-Amz-Signature'
+ - $ref: '#/components/parameters/X-Amz-SignedHeaders'
+ post:
+ operationId: CreateLambdaHook
+ parameters:
+ - description: Action Header
+ in: header
+ name: X-Amz-Target
+ required: false
+ schema:
+ default: CloudApiService.CreateResource
+ enum:
+ - CloudApiService.CreateResource
+ type: string
+ - in: header
+ name: Content-Type
+ required: false
+ schema:
+ default: application/x-amz-json-1.0
+ enum:
+ - application/x-amz-json-1.0
+ type: string
+ requestBody:
+ content:
+ application/x-amz-json-1.0:
+ schema:
+ $ref: '#/components/schemas/CreateLambdaHookRequest'
+ required: true
+ responses:
+ '200':
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/x-cloud-control-schemas/ProgressEvent'
+ description: Success
/?Action=CreateResource&Version=2021-09-30&__ModuleDefaultVersion&__detailTransformed=true:
parameters:
- $ref: '#/components/parameters/X-Amz-Content-Sha256'
diff --git a/providers/src/aws/v00.00.00000/services/cloudfront.yaml b/providers/src/aws/v00.00.00000/services/cloudfront.yaml
index 6a8ea09f..32eae328 100644
--- a/providers/src/aws/v00.00.00000/services/cloudfront.yaml
+++ b/providers/src/aws/v00.00.00000/services/cloudfront.yaml
@@ -385,27 +385,123 @@ components:
$ref: '#/components/x-cloud-control-schemas/ProgressEvent'
type: object
schemas:
+ AnycastIpList:
+ type: object
+ properties:
+ AnycastIpList:
+ $ref: '#/components/schemas/AnycastIpList'
+ ETag:
+ type: string
+ Id:
+ type: string
+ IpCount:
+ type: integer
+ Name:
+ maxLength: 64
+ minLength: 1
+ pattern: ^[a-zA-Z0-9-_]{1,64}$
+ type: string
+ Tags:
+ $ref: '#/components/schemas/Tags'
+ required:
+ - IpCount
+ - Name
+ x-stackql-resource-name: anycast_ip_list
+ description: Definition of AWS::CloudFront::AnycastIpList Resource Type
+ x-type-name: AWS::CloudFront::AnycastIpList
+ x-stackql-primary-identifier:
+ - Id
+ x-create-only-properties:
+ - IpCount
+ - Name
+ - Tags
+ x-read-only-properties:
+ - AnycastIpList
+ - ETag
+ - Id
+ x-required-properties:
+ - IpCount
+ - Name
+ x-tagging:
+ cloudFormationSystemTags: false
+ permissions:
+ - cloudfront:TagResource
+ - cloudfront:ListTagsForResource
+ tagOnCreate: true
+ tagProperty: /properties/Tags
+ tagUpdatable: false
+ taggable: true
+ x-required-permissions:
+ create:
+ - cloudfront:CreateAnycastIpList
+ - cloudfront:TagResource
+ delete:
+ - cloudfront:DeleteAnycastIpList
+ - cloudfront:GetAnycastIpList
+ list:
+ - cloudfront:ListAnycastIpLists
+ read:
+ - cloudfront:GetAnycastIpList
+ - cloudfront:ListTagsForResource
+ Tag:
+ additionalProperties: false
+ properties:
+ Key:
+ type: string
+ description: |-
+ A string that contains ``Tag`` key.
+ The string length should be between 1 and 128 characters. Valid characters include ``a-z``, ``A-Z``, ``0-9``, space, and the special characters ``_ - . : / = + @``.
+ Value:
+ type: string
+ description: |-
+ A string that contains an optional ``Tag`` value.
+ The string length should be between 0 and 256 characters. Valid characters include ``a-z``, ``A-Z``, ``0-9``, space, and the special characters ``_ - . : / = + @``.
+ required:
+ - Value
+ - Key
+ type: object
+ description: A complex type that contains ``Tag`` key and ``Tag`` value.
+ Tags:
+ additionalProperties: false
+ properties:
+ Items:
+ items:
+ $ref: '#/components/schemas/Tag'
+ type: array
+ type: object
CachePolicyConfig:
additionalProperties: false
properties:
Comment:
type: string
+ description: A comment to describe the cache policy. The comment cannot be longer than 128 characters.
DefaultTTL:
minimum: 0
multipleOf: 1
type: number
+ description: >-
+ The default amount of time, in seconds, that you want objects to stay in the CloudFront cache before CloudFront sends another request to the origin to see if the object has been updated. CloudFront uses this value as the object's time to live (TTL) only when the origin does *not* send ``Cache-Control`` or ``Expires`` headers with the object. For more information, see [Managing How Long Content Stays in an Edge Cache
+ (Expiration)](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Expiration.html) in the *Amazon CloudFront Developer Guide*.
+ The default value for this field is 86400 seconds (one day). If the value of ``MinTTL`` is more than 86400 seconds, then the default value for this field is the same as the value of ``MinTTL``.
MaxTTL:
minimum: 0
multipleOf: 1
type: number
+ description: >-
+ The maximum amount of time, in seconds, that objects stay in the CloudFront cache before CloudFront sends another request to the origin to see if the object has been updated. CloudFront uses this value only when the origin sends ``Cache-Control`` or ``Expires`` headers with the object. For more information, see [Managing How Long Content Stays in an Edge Cache (Expiration)](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Expiration.html) in the *Amazon CloudFront
+ Developer Guide*.
+ The default value for this field is 31536000 seconds (one year). If the value of ``MinTTL`` or ``DefaultTTL`` is more than 31536000 seconds, then the default value for this field is the same as the value of ``DefaultTTL``.
MinTTL:
minimum: 0
multipleOf: 1
type: number
+ description: The minimum amount of time, in seconds, that you want objects to stay in the CloudFront cache before CloudFront sends another request to the origin to see if the object has been updated. For more information, see [Managing How Long Content Stays in an Edge Cache (Expiration)](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Expiration.html) in the *Amazon CloudFront Developer Guide*.
Name:
type: string
+ description: A unique name to identify the cache policy.
ParametersInCacheKeyAndForwardedToOrigin:
$ref: '#/components/schemas/ParametersInCacheKeyAndForwardedToOrigin'
+ description: The HTTP headers, cookies, and URL query strings to include in the cache key. The values included in the cache key are also included in requests that CloudFront sends to the origin.
required:
- Name
- MinTTL
@@ -413,80 +509,147 @@ components:
- DefaultTTL
- ParametersInCacheKeyAndForwardedToOrigin
type: object
+ description: |-
+ A cache policy configuration.
+ This configuration determines the following:
+ + The values that CloudFront includes in the cache key. These values can include HTTP headers, cookies, and URL query strings. CloudFront uses the cache key to find an object in its cache that it can return to the viewer.
+ + The default, minimum, and maximum time to live (TTL) values that you want objects to stay in the CloudFront cache.
+
+ The headers, cookies, and query strings that are included in the cache key are also included in requests that CloudFront sends to the origin. CloudFront sends a request when it can't find a valid object in its cache that matches the request's cache key. If you want to send values to the origin but *not* include them in the cache key, use ``OriginRequestPolicy``.
CookiesConfig:
additionalProperties: false
properties:
CookieBehavior:
pattern: ^(none|whitelist|all|allExcept)$
type: string
+ description: |-
+ Determines whether cookies in viewer requests are included in requests that CloudFront sends to the origin. Valid values are:
+ + ``none`` – No cookies in viewer requests are included in requests that CloudFront sends to the origin. Even when this field is set to ``none``, any cookies that are listed in a ``CachePolicy`` *are* included in origin requests.
+ + ``whitelist`` – Only the cookies in viewer requests that are listed in the ``CookieNames`` type are included in requests that CloudFront sends to the origin.
+ + ``all`` – All cookies in viewer requests are included in requests that CloudFront sends to the origin.
+ + ``allExcept`` – All cookies in viewer requests are included in requests that CloudFront sends to the origin, *except* for those listed in the ``CookieNames`` type, which are not included.
Cookies:
items:
type: string
type: array
uniqueItems: false
+ description: Contains a list of cookie names.
required:
- CookieBehavior
type: object
+ description: An object that determines whether any cookies in viewer requests (and if so, which cookies) are included in requests that CloudFront sends to the origin.
HeadersConfig:
additionalProperties: false
properties:
HeaderBehavior:
pattern: ^(none|whitelist|allViewer|allViewerAndWhitelistCloudFront|allExcept)$
type: string
+ description: |-
+ Determines whether any HTTP headers are included in requests that CloudFront sends to the origin. Valid values are:
+ + ``none`` – No HTTP headers in viewer requests are included in requests that CloudFront sends to the origin. Even when this field is set to ``none``, any headers that are listed in a ``CachePolicy`` *are* included in origin requests.
+ + ``whitelist`` – Only the HTTP headers that are listed in the ``Headers`` type are included in requests that CloudFront sends to the origin.
+ + ``allViewer`` – All HTTP headers in viewer requests are included in requests that CloudFront sends to the origin.
+ + ``allViewerAndWhitelistCloudFront`` – All HTTP headers in viewer requests and the additional CloudFront headers that are listed in the ``Headers`` type are included in requests that CloudFront sends to the origin. The additional headers are added by CloudFront.
+ + ``allExcept`` – All HTTP headers in viewer requests are included in requests that CloudFront sends to the origin, *except* for those listed in the ``Headers`` type, which are not included.
Headers:
items:
type: string
type: array
uniqueItems: false
+ description: Contains a list of HTTP header names.
required:
- HeaderBehavior
type: object
+ description: An object that determines whether any HTTP headers (and if so, which headers) are included in requests that CloudFront sends to the origin.
ParametersInCacheKeyAndForwardedToOrigin:
additionalProperties: false
properties:
CookiesConfig:
$ref: '#/components/schemas/CookiesConfig'
+ description: An object that determines whether any cookies in viewer requests (and if so, which cookies) are included in the cache key and in requests that CloudFront sends to the origin.
EnableAcceptEncodingBrotli:
type: boolean
+ description: |-
+ A flag that can affect whether the ``Accept-Encoding`` HTTP header is included in the cache key and included in requests that CloudFront sends to the origin.
+ This field is related to the ``EnableAcceptEncodingGzip`` field. If one or both of these fields is ``true`` *and* the viewer request includes the ``Accept-Encoding`` header, then CloudFront does the following:
+ + Normalizes the value of the viewer's ``Accept-Encoding`` header
+ + Includes the normalized header in the cache key
+ + Includes the normalized header in the request to the origin, if a request is necessary
+
+ For more information, see [Compression support](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-policy-compressed-objects) in the *Amazon CloudFront Developer Guide*.
+ If you set this value to ``true``, and this cache behavior also has an origin request policy attached, do not include the ``Accept-Encoding`` header in the origin request policy. CloudFront always includes the ``Accept-Encoding`` header in origin requests when the value of this field is ``true``, so including this header in an origin request policy has no effect.
+ If both of these fields are ``false``, then CloudFront treats the ``Accept-Encoding`` header the same as any other HTTP header in the viewer request. By default, it's not included in the cache key and it's not included in origin requests. In this case, you can manually add ``Accept-Encoding`` to the headers whitelist like any other HTTP header.
EnableAcceptEncodingGzip:
type: boolean
+ description: |-
+ A flag that can affect whether the ``Accept-Encoding`` HTTP header is included in the cache key and included in requests that CloudFront sends to the origin.
+ This field is related to the ``EnableAcceptEncodingBrotli`` field. If one or both of these fields is ``true`` *and* the viewer request includes the ``Accept-Encoding`` header, then CloudFront does the following:
+ + Normalizes the value of the viewer's ``Accept-Encoding`` header
+ + Includes the normalized header in the cache key
+ + Includes the normalized header in the request to the origin, if a request is necessary
+
+ For more information, see [Compression support](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html#cache-policy-compressed-objects) in the *Amazon CloudFront Developer Guide*.
+ If you set this value to ``true``, and this cache behavior also has an origin request policy attached, do not include the ``Accept-Encoding`` header in the origin request policy. CloudFront always includes the ``Accept-Encoding`` header in origin requests when the value of this field is ``true``, so including this header in an origin request policy has no effect.
+ If both of these fields are ``false``, then CloudFront treats the ``Accept-Encoding`` header the same as any other HTTP header in the viewer request. By default, it's not included in the cache key and it's not included in origin requests. In this case, you can manually add ``Accept-Encoding`` to the headers whitelist like any other HTTP header.
HeadersConfig:
$ref: '#/components/schemas/HeadersConfig'
+ description: An object that determines whether any HTTP headers (and if so, which headers) are included in the cache key and in requests that CloudFront sends to the origin.
QueryStringsConfig:
$ref: '#/components/schemas/QueryStringsConfig'
+ description: An object that determines whether any URL query strings in viewer requests (and if so, which query strings) are included in the cache key and in requests that CloudFront sends to the origin.
required:
- EnableAcceptEncodingGzip
- HeadersConfig
- CookiesConfig
- QueryStringsConfig
type: object
+ description: |-
+ This object determines the values that CloudFront includes in the cache key. These values can include HTTP headers, cookies, and URL query strings. CloudFront uses the cache key to find an object in its cache that it can return to the viewer.
+ The headers, cookies, and query strings that are included in the cache key are also included in requests that CloudFront sends to the origin. CloudFront sends a request when it can't find an object in its cache that matches the request's cache key. If you want to send values to the origin but *not* include them in the cache key, use ``OriginRequestPolicy``.
QueryStringsConfig:
additionalProperties: false
properties:
QueryStringBehavior:
pattern: ^(none|whitelist|all|allExcept)$
type: string
+ description: |-
+ Determines whether any URL query strings in viewer requests are included in requests that CloudFront sends to the origin. Valid values are:
+ + ``none`` – No query strings in viewer requests are included in requests that CloudFront sends to the origin. Even when this field is set to ``none``, any query strings that are listed in a ``CachePolicy`` *are* included in origin requests.
+ + ``whitelist`` – Only the query strings in viewer requests that are listed in the ``QueryStringNames`` type are included in requests that CloudFront sends to the origin.
+ + ``all`` – All query strings in viewer requests are included in requests that CloudFront sends to the origin.
+ + ``allExcept`` – All query strings in viewer requests are included in requests that CloudFront sends to the origin, *except* for those listed in the ``QueryStringNames`` type, which are not included.
QueryStrings:
items:
type: string
type: array
uniqueItems: false
+ description: Contains a list of query string names.
required:
- QueryStringBehavior
type: object
+ description: An object that determines whether any URL query strings in viewer requests (and if so, which query strings) are included in requests that CloudFront sends to the origin.
CachePolicy:
type: object
properties:
CachePolicyConfig:
$ref: '#/components/schemas/CachePolicyConfig'
+ description: The cache policy configuration.
Id:
type: string
+ description: ''
LastModifiedTime:
type: string
+ description: ''
required:
- CachePolicyConfig
x-stackql-resource-name: cache_policy
- description: Resource Type definition for AWS::CloudFront::CachePolicy
+ description: |-
+ A cache policy.
+ When it's attached to a cache behavior, the cache policy determines the following:
+ + The values that CloudFront includes in the cache key. These values can include HTTP headers, cookies, and URL query strings. CloudFront uses the cache key to find an object in its cache that it can return to the viewer.
+ + The default, minimum, and maximum time to live (TTL) values that you want objects to stay in the CloudFront cache.
+
+ The headers, cookies, and query strings that are included in the cache key are also included in requests that CloudFront sends to the origin. CloudFront sends a request when it can't find a valid object in its cache that matches the request's cache key. If you want to send values to the origin but *not* include them in the cache key, use ``OriginRequestPolicy``.
x-type-name: AWS::CloudFront::CachePolicy
x-stackql-primary-identifier:
- Id
@@ -518,22 +681,27 @@ components:
properties:
Comment:
type: string
+ description: A comment to describe the origin access identity. The comment cannot be longer than 128 characters.
required:
- Comment
type: object
+ description: Origin access identity configuration. Send a ``GET`` request to the ``/CloudFront API version/CloudFront/identity ID/config`` resource.
CloudFrontOriginAccessIdentity:
type: object
properties:
CloudFrontOriginAccessIdentityConfig:
$ref: '#/components/schemas/CloudFrontOriginAccessIdentityConfig'
+ description: The current configuration information for the identity.
Id:
type: string
+ description: ''
S3CanonicalUserId:
type: string
+ description: ''
required:
- CloudFrontOriginAccessIdentityConfig
x-stackql-resource-name: cloud_front_origin_access_identity
- description: Resource Type definition for AWS::CloudFront::CloudFrontOriginAccessIdentity
+ description: The request to create a new origin access identity (OAI). An origin access identity is a special CloudFront user that you can associate with Amazon S3 origins, so that you can secure all or just some of your Amazon S3 content. For more information, see [Restricting Access to Amazon S3 Content by Using an Origin Access Identity](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/private-content-restricting-access-to-s3.html) in the *Amazon CloudFront Developer Guide*.
x-type-name: AWS::CloudFront::CloudFrontOriginAccessIdentity
x-stackql-primary-identifier:
- Id
@@ -565,6 +733,7 @@ components:
properties:
Enabled:
type: boolean
+ description: A Boolean that indicates whether this continuous deployment policy is enabled (in effect). When this value is ``true``, this policy is enabled and in effect. When this value is ``false``, this policy is not enabled and has no effect.
SingleHeaderPolicyConfig:
additionalProperties: false
properties:
@@ -580,6 +749,7 @@ components:
- Header
- Value
type: object
+ description: This configuration determines which HTTP requests are sent to the staging distribution. If the HTTP request contains a header and value that matches what you specify here, the request is sent to the staging distribution. Otherwise the request is sent to the primary distribution.
SingleWeightPolicyConfig:
additionalProperties: false
properties:
@@ -593,6 +763,7 @@ components:
required:
- Weight
type: object
+ description: This configuration determines the percentage of HTTP requests that are sent to the staging distribution.
StagingDistributionDnsNames:
x-insertionOrder: true
items:
@@ -600,17 +771,21 @@ components:
minItems: 1
type: array
uniqueItems: true
+ description: 'The CloudFront domain name of the staging distribution. For example: ``d111111abcdef8.cloudfront.net``.'
TrafficConfig:
$ref: '#/components/schemas/TrafficConfig'
+ description: Contains the parameters for routing production traffic from your primary to staging distributions.
Type:
enum:
- SingleWeight
- SingleHeader
type: string
+ description: The type of traffic configuration.
required:
- Enabled
- StagingDistributionDnsNames
type: object
+ description: Contains the configuration for a continuous deployment policy.
SessionStickinessConfig:
additionalProperties: false
properties:
@@ -619,15 +794,18 @@ components:
minimum: 300
multipleOf: 1
type: integer
+ description: The amount of time after which you want sessions to cease if no requests are received. Allowed values are 300–3600 seconds (5–60 minutes).
MaximumTTL:
maximum: 3600
minimum: 300
multipleOf: 1
type: integer
+ description: The maximum amount of time to consider requests from the viewer as being part of the same session. Allowed values are 300–3600 seconds (5–60 minutes).
required:
- IdleTTL
- MaximumTTL
type: object
+ description: Session stickiness provides the ability to define multiple requests from a single viewer as a single session. This prevents the potentially inconsistent experience of sending some of a given user's requests to your staging distribution, while others are sent to your primary distribution. Define the session duration using TTL values.
SingleHeaderConfig:
additionalProperties: false
properties:
@@ -635,55 +813,71 @@ components:
maxLength: 256
minLength: 1
type: string
+ description: The request header name that you want CloudFront to send to your staging distribution. The header must contain the prefix ``aws-cf-cd-``.
Value:
maxLength: 1783
minLength: 1
type: string
+ description: The request header value.
required:
- Header
- Value
type: object
+ description: Determines which HTTP requests are sent to the staging distribution.
SingleWeightConfig:
additionalProperties: false
properties:
SessionStickinessConfig:
$ref: '#/components/schemas/SessionStickinessConfig'
+ description: Session stickiness provides the ability to define multiple requests from a single viewer as a single session. This prevents the potentially inconsistent experience of sending some of a given user's requests to your staging distribution, while others are sent to your primary distribution. Define the session duration using TTL values.
Weight:
maximum: 1
minimum: 0
multipleOf: 0.01
type: number
+ description: The percentage of traffic to send to a staging distribution, expressed as a decimal number between 0 and 0.15. For example, a value of 0.10 means 10% of traffic is sent to the staging distribution.
required:
- Weight
type: object
+ description: This configuration determines the percentage of HTTP requests that are sent to the staging distribution.
TrafficConfig:
additionalProperties: false
properties:
SingleHeaderConfig:
$ref: '#/components/schemas/SingleHeaderConfig'
+ description: Determines which HTTP requests are sent to the staging distribution.
SingleWeightConfig:
$ref: '#/components/schemas/SingleWeightConfig'
+ description: Contains the percentage of traffic to send to the staging distribution.
Type:
enum:
- SingleWeight
- SingleHeader
type: string
+ description: The type of traffic configuration.
required:
- Type
type: object
+ description: The traffic configuration of your continuous deployment.
ContinuousDeploymentPolicy:
type: object
properties:
ContinuousDeploymentPolicyConfig:
$ref: '#/components/schemas/ContinuousDeploymentPolicyConfig'
+ description: Contains the configuration for a continuous deployment policy.
Id:
type: string
+ description: ''
LastModifiedTime:
type: string
+ description: ''
required:
- ContinuousDeploymentPolicyConfig
x-stackql-resource-name: continuous_deployment_policy
- description: Resource Type definition for AWS::CloudFront::ContinuousDeploymentPolicy
+ description: |-
+ Creates a continuous deployment policy that routes a subset of production traffic from a primary distribution to a staging distribution.
+ After you create and update a staging distribution, you can use a continuous deployment policy to incrementally move traffic to the staging distribution. This enables you to test changes to a distribution's configuration before moving all of your production traffic to the new configuration.
+ For more information, see [Using CloudFront continuous deployment to safely test CDN configuration changes](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/continuous-deployment.html) in the *Amazon CloudFront Developer Guide*.
x-type-name: AWS::CloudFront::ContinuousDeploymentPolicy
x-stackql-primary-identifier:
- Id
@@ -775,6 +969,9 @@ components:
type: array
uniqueItems: false
description: A list of CloudFront functions that are associated with this cache behavior. CloudFront functions must be published to the ``LIVE`` stage to associate them with a cache behavior.
+ GrpcConfig:
+ $ref: '#/components/schemas/GrpcConfig'
+ description: The gRPC configuration for your cache behavior.
LambdaFunctionAssociations:
items:
$ref: '#/components/schemas/LambdaFunctionAssociation'
@@ -855,7 +1052,7 @@ components:
A complex type that describes how CloudFront processes requests.
You must create at least as many cache behaviors (including the default cache behavior) as you have origins if you want CloudFront to serve objects from all of the origins. Each cache behavior specifies the one origin from which you want CloudFront to get objects. If you have two origins and only the default cache behavior, the default cache behavior will cause CloudFront to get objects from one of the origins, but the other origin is never used.
For the current quota (formerly known as limit) on the number of cache behaviors that you can add to a distribution, see [Quotas](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/cloudfront-limits.html) in the *Amazon CloudFront Developer Guide*.
- If you don't want to specify any cache behaviors, include only an empty ``CacheBehaviors`` element. Don't include an empty ``CacheBehavior`` element because this is invalid.
+ If you don't want to specify any cache behaviors, include only an empty ``CacheBehaviors`` element. Don't specify an empty individual ``CacheBehavior`` element, because this is invalid. For more information, see [CacheBehaviors](https://docs.aws.amazon.com/cloudfront/latest/APIReference/API_CacheBehaviors.html).
To delete all cache behaviors in an existing distribution, update the distribution configuration and include only an empty ``CacheBehaviors`` element.
To add, change, or remove one or more cache behaviors, update the distribution configuration and specify all of the cache behaviors that you want to include in the updated distribution.
For more information about cache behaviors, see [Cache Behavior Settings](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/distribution-web-values-specify.html#DownloadDistValuesCacheBehavior) in the *Amazon CloudFront Developer Guide*.
@@ -945,7 +1142,7 @@ components:
type: integer
description: |-
Specifies how long, in seconds, CloudFront persists its connection to the origin. The minimum timeout is 1 second, the maximum is 60 seconds, and the default (if you don't specify otherwise) is 5 seconds.
- For more information, see [Origin Keep-alive Timeout](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/distribution-web-values-specify.html#DownloadDistValuesOriginKeepaliveTimeout) in the *Amazon CloudFront Developer Guide*.
+ For more information, see [Keep-alive timeout (custom origins only)](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/distribution-web-values-specify.html#DownloadDistValuesOriginKeepaliveTimeout) in the *Amazon CloudFront Developer Guide*.
OriginProtocolPolicy:
type: string
description: |-
@@ -958,7 +1155,7 @@ components:
type: integer
description: |-
Specifies how long, in seconds, CloudFront waits for a response from the origin. This is also known as the *origin response timeout*. The minimum timeout is 1 second, the maximum is 60 seconds, and the default (if you don't specify otherwise) is 30 seconds.
- For more information, see [Origin Response Timeout](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/distribution-web-values-specify.html#DownloadDistValuesOriginResponseTimeout) in the *Amazon CloudFront Developer Guide*.
+ For more information, see [Response timeout (custom origins only)](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/distribution-web-values-specify.html#DownloadDistValuesOriginResponseTimeout) in the *Amazon CloudFront Developer Guide*.
OriginSSLProtocols:
default:
- TLSv1
@@ -1039,7 +1236,10 @@ components:
$ref: '#/components/schemas/FunctionAssociation'
type: array
uniqueItems: false
- description: A list of CloudFront functions that are associated with this cache behavior. CloudFront functions must be published to the ``LIVE`` stage to associate them with a cache behavior.
+ description: A list of CloudFront functions that are associated with this cache behavior. Your functions must be published to the ``LIVE`` stage to associate them with a cache behavior.
+ GrpcConfig:
+ $ref: '#/components/schemas/GrpcConfig'
+ description: The gRPC configuration for your cache behavior.
LambdaFunctionAssociations:
items:
$ref: '#/components/schemas/LambdaFunctionAssociation'
@@ -1121,12 +1321,17 @@ components:
type: array
uniqueItems: false
description: A complex type that contains information about CNAMEs (alternate domain names), if any, for this distribution.
+ AnycastIpListId:
+ type: string
+ description: ''
CNAMEs:
items:
type: string
type: array
uniqueItems: false
- description: ''
+ description: |-
+ An alias for the CF distribution's domain name.
+ This property is legacy. We recommend that you use [Aliases](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-distributionconfig.html#cfn-cloudfront-distribution-distributionconfig-aliases) instead.
CacheBehaviors:
items:
$ref: '#/components/schemas/CacheBehavior'
@@ -1153,20 +1358,23 @@ components:
For more information about custom error pages, see [Customizing Error Responses](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/custom-error-pages.html) in the *Amazon CloudFront Developer Guide*.
CustomOrigin:
$ref: '#/components/schemas/LegacyCustomOrigin'
- description: ''
+ description: |-
+ The user-defined HTTP server that serves as the origin for content that CF distributes.
+ This property is legacy. We recommend that you use [Origin](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-origin.html) instead.
DefaultCacheBehavior:
$ref: '#/components/schemas/DefaultCacheBehavior'
description: A complex type that describes the default cache behavior if you don't specify a ``CacheBehavior`` element or if files don't match any of the values of ``PathPattern`` in ``CacheBehavior`` elements. You must create exactly one default cache behavior.
DefaultRootObject:
default: ''
type: string
- description: |-
- The object that you want CloudFront to request from your origin (for example, ``index.html``) when a viewer requests the root URL for your distribution (``https://www.example.com``) instead of an object in your distribution (``https://www.example.com/product-description.html``). Specifying a default root object avoids exposing the contents of your distribution.
- Specify only the object name, for example, ``index.html``. Don't add a ``/`` before the object name.
+ description: >-
+ When a viewer requests the root URL for your distribution, the default root object is the object that you want CloudFront to request from your origin. For example, if your root URL is ``https://www.example.com``, you can specify CloudFront to return the ``index.html`` file as the default root object. You can specify a default root object so that viewers see a specific file or object, instead of another object in your distribution (for example,
+ ``https://www.example.com/product-description.html``). A default root object avoids exposing the contents of your distribution.
+ You can specify the object name or a path to the object name (for example, ``index.html`` or ``exampleFolderName/index.html``). Your string can't begin with a forward slash (``/``). Only specify the object name or the path to the object.
If you don't want to specify a default root object when you create a distribution, include an empty ``DefaultRootObject`` element.
To delete the default root object from an existing distribution, update the distribution configuration and include an empty ``DefaultRootObject`` element.
To replace the default root object, update the distribution configuration and specify the new object.
- For more information about the default root object, see [Creating a Default Root Object](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/DefaultRootObject.html) in the *Amazon CloudFront Developer Guide*.
+ For more information about the default root object, see [Specify a default root object](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/DefaultRootObject.html) in the *Amazon CloudFront Developer Guide*.
Enabled:
type: boolean
description: From this field, you can enable or disable the selected distribution.
@@ -1174,7 +1382,7 @@ components:
default: http1.1
type: string
description: |-
- (Optional) Specify the maximum HTTP version(s) that you want viewers to use to communicate with CF. The default value for new distributions is ``http1.1``.
+ (Optional) Specify the HTTP version(s) that you want viewers to use to communicate with CF. The default value for new distributions is ``http1.1``.
For viewers and CF to use HTTP/2, viewers must support TLSv1.2 or later, and must support Server Name Indication (SNI).
For viewers and CF to use HTTP/3, viewers must support TLSv1.3 and Server Name Indication (SNI). CF supports HTTP/3 connection migration to allow the viewer to switch networks without losing connection. For more information about connection migration, see [Connection Migration](https://docs.aws.amazon.com/https://www.rfc-editor.org/rfc/rfc9000.html#name-connection-migration) at RFC 9000. For more information about supported TLSv1.3 ciphers, see [Supported protocols and ciphers between viewers and CloudFront](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/secure-connections-supported-viewer-protocols-ciphers.html).
IPV6Enabled:
@@ -1195,14 +1403,18 @@ components:
For more information about logging, see [Access Logs](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/AccessLogs.html) in the *Amazon CloudFront Developer Guide*.
OriginGroups:
$ref: '#/components/schemas/OriginGroups'
- description: A complex type that contains information about origin groups for this distribution.
+ description: |-
+ A complex type that contains information about origin groups for this distribution.
+ Specify a value for either the ``Origins`` or ``OriginGroups`` property.
Origins:
items:
$ref: '#/components/schemas/Origin'
type: array
x-insertionOrder: false
uniqueItems: false
- description: A complex type that contains information about origins for this distribution.
+ description: |-
+ A complex type that contains information about origins for this distribution.
+ Specify a value for either the ``Origins`` or ``OriginGroups`` property.
PriceClass:
default: PriceClass_All
type: string
@@ -1218,7 +1430,9 @@ components:
description: A complex type that identifies ways in which you want to restrict distribution of your content.
S3Origin:
$ref: '#/components/schemas/LegacyS3Origin'
- description: ''
+ description: |-
+ The origin as an S3 bucket.
+ This property is legacy. We recommend that you use [Origin](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-origin.html) instead.
Staging:
type: boolean
description: A Boolean that indicates whether this is a staging distribution. When this value is ``true``, this is a staging distribution. When this value is ``false``, this is not a staging distribution.
@@ -1231,7 +1445,7 @@ components:
default: ''
type: string
description: |-
- A unique identifier that specifies the WAF web ACL, if any, to associate with this distribution. To specify a web ACL created using the latest version of WAF, use the ACL ARN, for example ``arn:aws:wafv2:us-east-1:123456789012:global/webacl/ExampleWebACL/473e64fd-f30b-4765-81a0-62ad96dd167a``. To specify a web ACL created using WAF Classic, use the ACL ID, for example ``473e64fd-f30b-4765-81a0-62ad96dd167a``.
+ A unique identifier that specifies the WAF web ACL, if any, to associate with this distribution. To specify a web ACL created using the latest version of WAF, use the ACL ARN, for example ``arn:aws:wafv2:us-east-1:123456789012:global/webacl/ExampleWebACL/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111``. To specify a web ACL created using WAF Classic, use the ACL ID, for example ``a1b2c3d4-5678-90ab-cdef-EXAMPLE11111``.
WAF is a web application firewall that lets you monitor the HTTP and HTTPS requests that are forwarded to CloudFront, and lets you control access to your content. Based on conditions that you specify, such as the IP addresses that requests originate from or the values of query strings, CloudFront responds to requests either with the requested content or with an HTTP 403 status code (Forbidden). You can also configure CloudFront to return a custom error page when a request is blocked. For more information about WAF, see the [Developer Guide](https://docs.aws.amazon.com/waf/latest/developerguide/what-is-aws-waf.html).
required:
- Enabled
@@ -1324,6 +1538,19 @@ components:
- RestrictionType
type: object
description: A complex type that controls the countries in which your content is distributed. CF determines the location of your users using ``MaxMind`` GeoIP databases. To disable geo restriction, remove the [Restrictions](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-distributionconfig.html#cfn-cloudfront-distribution-distributionconfig-restrictions) property from your stack template.
+ GrpcConfig:
+ additionalProperties: false
+ properties:
+ Enabled:
+ type: boolean
+ description: Enables your CloudFront distribution to receive gRPC requests and to proxy them directly to your origins.
+ required:
+ - Enabled
+ type: object
+ description: |-
+ Amazon CloudFront supports gRPC, an open-source remote procedure call (RPC) framework built on HTTP/2. gRPC offers bi-directional streaming and binary protocol that buffers payloads, making it suitable for applications that require low latency communications.
+ To enable your distribution to handle gRPC requests, you must include HTTP/2 as one of the supported ``HTTP`` versions and allow ``HTTP`` methods, including ``POST``.
+ For more information, see [Using gRPC with CloudFront distributions](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/distribution-using-grpc.html) in the *Amazon CloudFront Developer Guide*.
LambdaFunctionAssociation:
additionalProperties: false
properties:
@@ -1349,50 +1576,58 @@ components:
properties:
DNSName:
type: string
- description: ''
+ description: The domain name assigned to your CF distribution.
HTTPPort:
default: 80
type: integer
- description: ''
+ description: The HTTP port that CF uses to connect to the origin. Specify the HTTP port that the origin listens on.
HTTPSPort:
default: 443
type: integer
- description: ''
+ description: The HTTPS port that CF uses to connect to the origin. Specify the HTTPS port that the origin listens on.
OriginProtocolPolicy:
type: string
- description: ''
+ description: Specifies the protocol (HTTP or HTTPS) that CF uses to connect to the origin.
OriginSSLProtocols:
items:
type: string
type: array
uniqueItems: false
- description: ''
+ description: |-
+ The minimum SSL/TLS protocol version that CF uses when communicating with your origin server over HTTPs.
+ For more information, see [Minimum Origin SSL Protocol](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/distribution-web-values-specify.html#DownloadDistValuesOriginSSLProtocols) in the *Developer Guide*.
required:
- DNSName
- OriginProtocolPolicy
- OriginSSLProtocols
type: object
- description: ''
+ description: |-
+ A custom origin. A custom origin is any origin that is *not* an S3 bucket, with one exception. An S3 bucket that is [configured with static website hosting](https://docs.aws.amazon.com/AmazonS3/latest/dev/WebsiteHosting.html) *is* a custom origin.
+ This property is legacy. We recommend that you use [Origin](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-origin.html) instead.
LegacyS3Origin:
additionalProperties: false
properties:
DNSName:
type: string
- description: ''
+ description: The domain name assigned to your CF distribution.
OriginAccessIdentity:
default: ''
type: string
- description: ''
+ description: |-
+ The CF origin access identity to associate with the distribution. Use an origin access identity to configure the distribution so that end users can only access objects in an S3 through CF.
+ This property is legacy. We recommend that you use [OriginAccessControl](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-originaccesscontrol.html) instead.
required:
- DNSName
type: object
- description: ''
+ description: |-
+ The origin as an S3 bucket.
+ This property is legacy. We recommend that you use [Origin](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-origin.html) instead.
Logging:
additionalProperties: false
properties:
Bucket:
type: string
- description: The Amazon S3 bucket to store the access logs in, for example, ``myawslogbucket.s3.amazonaws.com``.
+ description: The Amazon S3 bucket to store the access logs in, for example, ``amzn-s3-demo-bucket.s3.amazonaws.com``.
IncludeCookies:
default: false
type: boolean
@@ -1401,10 +1636,10 @@ components:
default: ''
type: string
description: An optional string that you want CloudFront to prefix to the access log ``filenames`` for this distribution, for example, ``myprefix/``. If you want to enable logging, but you don't want to specify a prefix, you still must include an empty ``Prefix`` element in the ``Logging`` element.
- required:
- - Bucket
type: object
- description: A complex type that controls whether access logs are written for the distribution.
+ description: |-
+ A complex type that specifies whether access logs are written for the distribution.
+ If you already enabled standard logging (legacy) and you want to enable standard logging (v2) to send your access logs to Amazon S3, we recommend that you specify a *different* Amazon S3 bucket or use a *separate path* in the same bucket (for example, use a log prefix or partitioning). This helps you keep track of which log files are associated with which logging subscription and prevents log files from overwriting each other. For more information, see [Standard logging (access logs)](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/AccessLogs.html) in the *Amazon CloudFront Developer Guide*.
Origin:
additionalProperties: false
properties:
@@ -1502,12 +1737,17 @@ components:
Members:
$ref: '#/components/schemas/OriginGroupMembers'
description: A complex type that contains information about the origins in an origin group.
+ SelectionCriteria:
+ $ref: '#/components/schemas/OriginGroupSelectionCriteria'
+ description: The selection criteria for the origin group. For more information, see [Create an origin group](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/high_availability_origin_failover.html#concept_origin_groups.creating) in the *Amazon CloudFront Developer Guide*.
required:
- Id
- FailoverCriteria
- Members
type: object
- description: 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.
+ description: |-
+ An origin group includes two origins (a primary origin and a secondary 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 secondary origin under the failover conditions that you've chosen.
+ Optionally, you can choose selection criteria for your origin group to specify how your origins are selected when your distribution routes viewer requests.
OriginGroupFailoverCriteria:
additionalProperties: false
properties:
@@ -1545,6 +1785,11 @@ components:
- Items
type: object
description: A complex data type for the origins included in an origin group.
+ OriginGroupSelectionCriteria:
+ enum:
+ - default
+ - media-quality-based
+ type: string
OriginGroups:
additionalProperties: false
properties:
@@ -1596,9 +1841,10 @@ components:
default: ''
type: string
description: |-
- The CloudFront origin access identity to associate with the origin. Use an origin access identity to configure the origin so that viewers can *only* access objects in an Amazon S3 bucket through CloudFront. The format of the value is:
- origin-access-identity/cloudfront/*ID-of-origin-access-identity*
- where ``ID-of-origin-access-identity`` is the value that CloudFront returned in the ``ID`` element when you created the origin access identity.
+ If you're using origin access control (OAC) instead of origin access identity, specify an empty ``OriginAccessIdentity`` element. For more information, see [Restricting access to an](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/private-content-restricting-access-to-origin.html) in the *Amazon CloudFront Developer Guide*.
+ The CloudFront origin access identity to associate with the origin. Use an origin access identity to configure the origin so that viewers can *only* access objects in an Amazon S3 bucket through CloudFront. The format of the value is:
+ ``origin-access-identity/cloudfront/ID-of-origin-access-identity``
+ The ``ID-of-origin-access-identity`` is the value that CloudFront returned in the ``ID`` element when you created the origin access identity.
If you want viewers to be able to access objects using either the CloudFront URL or the Amazon S3 URL, specify an empty ``OriginAccessIdentity`` element.
To delete the origin access identity from an existing distribution, update the distribution configuration and include an empty ``OriginAccessIdentity`` element.
To replace the origin access identity, update the distribution configuration and specify the new origin access identity.
@@ -1622,24 +1868,6 @@ components:
- Items
type: object
description: A complex data type for the status codes that you specify that, when returned by a primary origin, trigger CloudFront to failover to a second origin.
- Tag:
- additionalProperties: false
- properties:
- Key:
- type: string
- description: |-
- A string that contains ``Tag`` key.
- The string length should be between 1 and 128 characters. Valid characters include ``a-z``, ``A-Z``, ``0-9``, space, and the special characters ``_ - . : / = + @``.
- Value:
- type: string
- description: |-
- A string that contains an optional ``Tag`` value.
- The string length should be between 0 and 256 characters. Valid characters include ``a-z``, ``A-Z``, ``0-9``, space, and the special characters ``_ - . : / = + @``.
- required:
- - Value
- - Key
- type: object
- description: A complex type that contains ``Tag`` key and ``Tag`` value.
ViewerCertificate:
additionalProperties: false
properties:
@@ -1765,54 +1993,74 @@ components:
properties:
Comment:
type: string
+ description: A comment to describe the function.
Runtime:
type: string
+ description: The function's runtime environment version.
KeyValueStoreAssociations:
items:
$ref: '#/components/schemas/KeyValueStoreAssociation'
type: array
uniqueItems: true
+ description: The configuration for the key value store associations.
required:
- Comment
- Runtime
type: object
+ description: Contains configuration information about a CloudFront function.
FunctionMetadata:
additionalProperties: false
properties:
FunctionARN:
type: string
+ description: The Amazon Resource Name (ARN) of the function. The ARN uniquely identifies the function.
type: object
+ description: Contains metadata about a CloudFront function.
KeyValueStoreAssociation:
additionalProperties: false
properties:
KeyValueStoreARN:
type: string
+ description: The Amazon Resource Name (ARN) of the key value store association.
required:
- KeyValueStoreARN
type: object
+ description: The key value store association.
Function:
type: object
properties:
AutoPublish:
type: boolean
+ description: A flag that determines whether to automatically publish the function to the ``LIVE`` stage when it’s created. To automatically publish to the ``LIVE`` stage, set this property to ``true``.
FunctionARN:
type: string
+ description: ''
FunctionCode:
type: string
+ description: The function code. For more information about writing a CloudFront function, see [Writing function code for CloudFront Functions](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/writing-function-code.html) in the *Amazon CloudFront Developer Guide*.
FunctionConfig:
$ref: '#/components/schemas/FunctionConfig'
+ description: Contains configuration information about a CloudFront function.
FunctionMetadata:
$ref: '#/components/schemas/FunctionMetadata'
+ description: Contains metadata about a CloudFront function.
Name:
type: string
+ description: A name to identify the function.
Stage:
type: string
+ description: ''
required:
- Name
- FunctionConfig
- FunctionCode
x-stackql-resource-name: function
- description: Resource Type definition for AWS::CloudFront::Function
+ description: |-
+ Creates a CF 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, and the function’s stage.
+ By default, when you create a function, it’s in the ``DEVELOPMENT`` stage. In this stage, you can [test the function](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/test-function.html) in the CF console (or with ``TestFunction`` in the CF API).
+ When you’re ready to use your function with a CF distribution, publish the function to the ``LIVE`` stage. You can do this in the CF console, with ``PublishFunction`` in the CF API, or by updating the ``AWS::CloudFront::Function`` resource with the ``AutoPublish`` property set to ``true``. When the function is published to the ``LIVE`` stage, you can attach it to a distribution’s cache behavior, using the function’s ARN.
+ To automatically publish the function to the ``LIVE`` stage when it’s created, set the ``AutoPublish`` property to ``true``.
x-type-name: AWS::CloudFront::Function
x-stackql-primary-identifier:
- FunctionARN
@@ -1853,30 +2101,41 @@ components:
properties:
Comment:
type: string
+ description: A comment to describe the key group. The comment cannot be longer than 128 characters.
Items:
items:
type: string
type: array
uniqueItems: false
+ description: A list of the identifiers of the public keys in the key group.
Name:
type: string
+ description: A name to identify the key group.
required:
- Name
- Items
type: object
+ description: |-
+ A key group configuration.
+ A key group contains a list of public keys that you can use with [CloudFront signed URLs and signed cookies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/PrivateContent.html).
KeyGroup:
type: object
properties:
Id:
type: string
+ description: ''
KeyGroupConfig:
$ref: '#/components/schemas/KeyGroupConfig'
+ description: The key group configuration.
LastModifiedTime:
type: string
+ description: ''
required:
- KeyGroupConfig
x-stackql-resource-name: key_group
- description: Resource Type definition for AWS::CloudFront::KeyGroup
+ description: |-
+ A key group.
+ A key group contains a list of public keys that you can use with [CloudFront signed URLs and signed cookies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/PrivateContent.html).
x-type-name: AWS::CloudFront::KeyGroup
x-stackql-primary-identifier:
- Id
@@ -1908,31 +2167,40 @@ components:
properties:
SourceType:
type: string
+ description: The source type of the import source for the key value store.
SourceArn:
type: string
+ description: The Amazon Resource Name (ARN) of the import source for the key value store.
required:
- SourceType
- SourceArn
type: object
+ description: The import source for the key value store.
KeyValueStore:
type: object
properties:
Arn:
type: string
+ description: ''
Id:
type: string
+ description: ''
Status:
type: string
+ description: ''
Name:
type: string
+ description: The name of the key value store.
Comment:
type: string
+ description: A comment for the key value store.
ImportSource:
$ref: '#/components/schemas/ImportSource'
+ description: The import source for the key value store.
required:
- Name
x-stackql-resource-name: key_value_store
- description: Resource Type definition for AWS::CloudFront::KeyValueStore
+ description: 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.
x-type-name: AWS::CloudFront::KeyValueStore
x-stackql-primary-identifier:
- Name
@@ -1973,13 +2241,15 @@ components:
properties:
DistributionId:
type: string
+ description: The ID of the distribution that you are enabling metrics for.
MonitoringSubscription:
$ref: '#/components/schemas/MonitoringSubscription'
+ description: A subscription configuration for additional CloudWatch metrics.
required:
- DistributionId
- MonitoringSubscription
x-stackql-resource-name: monitoring_subscription
- description: Resource Type definition for AWS::CloudFront::MonitoringSubscription
+ description: A monitoring subscription. This structure contains information about whether additional CloudWatch metrics are enabled for a given CloudFront distribution.
x-type-name: AWS::CloudFront::MonitoringSubscription
x-stackql-primary-identifier:
- DistributionId
@@ -2008,42 +2278,63 @@ components:
- Enabled
- Disabled
type: string
+ description: A flag that indicates whether additional CloudWatch metrics are enabled for a given CloudFront distribution.
required:
- RealtimeMetricsSubscriptionStatus
type: object
+ description: A subscription configuration for additional CloudWatch metrics.
OriginAccessControlConfig:
additionalProperties: false
properties:
Description:
type: string
+ description: A description of the origin access control.
Name:
type: string
+ description: A name to identify the origin access control. You can specify up to 64 characters.
OriginAccessControlOriginType:
pattern: ^(s3|mediastore|lambda|mediapackagev2)$
type: string
+ description: The type of origin that this origin access control is for.
SigningBehavior:
pattern: ^(never|no-override|always)$
type: string
+ description: |-
+ Specifies which requests CloudFront signs (adds authentication information to). Specify ``always`` for the most common use case. For more information, see [origin access control advanced settings](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/private-content-restricting-access-to-s3.html#oac-advanced-settings) in the *Amazon CloudFront Developer Guide*.
+ This field can have one of the following values:
+ + ``always`` – CloudFront signs all origin requests, overwriting the ``Authorization`` header from the viewer request if one exists.
+ + ``never`` – CloudFront doesn't sign any origin requests. This value turns off origin access control for all origins in all distributions that use this origin access control.
+ + ``no-override`` – If the viewer request doesn't contain the ``Authorization`` header, then CloudFront signs the origin request. If the viewer request contains the ``Authorization`` header, then CloudFront doesn't sign the origin request and instead passes along the ``Authorization`` header from the viewer request. *WARNING: To pass along the Authorization header from the viewer request, you must add the Authorization header to a cache policy for all cache behaviors that use origins associated with this origin access control.*
SigningProtocol:
pattern: ^(sigv4)$
type: string
+ description: The signing protocol of the origin access control, which determines how CloudFront signs (authenticates) requests. The only valid value is ``sigv4``.
required:
- Name
- SigningProtocol
- SigningBehavior
- OriginAccessControlOriginType
type: object
+ description: |-
+ 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 origin](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/private-content-restricting-access-to-origin.html) in the *Amazon CloudFront Developer Guide*.
OriginAccessControl:
type: object
properties:
Id:
type: string
+ description: ''
OriginAccessControlConfig:
$ref: '#/components/schemas/OriginAccessControlConfig'
+ description: The origin access control.
required:
- OriginAccessControlConfig
x-stackql-resource-name: origin_access_control
- description: Resource Type definition for AWS::CloudFront::OriginAccessControl
+ description: |-
+ 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 origin](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/private-content-restricting-access-to-origin.html) in the *Amazon CloudFront Developer Guide*.
x-type-name: AWS::CloudFront::OriginAccessControl
x-stackql-primary-identifier:
- Id
@@ -2074,33 +2365,56 @@ components:
properties:
Comment:
type: string
+ description: A comment to describe the origin request policy. The comment cannot be longer than 128 characters.
CookiesConfig:
$ref: '#/components/schemas/CookiesConfig'
+ description: The cookies from viewer requests to include in origin requests.
HeadersConfig:
$ref: '#/components/schemas/HeadersConfig'
+ description: The HTTP headers to include in origin requests. These can include headers from viewer requests and additional headers added by CloudFront.
Name:
type: string
+ description: A unique name to identify the origin request policy.
QueryStringsConfig:
$ref: '#/components/schemas/QueryStringsConfig'
+ description: The URL query strings from viewer requests to include in origin requests.
required:
- Name
- HeadersConfig
- CookiesConfig
- QueryStringsConfig
type: object
+ description: |-
+ An origin request policy configuration.
+ This configuration 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 an 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``.
OriginRequestPolicy:
type: object
properties:
Id:
type: string
+ description: ''
LastModifiedTime:
type: string
+ description: ''
OriginRequestPolicyConfig:
$ref: '#/components/schemas/OriginRequestPolicyConfig'
+ description: The origin request policy configuration.
required:
- OriginRequestPolicyConfig
x-stackql-resource-name: origin_request_policy
- description: Resource Type definition for AWS::CloudFront::OriginRequestPolicy
+ description: |-
+ An origin request policy.
+ 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 an 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``.
x-type-name: AWS::CloudFront::OriginRequestPolicy
x-stackql-primary-identifier:
- Id
@@ -2132,30 +2446,38 @@ components:
properties:
CallerReference:
type: string
+ description: A string included in the request to help make sure that the request can't be replayed.
Comment:
type: string
+ description: A comment to describe the public key. The comment cannot be longer than 128 characters.
EncodedKey:
type: string
+ description: The public key that you can use with [signed URLs and signed cookies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/PrivateContent.html), or with [field-level encryption](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/field-level-encryption.html).
Name:
type: string
+ description: A name to help identify the public key.
required:
- CallerReference
- Name
- EncodedKey
type: object
+ description: Configuration information about a public key that you can use with [signed URLs and signed cookies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/PrivateContent.html), or with [field-level encryption](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/field-level-encryption.html).
PublicKey:
type: object
properties:
CreatedTime:
type: string
+ description: ''
Id:
type: string
+ description: ''
PublicKeyConfig:
$ref: '#/components/schemas/PublicKeyConfig'
+ description: Configuration information about a public key that you can use with [signed URLs and signed cookies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/PrivateContent.html), or with [field-level encryption](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/field-level-encryption.html).
required:
- PublicKeyConfig
x-stackql-resource-name: public_key
- description: Resource Type definition for AWS::CloudFront::PublicKey
+ description: A public key that you can use with [signed URLs and signed cookies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/PrivateContent.html), or with [field-level encryption](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/field-level-encryption.html).
x-type-name: AWS::CloudFront::PublicKey
x-stackql-primary-identifier:
- Id
@@ -2187,54 +2509,69 @@ components:
properties:
KinesisStreamConfig:
$ref: '#/components/schemas/KinesisStreamConfig'
+ description: Contains information about the Amazon Kinesis data stream where you are sending real-time log data.
StreamType:
type: string
+ description: The type of data stream where you are sending real-time log data. The only valid value is ``Kinesis``.
required:
- KinesisStreamConfig
- StreamType
type: object
+ description: Contains information about the Amazon Kinesis data stream where you are sending real-time log data in a real-time log configuration.
KinesisStreamConfig:
additionalProperties: false
properties:
RoleArn:
type: string
+ description: |-
+ The Amazon Resource Name (ARN) of an IAMlong (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](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/real-time-logs.html#understand-real-time-log-config-iam-role) in the *Amazon CloudFront Developer Guide*.
StreamArn:
type: string
+ description: The Amazon Resource Name (ARN) of the Kinesis data stream where you are sending real-time log data.
required:
- RoleArn
- StreamArn
type: object
+ description: Contains information about the Amazon Kinesis data stream where you are sending real-time log data.
RealtimeLogConfig:
type: object
properties:
Arn:
type: string
+ description: ''
EndPoints:
items:
$ref: '#/components/schemas/EndPoint'
minItems: 1
type: array
uniqueItems: false
+ description: Contains information about the Amazon Kinesis data stream where you are sending real-time log data for this real-time log configuration.
Fields:
items:
type: string
minItems: 1
type: array
uniqueItems: false
+ description: |-
+ A list of fields that are included in each real-time log record. In an API response, the fields are provided in the same order in which they are sent to the Amazon Kinesis data stream.
+ For more information about fields, see [Real-time log configuration fields](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/real-time-logs.html#understand-real-time-log-config-fields) in the *Amazon CloudFront Developer Guide*.
Name:
type: string
+ description: The unique name of this real-time log configuration.
SamplingRate:
maximum: 100
minimum: 1
multipleOf: 1
type: number
+ description: The sampling rate for this real-time log configuration. The sampling rate determines the percentage of viewer requests that are represented in the real-time log data. The sampling rate is an integer between 1 and 100, inclusive.
required:
- Name
- EndPoints
- Fields
- SamplingRate
x-stackql-resource-name: realtime_log_config
- description: Resource Type definition for AWS::CloudFront::RealtimeLogConfig
+ description: A real-time log configuration.
x-type-name: AWS::CloudFront::RealtimeLogConfig
x-stackql-primary-identifier:
- Arn
@@ -2275,9 +2612,13 @@ components:
items:
type: string
type: array
+ description: The list of HTTP header names. You can specify ``*`` to allow all headers.
required:
- Items
type: object
+ description: |-
+ A list of HTTP header names that CloudFront includes as values for the ``Access-Control-Allow-Headers`` HTTP response header.
+ For more information about the ``Access-Control-Allow-Headers`` HTTP response header, see [Access-Control-Allow-Headers](https://docs.aws.amazon.com/https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Access-Control-Allow-Headers) in the MDN Web Docs.
AccessControlAllowMethods:
additionalProperties: false
properties:
@@ -2286,9 +2627,24 @@ components:
items:
type: string
type: array
+ description: |-
+ The list of HTTP methods. Valid values are:
+ + ``GET``
+ + ``DELETE``
+ + ``HEAD``
+ + ``OPTIONS``
+ + ``PATCH``
+ + ``POST``
+ + ``PUT``
+ + ``ALL``
+
+ ``ALL`` is a special value that includes all of the listed HTTP methods.
required:
- Items
type: object
+ description: |-
+ A list of HTTP methods that CloudFront includes as values for the ``Access-Control-Allow-Methods`` HTTP response header.
+ For more information about the ``Access-Control-Allow-Methods`` HTTP response header, see [Access-Control-Allow-Methods](https://docs.aws.amazon.com/https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Access-Control-Allow-Methods) in the MDN Web Docs.
AccessControlAllowOrigins:
additionalProperties: false
properties:
@@ -2297,9 +2653,13 @@ components:
items:
type: string
type: array
+ description: The list of origins (domain names). You can specify ``*`` to allow all origins.
required:
- Items
type: object
+ description: |-
+ A list of origins (domain names) that CloudFront can use as the value for the ``Access-Control-Allow-Origin`` HTTP response header.
+ For more information about the ``Access-Control-Allow-Origin`` HTTP response header, see [Access-Control-Allow-Origin](https://docs.aws.amazon.com/https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Access-Control-Allow-Origin) in the MDN Web Docs.
AccessControlExposeHeaders:
additionalProperties: false
properties:
@@ -2308,45 +2668,79 @@ components:
items:
type: string
type: array
+ description: The list of HTTP headers. You can specify ``*`` to expose all headers.
required:
- Items
type: object
+ description: |-
+ A list of HTTP headers that CloudFront includes as values for the ``Access-Control-Expose-Headers`` HTTP response header.
+ For more information about the ``Access-Control-Expose-Headers`` HTTP response header, see [Access-Control-Expose-Headers](https://docs.aws.amazon.com/https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Access-Control-Expose-Headers) in the MDN Web Docs.
ContentSecurityPolicy:
additionalProperties: false
properties:
ContentSecurityPolicy:
type: string
+ description: |-
+ The policy directives and their values that CloudFront includes as values for the ``Content-Security-Policy`` HTTP response header.
+ For more information about the ``Content-Security-Policy`` HTTP response header, see [Content-Security-Policy](https://docs.aws.amazon.com/https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Security-Policy) in the MDN Web Docs.
Override:
type: boolean
+ description: A Boolean that determines whether CloudFront overrides the ``Content-Security-Policy`` HTTP response header received from the origin with the one specified in this response headers policy.
required:
- Override
- ContentSecurityPolicy
type: object
+ description: |-
+ The policy directives and their values that CloudFront includes as values for the ``Content-Security-Policy`` HTTP response header.
+ For more information about the ``Content-Security-Policy`` HTTP response header, see [Content-Security-Policy](https://docs.aws.amazon.com/https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Security-Policy) in the MDN Web Docs.
ContentTypeOptions:
additionalProperties: false
properties:
Override:
type: boolean
+ description: A Boolean that determines whether CloudFront overrides the ``X-Content-Type-Options`` HTTP response header received from the origin with the one specified in this response headers policy.
required:
- Override
type: object
+ description: |-
+ Determines whether CloudFront includes the ``X-Content-Type-Options`` HTTP response header with its value set to ``nosniff``.
+ For more information about the ``X-Content-Type-Options`` HTTP response header, see [X-Content-Type-Options](https://docs.aws.amazon.com/https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-Content-Type-Options) in the MDN Web Docs.
CorsConfig:
additionalProperties: false
properties:
AccessControlAllowCredentials:
type: boolean
+ description: |-
+ A Boolean that CloudFront uses as the value for the ``Access-Control-Allow-Credentials`` HTTP response header.
+ For more information about the ``Access-Control-Allow-Credentials`` HTTP response header, see [Access-Control-Allow-Credentials](https://docs.aws.amazon.com/https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Access-Control-Allow-Credentials) in the MDN Web Docs.
AccessControlAllowHeaders:
$ref: '#/components/schemas/AccessControlAllowHeaders'
+ description: |-
+ A list of HTTP header names that CloudFront includes as values for the ``Access-Control-Allow-Headers`` HTTP response header.
+ For more information about the ``Access-Control-Allow-Headers`` HTTP response header, see [Access-Control-Allow-Headers](https://docs.aws.amazon.com/https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Access-Control-Allow-Headers) in the MDN Web Docs.
AccessControlAllowMethods:
$ref: '#/components/schemas/AccessControlAllowMethods'
+ description: |-
+ A list of HTTP methods that CloudFront includes as values for the ``Access-Control-Allow-Methods`` HTTP response header.
+ For more information about the ``Access-Control-Allow-Methods`` HTTP response header, see [Access-Control-Allow-Methods](https://docs.aws.amazon.com/https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Access-Control-Allow-Methods) in the MDN Web Docs.
AccessControlAllowOrigins:
$ref: '#/components/schemas/AccessControlAllowOrigins'
+ description: |-
+ A list of origins (domain names) that CloudFront can use as the value for the ``Access-Control-Allow-Origin`` HTTP response header.
+ For more information about the ``Access-Control-Allow-Origin`` HTTP response header, see [Access-Control-Allow-Origin](https://docs.aws.amazon.com/https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Access-Control-Allow-Origin) in the MDN Web Docs.
AccessControlExposeHeaders:
$ref: '#/components/schemas/AccessControlExposeHeaders'
+ description: |-
+ A list of HTTP headers that CloudFront includes as values for the ``Access-Control-Expose-Headers`` HTTP response header.
+ For more information about the ``Access-Control-Expose-Headers`` HTTP response header, see [Access-Control-Expose-Headers](https://docs.aws.amazon.com/https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Access-Control-Expose-Headers) in the MDN Web Docs.
AccessControlMaxAgeSec:
type: integer
+ description: |-
+ A number that CloudFront uses as the value for the ``Access-Control-Max-Age`` HTTP response header.
+ For more information about the ``Access-Control-Max-Age`` HTTP response header, see [Access-Control-Max-Age](https://docs.aws.amazon.com/https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Access-Control-Max-Age) in the MDN Web Docs.
OriginOverride:
type: boolean
+ description: A Boolean that determines whether CloudFront overrides HTTP response headers received from the origin with the ones specified in this response headers policy.
required:
- AccessControlAllowOrigins
- AccessControlAllowHeaders
@@ -2354,20 +2748,27 @@ components:
- AccessControlAllowCredentials
- OriginOverride
type: object
+ description: |-
+ A configuration for a set of HTTP response headers that are used for cross-origin resource sharing (CORS). CloudFront adds these headers to HTTP responses that it sends for CORS requests that match a cache behavior associated with this response headers policy.
+ For more information about CORS, see [Cross-Origin Resource Sharing (CORS)](https://docs.aws.amazon.com/https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS) in the MDN Web Docs.
CustomHeader:
additionalProperties: false
properties:
Header:
type: string
+ description: The HTTP response header name.
Override:
type: boolean
+ description: A Boolean that determines whether CloudFront overrides a response header with the same name received from the origin with the header specified here.
Value:
type: string
+ description: The value for the HTTP response header.
required:
- Header
- Value
- Override
type: object
+ description: An HTTP response header name and its value. CloudFront includes this header in HTTP responses that it sends for requests that match a cache behavior that's associated with this response headers policy.
CustomHeadersConfig:
additionalProperties: false
properties:
@@ -2377,41 +2778,59 @@ components:
$ref: '#/components/schemas/CustomHeader'
type: array
uniqueItems: false
+ description: The list of HTTP response headers and their values.
required:
- Items
type: object
+ description: A list of HTTP response header names and their values. CloudFront includes these headers in HTTP responses that it sends for requests that match a cache behavior that's associated with this response headers policy.
FrameOptions:
additionalProperties: false
properties:
FrameOption:
pattern: ^(DENY|SAMEORIGIN)$
type: string
+ description: |-
+ The value of the ``X-Frame-Options`` HTTP response header. Valid values are ``DENY`` and ``SAMEORIGIN``.
+ For more information about these values, see [X-Frame-Options](https://docs.aws.amazon.com/https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-Frame-Options) in the MDN Web Docs.
Override:
type: boolean
+ description: A Boolean that determines whether CloudFront overrides the ``X-Frame-Options`` HTTP response header received from the origin with the one specified in this response headers policy.
required:
- Override
- FrameOption
type: object
+ description: |-
+ Determines whether CloudFront includes the ``X-Frame-Options`` HTTP response header and the header's value.
+ For more information about the ``X-Frame-Options`` HTTP response header, see [X-Frame-Options](https://docs.aws.amazon.com/https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-Frame-Options) in the MDN Web Docs.
ReferrerPolicy:
additionalProperties: false
properties:
Override:
type: boolean
+ description: A Boolean that determines whether CloudFront overrides the ``Referrer-Policy`` HTTP response header received from the origin with the one specified in this response headers policy.
ReferrerPolicy:
pattern: ^(no-referrer|no-referrer-when-downgrade|origin|origin-when-cross-origin|same-origin|strict-origin|strict-origin-when-cross-origin|unsafe-url)$
type: string
+ description: |-
+ Determines whether CloudFront includes the ``Referrer-Policy`` HTTP response header and the header's value.
+ For more information about the ``Referrer-Policy`` HTTP response header, see [Referrer-Policy](https://docs.aws.amazon.com/https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Referrer-Policy) in the MDN Web Docs.
required:
- Override
- ReferrerPolicy
type: object
+ description: |-
+ Determines whether CloudFront includes the ``Referrer-Policy`` HTTP response header and the header's value.
+ For more information about the ``Referrer-Policy`` HTTP response header, see [Referrer-Policy](https://docs.aws.amazon.com/https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Referrer-Policy) in the MDN Web Docs.
RemoveHeader:
additionalProperties: false
properties:
Header:
type: string
+ description: The HTTP header name.
required:
- Header
type: object
+ description: The name of an HTTP header that CloudFront removes from HTTP responses to requests that match the cache behavior that this response headers policy is attached to.
RemoveHeadersConfig:
additionalProperties: false
properties:
@@ -2421,102 +2840,170 @@ components:
$ref: '#/components/schemas/RemoveHeader'
type: array
uniqueItems: true
+ description: The list of HTTP header names.
required:
- Items
type: object
+ description: A list of HTTP header names that CloudFront removes from HTTP responses to requests that match the cache behavior that this response headers policy is attached to.
ResponseHeadersPolicyConfig:
additionalProperties: false
properties:
Comment:
type: string
+ description: |-
+ A comment to describe the response headers policy.
+ The comment cannot be longer than 128 characters.
CorsConfig:
$ref: '#/components/schemas/CorsConfig'
+ description: A configuration for a set of HTTP response headers that are used for cross-origin resource sharing (CORS).
CustomHeadersConfig:
$ref: '#/components/schemas/CustomHeadersConfig'
+ description: A configuration for a set of custom HTTP response headers.
Name:
type: string
+ description: |-
+ A name to identify the response headers policy.
+ The name must be unique for response headers policies in this AWS-account.
RemoveHeadersConfig:
$ref: '#/components/schemas/RemoveHeadersConfig'
+ description: A configuration for a set of HTTP headers to remove from the HTTP response.
SecurityHeadersConfig:
$ref: '#/components/schemas/SecurityHeadersConfig'
+ description: A configuration for a set of security-related HTTP response headers.
ServerTimingHeadersConfig:
$ref: '#/components/schemas/ServerTimingHeadersConfig'
+ description: A configuration for enabling the ``Server-Timing`` header in HTTP responses sent from CloudFront.
required:
- Name
type: object
+ description: |-
+ A response headers policy configuration.
+ A response headers policy configuration contains metadata about the response headers policy, and configurations for sets of HTTP response headers.
SecurityHeadersConfig:
additionalProperties: false
properties:
ContentSecurityPolicy:
$ref: '#/components/schemas/ContentSecurityPolicy'
+ description: |-
+ The policy directives and their values that CloudFront includes as values for the ``Content-Security-Policy`` HTTP response header.
+ For more information about the ``Content-Security-Policy`` HTTP response header, see [Content-Security-Policy](https://docs.aws.amazon.com/https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Security-Policy) in the MDN Web Docs.
ContentTypeOptions:
$ref: '#/components/schemas/ContentTypeOptions'
+ description: |-
+ Determines whether CloudFront includes the ``X-Content-Type-Options`` HTTP response header with its value set to ``nosniff``.
+ For more information about the ``X-Content-Type-Options`` HTTP response header, see [X-Content-Type-Options](https://docs.aws.amazon.com/https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-Content-Type-Options) in the MDN Web Docs.
FrameOptions:
$ref: '#/components/schemas/FrameOptions'
+ description: |-
+ Determines whether CloudFront includes the ``X-Frame-Options`` HTTP response header and the header's value.
+ For more information about the ``X-Frame-Options`` HTTP response header, see [X-Frame-Options](https://docs.aws.amazon.com/https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-Frame-Options) in the MDN Web Docs.
ReferrerPolicy:
$ref: '#/components/schemas/ReferrerPolicy'
+ description: |-
+ Determines whether CloudFront includes the ``Referrer-Policy`` HTTP response header and the header's value.
+ For more information about the ``Referrer-Policy`` HTTP response header, see [Referrer-Policy](https://docs.aws.amazon.com/https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Referrer-Policy) in the MDN Web Docs.
StrictTransportSecurity:
$ref: '#/components/schemas/StrictTransportSecurity'
+ description: |-
+ Determines whether CloudFront includes the ``Strict-Transport-Security`` HTTP response header and the header's value.
+ For more information about the ``Strict-Transport-Security`` HTTP response header, see [Security headers](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/understanding-response-headers-policies.html#understanding-response-headers-policies-security) in the *Amazon CloudFront Developer Guide* and [Strict-Transport-Security](https://docs.aws.amazon.com/https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Strict-Transport-Security) in the MDN Web Docs.
XSSProtection:
$ref: '#/components/schemas/XSSProtection'
+ description: |-
+ Determines whether CloudFront includes the ``X-XSS-Protection`` HTTP response header and the header's value.
+ For more information about the ``X-XSS-Protection`` HTTP response header, see [X-XSS-Protection](https://docs.aws.amazon.com/https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-XSS-Protection) in the MDN Web Docs.
required: []
type: object
+ description: A configuration for a set of security-related HTTP response headers. CloudFront adds these headers to HTTP responses that it sends for requests that match a cache behavior associated with this response headers policy.
ServerTimingHeadersConfig:
additionalProperties: false
properties:
Enabled:
type: boolean
+ description: A Boolean that determines whether CloudFront adds the ``Server-Timing`` header to HTTP responses that it sends in response to requests that match a cache behavior that's associated with this response headers policy.
SamplingRate:
maximum: 100
minimum: 0
multipleOf: 0.0001
type: number
+ description: >-
+ A number 0–100 (inclusive) that specifies the percentage of responses that you want CloudFront to add the ``Server-Timing`` header to. When you set the sampling rate to 100, CloudFront adds the ``Server-Timing`` header to the HTTP response for every request that matches the cache behavior that this response headers policy is attached to. When you set it to 50, CloudFront adds the header to 50% of the responses for requests that match the cache behavior. You can set the sampling rate
+ to any number 0–100 with up to four decimal places.
required:
- Enabled
type: object
+ description: A configuration for enabling the ``Server-Timing`` header in HTTP responses sent from CloudFront.
StrictTransportSecurity:
additionalProperties: false
properties:
AccessControlMaxAgeSec:
type: integer
+ description: A number that CloudFront uses as the value for the ``max-age`` directive in the ``Strict-Transport-Security`` HTTP response header.
IncludeSubdomains:
type: boolean
+ description: A Boolean that determines whether CloudFront includes the ``includeSubDomains`` directive in the ``Strict-Transport-Security`` HTTP response header.
Override:
type: boolean
+ description: A Boolean that determines whether CloudFront overrides the ``Strict-Transport-Security`` HTTP response header received from the origin with the one specified in this response headers policy.
Preload:
type: boolean
+ description: A Boolean that determines whether CloudFront includes the ``preload`` directive in the ``Strict-Transport-Security`` HTTP response header.
required:
- Override
- AccessControlMaxAgeSec
type: object
+ description: |-
+ Determines whether CloudFront includes the ``Strict-Transport-Security`` HTTP response header and the header's value.
+ For more information about the ``Strict-Transport-Security`` HTTP response header, see [Strict-Transport-Security](https://docs.aws.amazon.com/https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Strict-Transport-Security) in the MDN Web Docs.
XSSProtection:
additionalProperties: false
properties:
ModeBlock:
type: boolean
+ description: |-
+ A Boolean that determines whether CloudFront includes the ``mode=block`` directive in the ``X-XSS-Protection`` header.
+ For more information about this directive, see [X-XSS-Protection](https://docs.aws.amazon.com/https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-XSS-Protection) in the MDN Web Docs.
Override:
type: boolean
+ description: A Boolean that determines whether CloudFront overrides the ``X-XSS-Protection`` HTTP response header received from the origin with the one specified in this response headers policy.
Protection:
type: boolean
+ description: |-
+ A Boolean that determines the value of the ``X-XSS-Protection`` HTTP response header. When this setting is ``true``, the value of the ``X-XSS-Protection`` header is ``1``. When this setting is ``false``, the value of the ``X-XSS-Protection`` header is ``0``.
+ For more information about these settings, see [X-XSS-Protection](https://docs.aws.amazon.com/https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-XSS-Protection) in the MDN Web Docs.
ReportUri:
type: string
+ description: |-
+ A reporting URI, which CloudFront uses as the value of the ``report`` directive in the ``X-XSS-Protection`` header.
+ You cannot specify a ``ReportUri`` when ``ModeBlock`` is ``true``.
+ For more information about using a reporting URL, see [X-XSS-Protection](https://docs.aws.amazon.com/https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-XSS-Protection) in the MDN Web Docs.
required:
- Override
- Protection
type: object
+ description: |-
+ Determines whether CloudFront includes the ``X-XSS-Protection`` HTTP response header and the header's value.
+ For more information about the ``X-XSS-Protection`` HTTP response header, see [X-XSS-Protection](https://docs.aws.amazon.com/https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-XSS-Protection) in the MDN Web Docs.
ResponseHeadersPolicy:
type: object
properties:
Id:
type: string
+ description: ''
LastModifiedTime:
type: string
+ description: ''
ResponseHeadersPolicyConfig:
$ref: '#/components/schemas/ResponseHeadersPolicyConfig'
+ description: A response headers policy configuration.
required:
- ResponseHeadersPolicyConfig
x-stackql-resource-name: response_headers_policy
- description: Resource Type definition for AWS::CloudFront::ResponseHeadersPolicy
+ description: |-
+ A response headers policy.
+ A response headers policy contains information about a set of HTTP response headers.
+ After you create a response headers policy, you can use its ID to attach it to one or more cache behaviors in a CloudFront distribution. When it's attached to a cache behavior, the response headers policy affects the HTTP headers that CloudFront includes in HTTP responses to requests that match the cache behavior. CloudFront adds or removes response headers according to the configuration of the response headers policy.
+ For more information, see [Adding or removing HTTP headers in CloudFront responses](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/modifying-response-headers.html) in the *Amazon CloudFront Developer Guide*.
x-type-name: AWS::CloudFront::ResponseHeadersPolicy
x-stackql-primary-identifier:
- Id
@@ -2543,6 +3030,38 @@ components:
update:
- cloudfront:UpdateResponseHeadersPolicy
- cloudfront:GetResponseHeadersPolicy
+ CreateAnycastIpListRequest:
+ properties:
+ ClientToken:
+ type: string
+ RoleArn:
+ type: string
+ TypeName:
+ type: string
+ TypeVersionId:
+ type: string
+ DesiredState:
+ type: object
+ properties:
+ AnycastIpList:
+ $ref: '#/components/schemas/AnycastIpList'
+ ETag:
+ type: string
+ Id:
+ type: string
+ IpCount:
+ type: integer
+ Name:
+ maxLength: 64
+ minLength: 1
+ pattern: ^[a-zA-Z0-9-_]{1,64}$
+ type: string
+ Tags:
+ $ref: '#/components/schemas/Tags'
+ x-stackQL-stringOnly: true
+ x-title: CreateAnycastIpListRequest
+ type: object
+ required: []
CreateCachePolicyRequest:
properties:
ClientToken:
@@ -2558,10 +3077,13 @@ components:
properties:
CachePolicyConfig:
$ref: '#/components/schemas/CachePolicyConfig'
+ description: The cache policy configuration.
Id:
type: string
+ description: ''
LastModifiedTime:
type: string
+ description: ''
x-stackQL-stringOnly: true
x-title: CreateCachePolicyRequest
type: object
@@ -2581,10 +3103,13 @@ components:
properties:
CloudFrontOriginAccessIdentityConfig:
$ref: '#/components/schemas/CloudFrontOriginAccessIdentityConfig'
+ description: The current configuration information for the identity.
Id:
type: string
+ description: ''
S3CanonicalUserId:
type: string
+ description: ''
x-stackQL-stringOnly: true
x-title: CreateCloudFrontOriginAccessIdentityRequest
type: object
@@ -2604,10 +3129,13 @@ components:
properties:
ContinuousDeploymentPolicyConfig:
$ref: '#/components/schemas/ContinuousDeploymentPolicyConfig'
+ description: Contains the configuration for a continuous deployment policy.
Id:
type: string
+ description: ''
LastModifiedTime:
type: string
+ description: ''
x-stackQL-stringOnly: true
x-title: CreateContinuousDeploymentPolicyRequest
type: object
@@ -2659,18 +3187,25 @@ components:
properties:
AutoPublish:
type: boolean
+ description: A flag that determines whether to automatically publish the function to the ``LIVE`` stage when it’s created. To automatically publish to the ``LIVE`` stage, set this property to ``true``.
FunctionARN:
type: string
+ description: ''
FunctionCode:
type: string
+ description: The function code. For more information about writing a CloudFront function, see [Writing function code for CloudFront Functions](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/writing-function-code.html) in the *Amazon CloudFront Developer Guide*.
FunctionConfig:
$ref: '#/components/schemas/FunctionConfig'
+ description: Contains configuration information about a CloudFront function.
FunctionMetadata:
$ref: '#/components/schemas/FunctionMetadata'
+ description: Contains metadata about a CloudFront function.
Name:
type: string
+ description: A name to identify the function.
Stage:
type: string
+ description: ''
x-stackQL-stringOnly: true
x-title: CreateFunctionRequest
type: object
@@ -2690,10 +3225,13 @@ components:
properties:
Id:
type: string
+ description: ''
KeyGroupConfig:
$ref: '#/components/schemas/KeyGroupConfig'
+ description: The key group configuration.
LastModifiedTime:
type: string
+ description: ''
x-stackQL-stringOnly: true
x-title: CreateKeyGroupRequest
type: object
@@ -2713,16 +3251,22 @@ components:
properties:
Arn:
type: string
+ description: ''
Id:
type: string
+ description: ''
Status:
type: string
+ description: ''
Name:
type: string
+ description: The name of the key value store.
Comment:
type: string
+ description: A comment for the key value store.
ImportSource:
$ref: '#/components/schemas/ImportSource'
+ description: The import source for the key value store.
x-stackQL-stringOnly: true
x-title: CreateKeyValueStoreRequest
type: object
@@ -2742,8 +3286,10 @@ components:
properties:
DistributionId:
type: string
+ description: The ID of the distribution that you are enabling metrics for.
MonitoringSubscription:
$ref: '#/components/schemas/MonitoringSubscription'
+ description: A subscription configuration for additional CloudWatch metrics.
x-stackQL-stringOnly: true
x-title: CreateMonitoringSubscriptionRequest
type: object
@@ -2763,8 +3309,10 @@ components:
properties:
Id:
type: string
+ description: ''
OriginAccessControlConfig:
$ref: '#/components/schemas/OriginAccessControlConfig'
+ description: The origin access control.
x-stackQL-stringOnly: true
x-title: CreateOriginAccessControlRequest
type: object
@@ -2784,10 +3332,13 @@ components:
properties:
Id:
type: string
+ description: ''
LastModifiedTime:
type: string
+ description: ''
OriginRequestPolicyConfig:
$ref: '#/components/schemas/OriginRequestPolicyConfig'
+ description: The origin request policy configuration.
x-stackQL-stringOnly: true
x-title: CreateOriginRequestPolicyRequest
type: object
@@ -2807,10 +3358,13 @@ components:
properties:
CreatedTime:
type: string
+ description: ''
Id:
type: string
+ description: ''
PublicKeyConfig:
$ref: '#/components/schemas/PublicKeyConfig'
+ description: Configuration information about a public key that you can use with [signed URLs and signed cookies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/PrivateContent.html), or with [field-level encryption](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/field-level-encryption.html).
x-stackQL-stringOnly: true
x-title: CreatePublicKeyRequest
type: object
@@ -2830,25 +3384,32 @@ components:
properties:
Arn:
type: string
+ description: ''
EndPoints:
items:
$ref: '#/components/schemas/EndPoint'
minItems: 1
type: array
uniqueItems: false
+ description: Contains information about the Amazon Kinesis data stream where you are sending real-time log data for this real-time log configuration.
Fields:
items:
type: string
minItems: 1
type: array
uniqueItems: false
+ description: |-
+ A list of fields that are included in each real-time log record. In an API response, the fields are provided in the same order in which they are sent to the Amazon Kinesis data stream.
+ For more information about fields, see [Real-time log configuration fields](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/real-time-logs.html#understand-real-time-log-config-fields) in the *Amazon CloudFront Developer Guide*.
Name:
type: string
+ description: The unique name of this real-time log configuration.
SamplingRate:
maximum: 100
minimum: 1
multipleOf: 1
type: number
+ description: The sampling rate for this real-time log configuration. The sampling rate determines the percentage of viewer requests that are represented in the real-time log data. The sampling rate is an integer between 1 and 100, inclusive.
x-stackQL-stringOnly: true
x-title: CreateRealtimeLogConfigRequest
type: object
@@ -2868,10 +3429,13 @@ components:
properties:
Id:
type: string
+ description: ''
LastModifiedTime:
type: string
+ description: ''
ResponseHeadersPolicyConfig:
$ref: '#/components/schemas/ResponseHeadersPolicyConfig'
+ description: A response headers policy configuration.
x-stackQL-stringOnly: true
x-title: CreateResponseHeadersPolicyRequest
type: object
@@ -2884,6 +3448,200 @@ components:
description: Amazon Signature authorization v4
x-amazon-apigateway-authtype: awsSigv4
x-stackQL-resources:
+ anycast_ip_lists:
+ name: anycast_ip_lists
+ id: aws.cloudfront.anycast_ip_lists
+ x-cfn-schema-name: AnycastIpList
+ x-cfn-type-name: AWS::CloudFront::AnycastIpList
+ x-identifiers:
+ - Id
+ x-type: cloud_control
+ methods:
+ create_resource:
+ config:
+ requestBodyTranslate:
+ algorithm: naive_DesiredState
+ operation:
+ $ref: '#/paths/~1?Action=CreateResource&Version=2021-09-30&__AnycastIpList&__detailTransformed=true/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::CloudFront::AnycastIpList"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ delete_resource:
+ operation:
+ $ref: '#/paths/~1?Action=DeleteResource&Version=2021-09-30/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::CloudFront::AnycastIpList"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ sqlVerbs:
+ insert:
+ - $ref: '#/components/x-stackQL-resources/anycast_ip_lists/methods/create_resource'
+ delete:
+ - $ref: '#/components/x-stackQL-resources/anycast_ip_lists/methods/delete_resource'
+ update: []
+ config:
+ views:
+ select:
+ predicate: sqlDialect == "sqlite3" && requiredParams == [ data__Identifier ]
+ ddl: |-
+ SELECT
+ region,
+ data__Identifier,
+ JSON_EXTRACT(Properties, '$.AnycastIpList') as anycast_ip_list,
+ JSON_EXTRACT(Properties, '$.ETag') as e_tag,
+ JSON_EXTRACT(Properties, '$.Id') as id,
+ JSON_EXTRACT(Properties, '$.IpCount') as ip_count,
+ JSON_EXTRACT(Properties, '$.Name') as name,
+ JSON_EXTRACT(Properties, '$.Tags') as tags
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::CloudFront::AnycastIpList'
+ AND data__Identifier = ''
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "sqlite3"
+ ddl: |-
+ SELECT
+ detail.region,
+ JSON_EXTRACT(detail.Properties, '$.AnycastIpList') as anycast_ip_list,
+ JSON_EXTRACT(detail.Properties, '$.ETag') as e_tag,
+ JSON_EXTRACT(detail.Properties, '$.Id') as id,
+ JSON_EXTRACT(detail.Properties, '$.IpCount') as ip_count,
+ JSON_EXTRACT(detail.Properties, '$.Name') as name,
+ JSON_EXTRACT(detail.Properties, '$.Tags') as tags
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ WHERE listing.data__TypeName = 'AWS::CloudFront::AnycastIpList'
+ AND detail.data__TypeName = 'AWS::CloudFront::AnycastIpList'
+ AND listing.region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres" && requiredParams == [ data__Identifier ]
+ ddl: |-
+ SELECT
+ region,
+ data__Identifier,
+ json_extract_path_text(Properties, 'AnycastIpList') as anycast_ip_list,
+ json_extract_path_text(Properties, 'ETag') as e_tag,
+ json_extract_path_text(Properties, 'Id') as id,
+ json_extract_path_text(Properties, 'IpCount') as ip_count,
+ json_extract_path_text(Properties, 'Name') as name,
+ json_extract_path_text(Properties, 'Tags') as tags
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::CloudFront::AnycastIpList'
+ AND data__Identifier = ''
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres"
+ ddl: |-
+ SELECT
+ detail.region,
+ json_extract_path_text(detail.Properties, 'AnycastIpList') as anycast_ip_list,
+ json_extract_path_text(detail.Properties, 'ETag') as e_tag,
+ json_extract_path_text(detail.Properties, 'Id') as id,
+ json_extract_path_text(detail.Properties, 'IpCount') as ip_count,
+ json_extract_path_text(detail.Properties, 'Name') as name,
+ json_extract_path_text(detail.Properties, 'Tags') as tags
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ WHERE listing.data__TypeName = 'AWS::CloudFront::AnycastIpList'
+ AND detail.data__TypeName = 'AWS::CloudFront::AnycastIpList'
+ AND listing.region = 'us-east-1'
+ anycast_ip_lists_list_only:
+ name: anycast_ip_lists_list_only
+ id: aws.cloudfront.anycast_ip_lists_list_only
+ x-cfn-schema-name: AnycastIpList
+ x-cfn-type-name: AWS::CloudFront::AnycastIpList
+ x-identifiers:
+ - Id
+ x-type: cloud_control_view
+ methods: {}
+ sqlVerbs:
+ insert: []
+ delete: []
+ update: []
+ config:
+ views:
+ select:
+ predicate: sqlDialect == "sqlite3"
+ ddl: |-
+ SELECT
+ region,
+ JSON_EXTRACT(Properties, '$.Id') as id
+ FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::CloudFront::AnycastIpList'
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres"
+ ddl: |-
+ SELECT
+ region,
+ json_extract_path_text(Properties, 'Id') as id
+ FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::CloudFront::AnycastIpList'
+ AND region = 'us-east-1'
+ anycast_ip_list_tags:
+ name: anycast_ip_list_tags
+ id: aws.cloudfront.anycast_ip_list_tags
+ x-cfn-schema-name: AnycastIpList
+ x-cfn-type-name: AWS::CloudFront::AnycastIpList
+ x-type: cloud_control_view
+ methods: {}
+ sqlVerbs:
+ insert: []
+ delete: []
+ update: []
+ config:
+ views:
+ select:
+ predicate: sqlDialect == "sqlite3"
+ ddl: |-
+ SELECT
+ detail.region,
+ JSON_EXTRACT(json_each.value, '$.Key') as tag_key,
+ JSON_EXTRACT(json_each.value, '$.Value') as tag_value,
+ JSON_EXTRACT(detail.Properties, '$.AnycastIpList') as anycast_ip_list,
+ JSON_EXTRACT(detail.Properties, '$.ETag') as e_tag,
+ JSON_EXTRACT(detail.Properties, '$.Id') as id,
+ JSON_EXTRACT(detail.Properties, '$.IpCount') as ip_count,
+ JSON_EXTRACT(detail.Properties, '$.Name') as name
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ ,json_each(JSON_EXTRACT(detail.Properties, '$.Tags'))
+ WHERE listing.data__TypeName = 'AWS::CloudFront::AnycastIpList'
+ AND detail.data__TypeName = 'AWS::CloudFront::AnycastIpList'
+ AND listing.region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres"
+ ddl: |-
+ SELECT
+ detail.region,
+ json_extract_path_text(json_each.value, 'Key') as tag_key,
+ json_extract_path_text(json_each.value, 'Value') as tag_value,
+ json_extract_path_text(detail.Properties, 'AnycastIpList') as anycast_ip_list,
+ json_extract_path_text(detail.Properties, 'ETag') as e_tag,
+ json_extract_path_text(detail.Properties, 'Id') as id,
+ json_extract_path_text(detail.Properties, 'IpCount') as ip_count,
+ json_extract_path_text(detail.Properties, 'Name') as name
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ ,json_array_elements_text(json_extract_path_text(detail.Properties, 'Tags'))
+ WHERE listing.data__TypeName = 'AWS::CloudFront::AnycastIpList'
+ AND detail.data__TypeName = 'AWS::CloudFront::AnycastIpList'
+ AND listing.region = 'us-east-1'
cache_policies:
name: cache_policies
id: aws.cloudfront.cache_policies
@@ -4882,6 +5640,48 @@ paths:
schema:
$ref: '#/components/x-cloud-control-schemas/UpdateResourceOutput'
description: Success
+ /?Action=CreateResource&Version=2021-09-30&__AnycastIpList&__detailTransformed=true:
+ parameters:
+ - $ref: '#/components/parameters/X-Amz-Content-Sha256'
+ - $ref: '#/components/parameters/X-Amz-Date'
+ - $ref: '#/components/parameters/X-Amz-Algorithm'
+ - $ref: '#/components/parameters/X-Amz-Credential'
+ - $ref: '#/components/parameters/X-Amz-Security-Token'
+ - $ref: '#/components/parameters/X-Amz-Signature'
+ - $ref: '#/components/parameters/X-Amz-SignedHeaders'
+ post:
+ operationId: CreateAnycastIpList
+ parameters:
+ - description: Action Header
+ in: header
+ name: X-Amz-Target
+ required: false
+ schema:
+ default: CloudApiService.CreateResource
+ enum:
+ - CloudApiService.CreateResource
+ type: string
+ - in: header
+ name: Content-Type
+ required: false
+ schema:
+ default: application/x-amz-json-1.0
+ enum:
+ - application/x-amz-json-1.0
+ type: string
+ requestBody:
+ content:
+ application/x-amz-json-1.0:
+ schema:
+ $ref: '#/components/schemas/CreateAnycastIpListRequest'
+ required: true
+ responses:
+ '200':
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/x-cloud-control-schemas/ProgressEvent'
+ description: Success
/?Action=CreateResource&Version=2021-09-30&__CachePolicy&__detailTransformed=true:
parameters:
- $ref: '#/components/parameters/X-Amz-Content-Sha256'
diff --git a/providers/src/aws/v00.00.00000/services/cloudtrail.yaml b/providers/src/aws/v00.00.00000/services/cloudtrail.yaml
index eaddc47a..bda8f940 100644
--- a/providers/src/aws/v00.00.00000/services/cloudtrail.yaml
+++ b/providers/src/aws/v00.00.00000/services/cloudtrail.yaml
@@ -425,15 +425,15 @@ components:
pattern: (^[a-zA-Z0-9._\-]+$)
Tag:
description: An arbitrary set of tags (key-value pairs) for this trail.
- type: object
additionalProperties: false
+ type: object
properties:
- Key:
- description: 'The key name of the tag. You can specify a value that is 1 to 127 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -.'
- type: string
Value:
description: 'The value for the tag. You can specify a value that is 1 to 255 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -.'
type: string
+ Key:
+ description: 'The key name of the tag. You can specify a value that is 1 to 127 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -.'
+ type: string
required:
- Value
- Key
@@ -500,109 +500,276 @@ components:
- CloudTrail:DeleteChannel
list:
- CloudTrail:ListChannels
+ RefreshSchedule:
+ description: Configures the automatic refresh schedule for the dashboard. Includes the frequency unit (DAYS or HOURS) and value, as well as the status (ENABLED or DISABLED) of the refresh schedule.
+ type: object
+ additionalProperties: false
+ properties:
+ Frequency:
+ type: object
+ additionalProperties: false
+ properties:
+ Unit:
+ description: The frequency unit. Supported values are HOURS and DAYS.
+ type: string
+ enum:
+ - HOURS
+ - DAYS
+ Value:
+ description: The frequency value.
+ type: integer
+ required:
+ - Unit
+ - Value
+ TimeOfDay:
+ type: string
+ description: StartTime of the automatic schedule refresh.
+ pattern: ^[0-9]{2}:[0-9]{2}
+ Status:
+ type: string
+ description: The status of the schedule. Supported values are ENABLED and DISABLED.
+ enum:
+ - ENABLED
+ - DISABLED
+ required: []
+ QueryParameter:
+ type: string
+ description: 'The value of the QueryParameter. Possible values: $StartTime$, $EndTime$, $Period$.'
+ minLength: 1
+ maxLength: 1024
+ pattern: .*
+ Widget:
+ description: The dashboard widget
+ type: object
+ additionalProperties: false
+ properties:
+ QueryStatement:
+ description: The SQL query statement on one or more event data stores.
+ type: string
+ minLength: 1
+ maxLength: 10000
+ pattern: (?s).*
+ QueryParameters:
+ description: 'The placeholder keys in the QueryStatement. For example: $StartTime$, $EndTime$, $Period$.'
+ type: array
+ items:
+ $ref: '#/components/schemas/QueryParameter'
+ minItems: 1
+ maxItems: 10
+ uniqueItems: false
+ x-insertionOrder: true
+ ViewProperties:
+ description: The view properties of the widget.
+ type: object
+ additionalProperties: false
+ x-patternProperties:
+ ^[a-zA-Z0-9._-]{3,128}$:
+ type: string
+ minLength: 1
+ maxLength: 128
+ pattern: ^[a-zA-Z0-9._\- ]+$
+ required:
+ - QueryStatement
+ Dashboard:
+ type: object
+ properties:
+ Widgets:
+ description: List of widgets on the dashboard
+ type: array
+ items:
+ $ref: '#/components/schemas/Widget'
+ uniqueItems: true
+ x-insertionOrder: true
+ CreatedTimestamp:
+ description: The timestamp of the dashboard creation.
+ $ref: '#/components/schemas/Timestamp'
+ DashboardArn:
+ description: The ARN of the dashboard.
+ type: string
+ pattern: ^[a-zA-Z0-9._/\-:]+$
+ RefreshSchedule:
+ description: Configures the automatic refresh schedule for the dashboard. Includes the frequency unit (DAYS or HOURS) and value, as well as the status (ENABLED or DISABLED) of the refresh schedule.
+ $ref: '#/components/schemas/RefreshSchedule'
+ Name:
+ description: The name of the dashboard.
+ type: string
+ pattern: ^[a-zA-Z0-9_\-]+$
+ Status:
+ description: The status of the dashboard. Values are CREATING, CREATED, UPDATING, UPDATED and DELETING.
+ type: string
+ enum:
+ - CREATING
+ - CREATED
+ - UPDATING
+ - UPDATED
+ - DELETING
+ TerminationProtectionEnabled:
+ description: Indicates whether the dashboard is protected from termination.
+ type: boolean
+ Type:
+ description: The type of the dashboard. Values are CUSTOM and MANAGED.
+ type: string
+ enum:
+ - MANAGED
+ - CUSTOM
+ UpdatedTimestamp:
+ description: The timestamp showing when the dashboard was updated, if applicable. UpdatedTimestamp is always either the same or newer than the time shown in CreatedTimestamp.
+ $ref: '#/components/schemas/Timestamp'
+ Tags:
+ type: array
+ uniqueItems: false
+ x-insertionOrder: false
+ items:
+ $ref: '#/components/schemas/Tag'
+ required: []
+ x-stackql-resource-name: dashboard
+ description: The Amazon CloudTrail dashboard resource allows customers to manage managed dashboards and create custom dashboards. You can manually refresh custom and managed dashboards. For custom dashboards, you can also set up an automatic refresh schedule and modify dashboard widgets.
+ x-type-name: AWS::CloudTrail::Dashboard
+ x-stackql-primary-identifier:
+ - DashboardArn
+ x-read-only-properties:
+ - DashboardArn
+ - CreatedTimestamp
+ - UpdatedTimestamp
+ - Status
+ - Type
+ x-required-properties: []
+ x-tagging:
+ taggable: true
+ tagOnCreate: true
+ tagUpdatable: true
+ cloudFormationSystemTags: false
+ tagProperty: /properties/Tags
+ permissions:
+ - CloudTrail:AddTags
+ - CloudTrail:RemoveTags
+ - CloudTrail:ListTags
+ x-required-permissions:
+ create:
+ - CloudTrail:CreateDashboard
+ - CloudTrail:AddTags
+ - CloudTrail:StartQuery
+ - CloudTrail:StartDashboardRefresh
+ read:
+ - CloudTrail:GetDashboard
+ - CloudTrail:ListDashboards
+ - CloudTrail:ListTags
+ update:
+ - CloudTrail:UpdateDashboard
+ - CloudTrail:AddTags
+ - CloudTrail:RemoveTags
+ - CloudTrail:StartQuery
+ - CloudTrail:StartDashboardRefresh
+ delete:
+ - CloudTrail:DeleteDashboard
+ - CloudTrail:UpdateDashboard
+ list:
+ - CloudTrail:ListDashboards
+ - CloudTrail:GetDashboard
+ - CloudTrail:ListTags
AdvancedFieldSelector:
description: A single selector statement in an advanced event selector.
- type: object
additionalProperties: false
+ type: object
properties:
Field:
+ minLength: 1
+ pattern: ([\w|\d|\.|_]+)
description: A field in an event record on which to filter events to be logged. Supported fields include readOnly, eventCategory, eventSource (for management events), eventName, resources.type, and resources.ARN.
type: string
- pattern: ([\w|\d|\.|_]+)
- minLength: 1
maxLength: 1000
Equals:
- description: An operator that includes events that match the exact value of the event record field specified as the value of Field. This is the only valid operator that you can use with the readOnly, eventCategory, and resources.type fields.
- type: array
+ minItems: 1
uniqueItems: true
+ description: An operator that includes events that match the exact value of the event record field specified as the value of Field. This is the only valid operator that you can use with the readOnly, eventCategory, and resources.type fields.
x-insertionOrder: false
- minItems: 1
+ type: array
items:
- type: string
- pattern: (.+)
minLength: 1
+ pattern: (.+)
+ type: string
maxLength: 2048
- StartsWith:
- description: An operator that includes events that match the first few characters of the event record field specified as the value of Field.
- type: array
+ NotStartsWith:
+ minItems: 1
uniqueItems: true
+ description: An operator that excludes events that match the first few characters of the event record field specified as the value of Field.
x-insertionOrder: false
- minItems: 1
+ type: array
items:
- type: string
- pattern: (.+)
minLength: 1
+ pattern: (.+)
+ type: string
maxLength: 2048
- EndsWith:
- description: An operator that includes events that match the last few characters of the event record field specified as the value of Field.
- type: array
+ NotEndsWith:
+ minItems: 1
uniqueItems: true
+ description: An operator that excludes events that match the last few characters of the event record field specified as the value of Field.
x-insertionOrder: false
- minItems: 1
+ type: array
items:
- type: string
- pattern: (.+)
minLength: 1
+ pattern: (.+)
+ type: string
maxLength: 2048
- NotEquals:
- description: An operator that excludes events that match the exact value of the event record field specified as the value of Field.
- type: array
+ StartsWith:
+ minItems: 1
uniqueItems: true
+ description: An operator that includes events that match the first few characters of the event record field specified as the value of Field.
x-insertionOrder: false
- minItems: 1
+ type: array
items:
- type: string
- pattern: (.+)
minLength: 1
+ pattern: (.+)
+ type: string
maxLength: 2048
- NotStartsWith:
- description: An operator that excludes events that match the first few characters of the event record field specified as the value of Field.
- type: array
+ EndsWith:
+ minItems: 1
uniqueItems: true
+ description: An operator that includes events that match the last few characters of the event record field specified as the value of Field.
x-insertionOrder: false
- minItems: 1
+ type: array
items:
- type: string
- pattern: (.+)
minLength: 1
+ pattern: (.+)
+ type: string
maxLength: 2048
- NotEndsWith:
- description: An operator that excludes events that match the last few characters of the event record field specified as the value of Field.
- type: array
+ NotEquals:
+ minItems: 1
uniqueItems: true
+ description: An operator that excludes events that match the exact value of the event record field specified as the value of Field.
x-insertionOrder: false
- minItems: 1
+ type: array
items:
- type: string
- pattern: (.+)
minLength: 1
+ pattern: (.+)
+ type: string
maxLength: 2048
required:
- Field
AdvancedEventSelector:
description: Advanced event selectors let you create fine-grained selectors for the following AWS CloudTrail event record fields. They help you control costs by logging only those events that are important to you.
- type: object
additionalProperties: false
+ type: object
properties:
- Name:
- description: An optional, descriptive name for an advanced event selector, such as "Log data events for only two S3 buckets".
- type: string
- minLength: 1
- maxLength: 1000
FieldSelectors:
- description: Contains all selector statements in an advanced event selector.
- type: array
+ minItems: 1
uniqueItems: true
+ description: Contains all selector statements in an advanced event selector.
x-insertionOrder: false
- minItems: 1
+ type: array
items:
$ref: '#/components/schemas/AdvancedFieldSelector'
+ Name:
+ minLength: 1
+ description: An optional, descriptive name for an advanced event selector, such as "Log data events for only two S3 buckets".
+ type: string
+ maxLength: 1000
required:
- FieldSelectors
InsightSelector:
description: A string that contains insight types that are logged on a trail.
- type: object
additionalProperties: false
+ type: object
properties:
InsightType:
description: The type of insight to log on a trail.
@@ -781,34 +948,11 @@ components:
- CloudTrail:GetResourcePolicy
delete:
- CloudTrail:DeleteResourcePolicy
- DataResource:
- description: CloudTrail supports data event logging for Amazon S3 objects and AWS Lambda functions. You can specify up to 250 resources for an individual event selector, but the total number of data resources cannot exceed 250 across all event selectors in a trail. This limit does not apply if you configure resource logging for all data events.
- type: object
- additionalProperties: false
- properties:
- Type:
- description: The resource type in which you want to log data events. You can specify AWS::S3::Object or AWS::Lambda::Function resources.
- type: string
- Values:
- description: An array of Amazon Resource Name (ARN) strings or partial ARN strings for the specified objects.
- type: array
- uniqueItems: true
- x-insertionOrder: false
- items:
- type: string
- required:
- - Type
EventSelector:
description: The type of email sending events to publish to the event destination.
- type: object
additionalProperties: false
+ type: object
properties:
- DataResources:
- type: array
- uniqueItems: true
- x-insertionOrder: false
- items:
- $ref: '#/components/schemas/DataResource'
IncludeManagementEvents:
description: Specify if you want your event selector to include management events for your trail.
type: boolean
@@ -820,91 +964,114 @@ components:
- ReadOnly
- WriteOnly
ExcludeManagementEventSources:
+ uniqueItems: true
description: 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 AWS Key Management Service events by containing "kms.amazonaws.com". By default, ExcludeManagementEventSources is empty, and AWS KMS events are included in events that are logged to your trail.
+ x-insertionOrder: false
type: array
+ items:
+ type: string
+ DataResources:
uniqueItems: true
x-insertionOrder: false
+ type: array
items:
- type: string
- Trail:
+ $ref: '#/components/schemas/DataResource'
+ DataResource:
+ description: CloudTrail supports data event logging for Amazon S3 objects and AWS Lambda functions. You can specify up to 250 resources for an individual event selector, but the total number of data resources cannot exceed 250 across all event selectors in a trail. This limit does not apply if you configure resource logging for all data events.
+ additionalProperties: false
type: object
properties:
- CloudWatchLogsLogGroupArn:
- description: 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. Not required unless you specify CloudWatchLogsRoleArn.
- type: string
- CloudWatchLogsRoleArn:
- description: Specifies the role for the CloudWatch Logs endpoint to assume to write to a user's log group.
+ Type:
+ description: The resource type in which you want to log data events. You can specify AWS::S3::Object or AWS::Lambda::Function resources.
type: string
- EnableLogFileValidation:
- description: Specifies whether log file validation is enabled. The default is false.
- type: boolean
- AdvancedEventSelectors:
- description: The advanced event selectors that were used to select events for the data store.
- type: array
- items:
- $ref: '#/components/schemas/AdvancedEventSelector'
+ Values:
uniqueItems: true
+ description: An array of Amazon Resource Name (ARN) strings or partial ARN strings for the specified objects.
x-insertionOrder: false
+ type: array
+ items:
+ type: string
+ required:
+ - Type
+ Trail:
+ type: object
+ properties:
+ IncludeGlobalServiceEvents:
+ description: Specifies whether the trail is publishing events from global services such as IAM to the log files.
+ type: boolean
EventSelectors:
+ maxItems: 5
+ uniqueItems: true
description: >-
Use event selectors to further specify the management and data event settings for your trail. By default, trails created without specific event selectors will be configured to log all read and write management events, and no data events. When an event occurs in your account, CloudTrail evaluates the event selector for 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. You can configure up to five event selectors for a trail.
+ x-insertionOrder: false
type: array
items:
$ref: '#/components/schemas/EventSelector'
- maxItems: 5
- uniqueItems: true
- x-insertionOrder: false
- IncludeGlobalServiceEvents:
- description: Specifies whether the trail is publishing events from global services such as IAM to the log files.
- type: boolean
- IsLogging:
- description: Whether the CloudTrail is currently logging AWS API calls.
- type: boolean
- IsMultiRegionTrail:
- description: >-
- 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.
- type: boolean
- IsOrganizationTrail:
- description: Specifies whether the trail is created for all accounts in an organization in AWS Organizations, or only for the current AWS account. The default is false, and cannot be true unless the call is made on behalf of an AWS account that is the master account for an organization in AWS Organizations.
- type: boolean
KMSKeyId:
description: 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.
type: string
- S3BucketName:
- description: Specifies the name of the Amazon S3 bucket designated for publishing log files. See Amazon S3 Bucket Naming Requirements.
+ CloudWatchLogsRoleArn:
+ description: Specifies the role for the CloudWatch Logs endpoint to assume to write to a user's log group.
type: string
S3KeyPrefix:
description: 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.
type: string
maxLength: 200
- SnsTopicName:
- description: Specifies the name of the Amazon SNS topic defined for notification of log file delivery. The maximum length is 256 characters.
- type: string
- maxLength: 256
- Tags:
- type: array
- uniqueItems: false
+ AdvancedEventSelectors:
+ uniqueItems: true
+ description: The advanced event selectors that were used to select events for the data store.
x-insertionOrder: false
+ type: array
items:
- $ref: '#/components/schemas/Tag'
+ $ref: '#/components/schemas/AdvancedEventSelector'
TrailName:
- type: string
- pattern: (^[a-zA-Z0-9]$)|(^[a-zA-Z0-9]([a-zA-Z0-9\._-])*[a-zA-Z0-9]$)
minLength: 3
- maxLength: 128
- Arn:
- type: string
- SnsTopicArn:
+ pattern: (^[a-zA-Z0-9]$)|(^[a-zA-Z0-9]([a-zA-Z0-9\._-])*[a-zA-Z0-9]$)
type: string
+ maxLength: 128
+ IsOrganizationTrail:
+ description: Specifies whether the trail is created for all accounts in an organization in AWS Organizations, or only for the current AWS account. The default is false, and cannot be true unless the call is made on behalf of an AWS account that is the master account for an organization in AWS Organizations.
+ type: boolean
InsightSelectors:
+ uniqueItems: true
description: Lets you enable Insights event logging by specifying the Insights selectors that you want to enable on an existing trail.
+ x-insertionOrder: false
type: array
items:
$ref: '#/components/schemas/InsightSelector'
- uniqueItems: true
+ CloudWatchLogsLogGroupArn:
+ description: 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. Not required unless you specify CloudWatchLogsRoleArn.
+ type: string
+ SnsTopicName:
+ description: Specifies the name of the Amazon SNS topic defined for notification of log file delivery. The maximum length is 256 characters.
+ type: string
+ maxLength: 256
+ IsMultiRegionTrail:
+ description: >-
+ 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.
+ type: boolean
+ S3BucketName:
+ description: Specifies the name of the Amazon S3 bucket designated for publishing log files. See Amazon S3 Bucket Naming Requirements.
+ type: string
+ SnsTopicArn:
+ type: string
+ EnableLogFileValidation:
+ description: Specifies whether log file validation is enabled. The default is false.
+ type: boolean
+ Arn:
+ type: string
+ Tags:
+ uniqueItems: false
x-insertionOrder: false
+ type: array
+ items:
+ $ref: '#/components/schemas/Tag'
+ IsLogging:
+ description: Whether the CloudTrail is currently logging AWS API calls.
+ type: boolean
required:
- S3BucketName
- IsLogging
@@ -922,11 +1089,23 @@ components:
- S3BucketName
- IsLogging
x-tagging:
+ permissions:
+ - CloudTrail:AddTags
+ - CloudTrail:RemoveTags
+ - CloudTrail:ListTags
taggable: true
tagOnCreate: true
tagUpdatable: true
+ tagProperty: /properties/Tags
cloudFormationSystemTags: false
x-required-permissions:
+ read:
+ - CloudTrail:GetTrail
+ - CloudTrail:GetTrailStatus
+ - CloudTrail:ListTags
+ - CloudTrail:GetEventSelectors
+ - CloudTrail:GetInsightSelectors
+ - CloudTrail:DescribeTrails
create:
- CloudTrail:CreateTrail
- CloudTrail:StartLogging
@@ -938,13 +1117,6 @@ components:
- iam:CreateServiceLinkedRole
- organizations:DescribeOrganization
- organizations:ListAWSServiceAccessForOrganization
- read:
- - CloudTrail:GetTrail
- - CloudTrail:GetTrailStatus
- - CloudTrail:ListTags
- - CloudTrail:GetEventSelectors
- - CloudTrail:GetInsightSelectors
- - CloudTrail:DescribeTrails
update:
- CloudTrail:UpdateTrail
- CloudTrail:StartLogging
@@ -960,8 +1132,6 @@ components:
- organizations:ListAWSServiceAccessForOrganization
- CloudTrail:GetTrail
- CloudTrail:DescribeTrails
- delete:
- - CloudTrail:DeleteTrail
list:
- CloudTrail:ListTrails
- CloudTrail:GetTrail
@@ -970,6 +1140,8 @@ components:
- CloudTrail:GetEventSelectors
- CloudTrail:GetInsightSelectors
- CloudTrail:DescribeTrails
+ delete:
+ - CloudTrail:DeleteTrail
CreateChannelRequest:
properties:
ClientToken:
@@ -1012,6 +1184,71 @@ components:
x-title: CreateChannelRequest
type: object
required: []
+ CreateDashboardRequest:
+ properties:
+ ClientToken:
+ type: string
+ RoleArn:
+ type: string
+ TypeName:
+ type: string
+ TypeVersionId:
+ type: string
+ DesiredState:
+ type: object
+ properties:
+ Widgets:
+ description: List of widgets on the dashboard
+ type: array
+ items:
+ $ref: '#/components/schemas/Widget'
+ uniqueItems: true
+ x-insertionOrder: true
+ CreatedTimestamp:
+ description: The timestamp of the dashboard creation.
+ $ref: '#/components/schemas/Timestamp'
+ DashboardArn:
+ description: The ARN of the dashboard.
+ type: string
+ pattern: ^[a-zA-Z0-9._/\-:]+$
+ RefreshSchedule:
+ description: Configures the automatic refresh schedule for the dashboard. Includes the frequency unit (DAYS or HOURS) and value, as well as the status (ENABLED or DISABLED) of the refresh schedule.
+ $ref: '#/components/schemas/RefreshSchedule'
+ Name:
+ description: The name of the dashboard.
+ type: string
+ pattern: ^[a-zA-Z0-9_\-]+$
+ Status:
+ description: The status of the dashboard. Values are CREATING, CREATED, UPDATING, UPDATED and DELETING.
+ type: string
+ enum:
+ - CREATING
+ - CREATED
+ - UPDATING
+ - UPDATED
+ - DELETING
+ TerminationProtectionEnabled:
+ description: Indicates whether the dashboard is protected from termination.
+ type: boolean
+ Type:
+ description: The type of the dashboard. Values are CUSTOM and MANAGED.
+ type: string
+ enum:
+ - MANAGED
+ - CUSTOM
+ UpdatedTimestamp:
+ description: The timestamp showing when the dashboard was updated, if applicable. UpdatedTimestamp is always either the same or newer than the time shown in CreatedTimestamp.
+ $ref: '#/components/schemas/Timestamp'
+ Tags:
+ type: array
+ uniqueItems: false
+ x-insertionOrder: false
+ items:
+ $ref: '#/components/schemas/Tag'
+ x-stackQL-stringOnly: true
+ x-title: CreateDashboardRequest
+ type: object
+ required: []
CreateEventDataStoreRequest:
properties:
ClientToken:
@@ -1130,82 +1367,82 @@ components:
DesiredState:
type: object
properties:
- CloudWatchLogsLogGroupArn:
- description: 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. Not required unless you specify CloudWatchLogsRoleArn.
+ IncludeGlobalServiceEvents:
+ description: Specifies whether the trail is publishing events from global services such as IAM to the log files.
+ type: boolean
+ EventSelectors:
+ maxItems: 5
+ uniqueItems: true
+ description: >-
+ Use event selectors to further specify the management and data event settings for your trail. By default, trails created without specific event selectors will be configured to log all read and write management events, and no data events. When an event occurs in your account, CloudTrail evaluates the event selector for 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. You can configure up to five event selectors for a trail.
+ x-insertionOrder: false
+ type: array
+ items:
+ $ref: '#/components/schemas/EventSelector'
+ KMSKeyId:
+ description: 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.
type: string
CloudWatchLogsRoleArn:
description: Specifies the role for the CloudWatch Logs endpoint to assume to write to a user's log group.
type: string
- EnableLogFileValidation:
- description: Specifies whether log file validation is enabled. The default is false.
- type: boolean
+ S3KeyPrefix:
+ description: 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.
+ type: string
+ maxLength: 200
AdvancedEventSelectors:
+ uniqueItems: true
description: The advanced event selectors that were used to select events for the data store.
+ x-insertionOrder: false
type: array
items:
$ref: '#/components/schemas/AdvancedEventSelector'
+ TrailName:
+ minLength: 3
+ pattern: (^[a-zA-Z0-9]$)|(^[a-zA-Z0-9]([a-zA-Z0-9\._-])*[a-zA-Z0-9]$)
+ type: string
+ maxLength: 128
+ IsOrganizationTrail:
+ description: Specifies whether the trail is created for all accounts in an organization in AWS Organizations, or only for the current AWS account. The default is false, and cannot be true unless the call is made on behalf of an AWS account that is the master account for an organization in AWS Organizations.
+ type: boolean
+ InsightSelectors:
uniqueItems: true
+ description: Lets you enable Insights event logging by specifying the Insights selectors that you want to enable on an existing trail.
x-insertionOrder: false
- EventSelectors:
- description: >-
- Use event selectors to further specify the management and data event settings for your trail. By default, trails created without specific event selectors will be configured to log all read and write management events, and no data events. When an event occurs in your account, CloudTrail evaluates the event selector for 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. You can configure up to five event selectors for a trail.
type: array
items:
- $ref: '#/components/schemas/EventSelector'
- maxItems: 5
- uniqueItems: true
- x-insertionOrder: false
- IncludeGlobalServiceEvents:
- description: Specifies whether the trail is publishing events from global services such as IAM to the log files.
- type: boolean
- IsLogging:
- description: Whether the CloudTrail is currently logging AWS API calls.
- type: boolean
+ $ref: '#/components/schemas/InsightSelector'
+ CloudWatchLogsLogGroupArn:
+ description: 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. Not required unless you specify CloudWatchLogsRoleArn.
+ type: string
+ SnsTopicName:
+ description: Specifies the name of the Amazon SNS topic defined for notification of log file delivery. The maximum length is 256 characters.
+ type: string
+ maxLength: 256
IsMultiRegionTrail:
description: >-
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.
type: boolean
- IsOrganizationTrail:
- description: Specifies whether the trail is created for all accounts in an organization in AWS Organizations, or only for the current AWS account. The default is false, and cannot be true unless the call is made on behalf of an AWS account that is the master account for an organization in AWS Organizations.
- type: boolean
- KMSKeyId:
- description: 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.
- type: string
S3BucketName:
description: Specifies the name of the Amazon S3 bucket designated for publishing log files. See Amazon S3 Bucket Naming Requirements.
type: string
- S3KeyPrefix:
- description: 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.
+ SnsTopicArn:
type: string
- maxLength: 200
- SnsTopicName:
- description: Specifies the name of the Amazon SNS topic defined for notification of log file delivery. The maximum length is 256 characters.
+ EnableLogFileValidation:
+ description: Specifies whether log file validation is enabled. The default is false.
+ type: boolean
+ Arn:
type: string
- maxLength: 256
Tags:
- type: array
uniqueItems: false
x-insertionOrder: false
- items:
- $ref: '#/components/schemas/Tag'
- TrailName:
- type: string
- pattern: (^[a-zA-Z0-9]$)|(^[a-zA-Z0-9]([a-zA-Z0-9\._-])*[a-zA-Z0-9]$)
- minLength: 3
- maxLength: 128
- Arn:
- type: string
- SnsTopicArn:
- type: string
- InsightSelectors:
- description: Lets you enable Insights event logging by specifying the Insights selectors that you want to enable on an existing trail.
type: array
items:
- $ref: '#/components/schemas/InsightSelector'
- uniqueItems: true
- x-insertionOrder: false
+ $ref: '#/components/schemas/Tag'
+ IsLogging:
+ description: Whether the CloudTrail is currently logging AWS API calls.
+ type: boolean
x-stackQL-stringOnly: true
x-title: CreateTrailRequest
type: object
@@ -1224,7 +1461,208 @@ components:
x-cfn-schema-name: Channel
x-cfn-type-name: AWS::CloudTrail::Channel
x-identifiers:
- - ChannelArn
+ - ChannelArn
+ x-type: cloud_control
+ methods:
+ create_resource:
+ config:
+ requestBodyTranslate:
+ algorithm: naive_DesiredState
+ operation:
+ $ref: '#/paths/~1?Action=CreateResource&Version=2021-09-30&__Channel&__detailTransformed=true/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::CloudTrail::Channel"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ update_resource:
+ operation:
+ $ref: '#/paths/~1?Action=UpdateResource&Version=2021-09-30/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::CloudTrail::Channel"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ delete_resource:
+ operation:
+ $ref: '#/paths/~1?Action=DeleteResource&Version=2021-09-30/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::CloudTrail::Channel"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ sqlVerbs:
+ insert:
+ - $ref: '#/components/x-stackQL-resources/channels/methods/create_resource'
+ delete:
+ - $ref: '#/components/x-stackQL-resources/channels/methods/delete_resource'
+ update:
+ - $ref: '#/components/x-stackQL-resources/channels/methods/update_resource'
+ config:
+ views:
+ select:
+ predicate: sqlDialect == "sqlite3" && requiredParams == [ data__Identifier ]
+ ddl: |-
+ SELECT
+ region,
+ data__Identifier,
+ JSON_EXTRACT(Properties, '$.Name') as name,
+ JSON_EXTRACT(Properties, '$.Source') as source,
+ JSON_EXTRACT(Properties, '$.Destinations') as destinations,
+ JSON_EXTRACT(Properties, '$.ChannelArn') as channel_arn,
+ JSON_EXTRACT(Properties, '$.Tags') as tags
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::CloudTrail::Channel'
+ AND data__Identifier = ''
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "sqlite3"
+ ddl: |-
+ SELECT
+ detail.region,
+ JSON_EXTRACT(detail.Properties, '$.Name') as name,
+ JSON_EXTRACT(detail.Properties, '$.Source') as source,
+ JSON_EXTRACT(detail.Properties, '$.Destinations') as destinations,
+ JSON_EXTRACT(detail.Properties, '$.ChannelArn') as channel_arn,
+ JSON_EXTRACT(detail.Properties, '$.Tags') as tags
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ WHERE listing.data__TypeName = 'AWS::CloudTrail::Channel'
+ AND detail.data__TypeName = 'AWS::CloudTrail::Channel'
+ AND listing.region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres" && requiredParams == [ data__Identifier ]
+ ddl: |-
+ SELECT
+ region,
+ data__Identifier,
+ json_extract_path_text(Properties, 'Name') as name,
+ json_extract_path_text(Properties, 'Source') as source,
+ json_extract_path_text(Properties, 'Destinations') as destinations,
+ json_extract_path_text(Properties, 'ChannelArn') as channel_arn,
+ json_extract_path_text(Properties, 'Tags') as tags
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::CloudTrail::Channel'
+ AND data__Identifier = ''
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres"
+ ddl: |-
+ SELECT
+ detail.region,
+ json_extract_path_text(detail.Properties, 'Name') as name,
+ json_extract_path_text(detail.Properties, 'Source') as source,
+ json_extract_path_text(detail.Properties, 'Destinations') as destinations,
+ json_extract_path_text(detail.Properties, 'ChannelArn') as channel_arn,
+ json_extract_path_text(detail.Properties, 'Tags') as tags
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ WHERE listing.data__TypeName = 'AWS::CloudTrail::Channel'
+ AND detail.data__TypeName = 'AWS::CloudTrail::Channel'
+ AND listing.region = 'us-east-1'
+ channels_list_only:
+ name: channels_list_only
+ id: aws.cloudtrail.channels_list_only
+ x-cfn-schema-name: Channel
+ x-cfn-type-name: AWS::CloudTrail::Channel
+ x-identifiers:
+ - ChannelArn
+ x-type: cloud_control_view
+ methods: {}
+ sqlVerbs:
+ insert: []
+ delete: []
+ update: []
+ config:
+ views:
+ select:
+ predicate: sqlDialect == "sqlite3"
+ ddl: |-
+ SELECT
+ region,
+ JSON_EXTRACT(Properties, '$.ChannelArn') as channel_arn
+ FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::CloudTrail::Channel'
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres"
+ ddl: |-
+ SELECT
+ region,
+ json_extract_path_text(Properties, 'ChannelArn') as channel_arn
+ FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::CloudTrail::Channel'
+ AND region = 'us-east-1'
+ channel_tags:
+ name: channel_tags
+ id: aws.cloudtrail.channel_tags
+ x-cfn-schema-name: Channel
+ x-cfn-type-name: AWS::CloudTrail::Channel
+ x-type: cloud_control_view
+ methods: {}
+ sqlVerbs:
+ insert: []
+ delete: []
+ update: []
+ config:
+ views:
+ select:
+ predicate: sqlDialect == "sqlite3"
+ ddl: |-
+ SELECT
+ detail.region,
+ JSON_EXTRACT(json_each.value, '$.Key') as tag_key,
+ JSON_EXTRACT(json_each.value, '$.Value') as tag_value,
+ JSON_EXTRACT(detail.Properties, '$.Name') as name,
+ JSON_EXTRACT(detail.Properties, '$.Source') as source,
+ JSON_EXTRACT(detail.Properties, '$.Destinations') as destinations,
+ JSON_EXTRACT(detail.Properties, '$.ChannelArn') as channel_arn
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ ,json_each(JSON_EXTRACT(detail.Properties, '$.Tags'))
+ WHERE listing.data__TypeName = 'AWS::CloudTrail::Channel'
+ AND detail.data__TypeName = 'AWS::CloudTrail::Channel'
+ AND listing.region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres"
+ ddl: |-
+ SELECT
+ detail.region,
+ json_extract_path_text(json_each.value, 'Key') as tag_key,
+ json_extract_path_text(json_each.value, 'Value') as tag_value,
+ json_extract_path_text(detail.Properties, 'Name') as name,
+ json_extract_path_text(detail.Properties, 'Source') as source,
+ json_extract_path_text(detail.Properties, 'Destinations') as destinations,
+ json_extract_path_text(detail.Properties, 'ChannelArn') as channel_arn
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ ,json_array_elements_text(json_extract_path_text(detail.Properties, 'Tags'))
+ WHERE listing.data__TypeName = 'AWS::CloudTrail::Channel'
+ AND detail.data__TypeName = 'AWS::CloudTrail::Channel'
+ AND listing.region = 'us-east-1'
+ dashboards:
+ name: dashboards
+ id: aws.cloudtrail.dashboards
+ x-cfn-schema-name: Dashboard
+ x-cfn-type-name: AWS::CloudTrail::Dashboard
+ x-identifiers:
+ - DashboardArn
x-type: cloud_control
methods:
create_resource:
@@ -1232,12 +1670,12 @@ components:
requestBodyTranslate:
algorithm: naive_DesiredState
operation:
- $ref: '#/paths/~1?Action=CreateResource&Version=2021-09-30&__Channel&__detailTransformed=true/post'
+ $ref: '#/paths/~1?Action=CreateResource&Version=2021-09-30&__Dashboard&__detailTransformed=true/post'
request:
mediaType: application/x-amz-json-1.0
base: |-
{
- "TypeName": "AWS::CloudTrail::Channel"
+ "TypeName": "AWS::CloudTrail::Dashboard"
}
response:
mediaType: application/json
@@ -1249,7 +1687,7 @@ components:
mediaType: application/x-amz-json-1.0
base: |-
{
- "TypeName": "AWS::CloudTrail::Channel"
+ "TypeName": "AWS::CloudTrail::Dashboard"
}
response:
mediaType: application/json
@@ -1261,18 +1699,18 @@ components:
mediaType: application/x-amz-json-1.0
base: |-
{
- "TypeName": "AWS::CloudTrail::Channel"
+ "TypeName": "AWS::CloudTrail::Dashboard"
}
response:
mediaType: application/json
openAPIDocKey: '200'
sqlVerbs:
insert:
- - $ref: '#/components/x-stackQL-resources/channels/methods/create_resource'
+ - $ref: '#/components/x-stackQL-resources/dashboards/methods/create_resource'
delete:
- - $ref: '#/components/x-stackQL-resources/channels/methods/delete_resource'
+ - $ref: '#/components/x-stackQL-resources/dashboards/methods/delete_resource'
update:
- - $ref: '#/components/x-stackQL-resources/channels/methods/update_resource'
+ - $ref: '#/components/x-stackQL-resources/dashboards/methods/update_resource'
config:
views:
select:
@@ -1281,30 +1719,40 @@ components:
SELECT
region,
data__Identifier,
+ JSON_EXTRACT(Properties, '$.Widgets') as widgets,
+ JSON_EXTRACT(Properties, '$.CreatedTimestamp') as created_timestamp,
+ JSON_EXTRACT(Properties, '$.DashboardArn') as dashboard_arn,
+ JSON_EXTRACT(Properties, '$.RefreshSchedule') as refresh_schedule,
JSON_EXTRACT(Properties, '$.Name') as name,
- JSON_EXTRACT(Properties, '$.Source') as source,
- JSON_EXTRACT(Properties, '$.Destinations') as destinations,
- JSON_EXTRACT(Properties, '$.ChannelArn') as channel_arn,
+ JSON_EXTRACT(Properties, '$.Status') as status,
+ JSON_EXTRACT(Properties, '$.TerminationProtectionEnabled') as termination_protection_enabled,
+ JSON_EXTRACT(Properties, '$.Type') as type,
+ JSON_EXTRACT(Properties, '$.UpdatedTimestamp') as updated_timestamp,
JSON_EXTRACT(Properties, '$.Tags') as tags
- FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::CloudTrail::Channel'
- AND data__Identifier = ''
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::CloudTrail::Dashboard'
+ AND data__Identifier = ''
AND region = 'us-east-1'
fallback:
predicate: sqlDialect == "sqlite3"
ddl: |-
SELECT
detail.region,
+ JSON_EXTRACT(detail.Properties, '$.Widgets') as widgets,
+ JSON_EXTRACT(detail.Properties, '$.CreatedTimestamp') as created_timestamp,
+ JSON_EXTRACT(detail.Properties, '$.DashboardArn') as dashboard_arn,
+ JSON_EXTRACT(detail.Properties, '$.RefreshSchedule') as refresh_schedule,
JSON_EXTRACT(detail.Properties, '$.Name') as name,
- JSON_EXTRACT(detail.Properties, '$.Source') as source,
- JSON_EXTRACT(detail.Properties, '$.Destinations') as destinations,
- JSON_EXTRACT(detail.Properties, '$.ChannelArn') as channel_arn,
+ JSON_EXTRACT(detail.Properties, '$.Status') as status,
+ JSON_EXTRACT(detail.Properties, '$.TerminationProtectionEnabled') as termination_protection_enabled,
+ JSON_EXTRACT(detail.Properties, '$.Type') as type,
+ JSON_EXTRACT(detail.Properties, '$.UpdatedTimestamp') as updated_timestamp,
JSON_EXTRACT(detail.Properties, '$.Tags') as tags
FROM aws.cloud_control.resources listing
LEFT OUTER JOIN aws.cloud_control.resource detail
ON detail.data__Identifier = listing.Identifier
AND detail.region = listing.region
- WHERE listing.data__TypeName = 'AWS::CloudTrail::Channel'
- AND detail.data__TypeName = 'AWS::CloudTrail::Channel'
+ WHERE listing.data__TypeName = 'AWS::CloudTrail::Dashboard'
+ AND detail.data__TypeName = 'AWS::CloudTrail::Dashboard'
AND listing.region = 'us-east-1'
fallback:
predicate: sqlDialect == "postgres" && requiredParams == [ data__Identifier ]
@@ -1312,38 +1760,48 @@ components:
SELECT
region,
data__Identifier,
+ json_extract_path_text(Properties, 'Widgets') as widgets,
+ json_extract_path_text(Properties, 'CreatedTimestamp') as created_timestamp,
+ json_extract_path_text(Properties, 'DashboardArn') as dashboard_arn,
+ json_extract_path_text(Properties, 'RefreshSchedule') as refresh_schedule,
json_extract_path_text(Properties, 'Name') as name,
- json_extract_path_text(Properties, 'Source') as source,
- json_extract_path_text(Properties, 'Destinations') as destinations,
- json_extract_path_text(Properties, 'ChannelArn') as channel_arn,
+ json_extract_path_text(Properties, 'Status') as status,
+ json_extract_path_text(Properties, 'TerminationProtectionEnabled') as termination_protection_enabled,
+ json_extract_path_text(Properties, 'Type') as type,
+ json_extract_path_text(Properties, 'UpdatedTimestamp') as updated_timestamp,
json_extract_path_text(Properties, 'Tags') as tags
- FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::CloudTrail::Channel'
- AND data__Identifier = ''
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::CloudTrail::Dashboard'
+ AND data__Identifier = ''
AND region = 'us-east-1'
fallback:
predicate: sqlDialect == "postgres"
ddl: |-
SELECT
detail.region,
+ json_extract_path_text(detail.Properties, 'Widgets') as widgets,
+ json_extract_path_text(detail.Properties, 'CreatedTimestamp') as created_timestamp,
+ json_extract_path_text(detail.Properties, 'DashboardArn') as dashboard_arn,
+ json_extract_path_text(detail.Properties, 'RefreshSchedule') as refresh_schedule,
json_extract_path_text(detail.Properties, 'Name') as name,
- json_extract_path_text(detail.Properties, 'Source') as source,
- json_extract_path_text(detail.Properties, 'Destinations') as destinations,
- json_extract_path_text(detail.Properties, 'ChannelArn') as channel_arn,
+ json_extract_path_text(detail.Properties, 'Status') as status,
+ json_extract_path_text(detail.Properties, 'TerminationProtectionEnabled') as termination_protection_enabled,
+ json_extract_path_text(detail.Properties, 'Type') as type,
+ json_extract_path_text(detail.Properties, 'UpdatedTimestamp') as updated_timestamp,
json_extract_path_text(detail.Properties, 'Tags') as tags
FROM aws.cloud_control.resources listing
LEFT OUTER JOIN aws.cloud_control.resource detail
ON detail.data__Identifier = listing.Identifier
AND detail.region = listing.region
- WHERE listing.data__TypeName = 'AWS::CloudTrail::Channel'
- AND detail.data__TypeName = 'AWS::CloudTrail::Channel'
+ WHERE listing.data__TypeName = 'AWS::CloudTrail::Dashboard'
+ AND detail.data__TypeName = 'AWS::CloudTrail::Dashboard'
AND listing.region = 'us-east-1'
- channels_list_only:
- name: channels_list_only
- id: aws.cloudtrail.channels_list_only
- x-cfn-schema-name: Channel
- x-cfn-type-name: AWS::CloudTrail::Channel
+ dashboards_list_only:
+ name: dashboards_list_only
+ id: aws.cloudtrail.dashboards_list_only
+ x-cfn-schema-name: Dashboard
+ x-cfn-type-name: AWS::CloudTrail::Dashboard
x-identifiers:
- - ChannelArn
+ - DashboardArn
x-type: cloud_control_view
methods: {}
sqlVerbs:
@@ -1357,22 +1815,22 @@ components:
ddl: |-
SELECT
region,
- JSON_EXTRACT(Properties, '$.ChannelArn') as channel_arn
- FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::CloudTrail::Channel'
+ JSON_EXTRACT(Properties, '$.DashboardArn') as dashboard_arn
+ FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::CloudTrail::Dashboard'
AND region = 'us-east-1'
fallback:
predicate: sqlDialect == "postgres"
ddl: |-
SELECT
region,
- json_extract_path_text(Properties, 'ChannelArn') as channel_arn
- FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::CloudTrail::Channel'
+ json_extract_path_text(Properties, 'DashboardArn') as dashboard_arn
+ FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::CloudTrail::Dashboard'
AND region = 'us-east-1'
- channel_tags:
- name: channel_tags
- id: aws.cloudtrail.channel_tags
- x-cfn-schema-name: Channel
- x-cfn-type-name: AWS::CloudTrail::Channel
+ dashboard_tags:
+ name: dashboard_tags
+ id: aws.cloudtrail.dashboard_tags
+ x-cfn-schema-name: Dashboard
+ x-cfn-type-name: AWS::CloudTrail::Dashboard
x-type: cloud_control_view
methods: {}
sqlVerbs:
@@ -1388,17 +1846,22 @@ components:
detail.region,
JSON_EXTRACT(json_each.value, '$.Key') as tag_key,
JSON_EXTRACT(json_each.value, '$.Value') as tag_value,
+ JSON_EXTRACT(detail.Properties, '$.Widgets') as widgets,
+ JSON_EXTRACT(detail.Properties, '$.CreatedTimestamp') as created_timestamp,
+ JSON_EXTRACT(detail.Properties, '$.DashboardArn') as dashboard_arn,
+ JSON_EXTRACT(detail.Properties, '$.RefreshSchedule') as refresh_schedule,
JSON_EXTRACT(detail.Properties, '$.Name') as name,
- JSON_EXTRACT(detail.Properties, '$.Source') as source,
- JSON_EXTRACT(detail.Properties, '$.Destinations') as destinations,
- JSON_EXTRACT(detail.Properties, '$.ChannelArn') as channel_arn
+ JSON_EXTRACT(detail.Properties, '$.Status') as status,
+ JSON_EXTRACT(detail.Properties, '$.TerminationProtectionEnabled') as termination_protection_enabled,
+ JSON_EXTRACT(detail.Properties, '$.Type') as type,
+ JSON_EXTRACT(detail.Properties, '$.UpdatedTimestamp') as updated_timestamp
FROM aws.cloud_control.resources listing
LEFT OUTER JOIN aws.cloud_control.resource detail
ON detail.data__Identifier = listing.Identifier
AND detail.region = listing.region
,json_each(JSON_EXTRACT(detail.Properties, '$.Tags'))
- WHERE listing.data__TypeName = 'AWS::CloudTrail::Channel'
- AND detail.data__TypeName = 'AWS::CloudTrail::Channel'
+ WHERE listing.data__TypeName = 'AWS::CloudTrail::Dashboard'
+ AND detail.data__TypeName = 'AWS::CloudTrail::Dashboard'
AND listing.region = 'us-east-1'
fallback:
predicate: sqlDialect == "postgres"
@@ -1407,17 +1870,22 @@ components:
detail.region,
json_extract_path_text(json_each.value, 'Key') as tag_key,
json_extract_path_text(json_each.value, 'Value') as tag_value,
+ json_extract_path_text(detail.Properties, 'Widgets') as widgets,
+ json_extract_path_text(detail.Properties, 'CreatedTimestamp') as created_timestamp,
+ json_extract_path_text(detail.Properties, 'DashboardArn') as dashboard_arn,
+ json_extract_path_text(detail.Properties, 'RefreshSchedule') as refresh_schedule,
json_extract_path_text(detail.Properties, 'Name') as name,
- json_extract_path_text(detail.Properties, 'Source') as source,
- json_extract_path_text(detail.Properties, 'Destinations') as destinations,
- json_extract_path_text(detail.Properties, 'ChannelArn') as channel_arn
+ json_extract_path_text(detail.Properties, 'Status') as status,
+ json_extract_path_text(detail.Properties, 'TerminationProtectionEnabled') as termination_protection_enabled,
+ json_extract_path_text(detail.Properties, 'Type') as type,
+ json_extract_path_text(detail.Properties, 'UpdatedTimestamp') as updated_timestamp
FROM aws.cloud_control.resources listing
LEFT OUTER JOIN aws.cloud_control.resource detail
ON detail.data__Identifier = listing.Identifier
AND detail.region = listing.region
,json_array_elements_text(json_extract_path_text(detail.Properties, 'Tags'))
- WHERE listing.data__TypeName = 'AWS::CloudTrail::Channel'
- AND detail.data__TypeName = 'AWS::CloudTrail::Channel'
+ WHERE listing.data__TypeName = 'AWS::CloudTrail::Dashboard'
+ AND detail.data__TypeName = 'AWS::CloudTrail::Dashboard'
AND listing.region = 'us-east-1'
event_data_stores:
name: event_data_stores
@@ -1840,24 +2308,24 @@ components:
SELECT
region,
data__Identifier,
- JSON_EXTRACT(Properties, '$.CloudWatchLogsLogGroupArn') as cloud_watch_logs_log_group_arn,
- JSON_EXTRACT(Properties, '$.CloudWatchLogsRoleArn') as cloud_watch_logs_role_arn,
- JSON_EXTRACT(Properties, '$.EnableLogFileValidation') as enable_log_file_validation,
- JSON_EXTRACT(Properties, '$.AdvancedEventSelectors') as advanced_event_selectors,
- JSON_EXTRACT(Properties, '$.EventSelectors') as event_selectors,
JSON_EXTRACT(Properties, '$.IncludeGlobalServiceEvents') as include_global_service_events,
- JSON_EXTRACT(Properties, '$.IsLogging') as is_logging,
- JSON_EXTRACT(Properties, '$.IsMultiRegionTrail') as is_multi_region_trail,
- JSON_EXTRACT(Properties, '$.IsOrganizationTrail') as is_organization_trail,
+ JSON_EXTRACT(Properties, '$.EventSelectors') as event_selectors,
JSON_EXTRACT(Properties, '$.KMSKeyId') as kms_key_id,
- JSON_EXTRACT(Properties, '$.S3BucketName') as s3_bucket_name,
+ JSON_EXTRACT(Properties, '$.CloudWatchLogsRoleArn') as cloud_watch_logs_role_arn,
JSON_EXTRACT(Properties, '$.S3KeyPrefix') as s3_key_prefix,
- JSON_EXTRACT(Properties, '$.SnsTopicName') as sns_topic_name,
- JSON_EXTRACT(Properties, '$.Tags') as tags,
+ JSON_EXTRACT(Properties, '$.AdvancedEventSelectors') as advanced_event_selectors,
JSON_EXTRACT(Properties, '$.TrailName') as trail_name,
- JSON_EXTRACT(Properties, '$.Arn') as arn,
+ JSON_EXTRACT(Properties, '$.IsOrganizationTrail') as is_organization_trail,
+ JSON_EXTRACT(Properties, '$.InsightSelectors') as insight_selectors,
+ JSON_EXTRACT(Properties, '$.CloudWatchLogsLogGroupArn') as cloud_watch_logs_log_group_arn,
+ JSON_EXTRACT(Properties, '$.SnsTopicName') as sns_topic_name,
+ JSON_EXTRACT(Properties, '$.IsMultiRegionTrail') as is_multi_region_trail,
+ JSON_EXTRACT(Properties, '$.S3BucketName') as s3_bucket_name,
JSON_EXTRACT(Properties, '$.SnsTopicArn') as sns_topic_arn,
- JSON_EXTRACT(Properties, '$.InsightSelectors') as insight_selectors
+ JSON_EXTRACT(Properties, '$.EnableLogFileValidation') as enable_log_file_validation,
+ JSON_EXTRACT(Properties, '$.Arn') as arn,
+ JSON_EXTRACT(Properties, '$.Tags') as tags,
+ JSON_EXTRACT(Properties, '$.IsLogging') as is_logging
FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::CloudTrail::Trail'
AND data__Identifier = ''
AND region = 'us-east-1'
@@ -1866,24 +2334,24 @@ components:
ddl: |-
SELECT
detail.region,
- JSON_EXTRACT(detail.Properties, '$.CloudWatchLogsLogGroupArn') as cloud_watch_logs_log_group_arn,
- JSON_EXTRACT(detail.Properties, '$.CloudWatchLogsRoleArn') as cloud_watch_logs_role_arn,
- JSON_EXTRACT(detail.Properties, '$.EnableLogFileValidation') as enable_log_file_validation,
- JSON_EXTRACT(detail.Properties, '$.AdvancedEventSelectors') as advanced_event_selectors,
- JSON_EXTRACT(detail.Properties, '$.EventSelectors') as event_selectors,
JSON_EXTRACT(detail.Properties, '$.IncludeGlobalServiceEvents') as include_global_service_events,
- JSON_EXTRACT(detail.Properties, '$.IsLogging') as is_logging,
- JSON_EXTRACT(detail.Properties, '$.IsMultiRegionTrail') as is_multi_region_trail,
- JSON_EXTRACT(detail.Properties, '$.IsOrganizationTrail') as is_organization_trail,
+ JSON_EXTRACT(detail.Properties, '$.EventSelectors') as event_selectors,
JSON_EXTRACT(detail.Properties, '$.KMSKeyId') as kms_key_id,
- JSON_EXTRACT(detail.Properties, '$.S3BucketName') as s3_bucket_name,
+ JSON_EXTRACT(detail.Properties, '$.CloudWatchLogsRoleArn') as cloud_watch_logs_role_arn,
JSON_EXTRACT(detail.Properties, '$.S3KeyPrefix') as s3_key_prefix,
- JSON_EXTRACT(detail.Properties, '$.SnsTopicName') as sns_topic_name,
- JSON_EXTRACT(detail.Properties, '$.Tags') as tags,
+ JSON_EXTRACT(detail.Properties, '$.AdvancedEventSelectors') as advanced_event_selectors,
JSON_EXTRACT(detail.Properties, '$.TrailName') as trail_name,
- JSON_EXTRACT(detail.Properties, '$.Arn') as arn,
+ JSON_EXTRACT(detail.Properties, '$.IsOrganizationTrail') as is_organization_trail,
+ JSON_EXTRACT(detail.Properties, '$.InsightSelectors') as insight_selectors,
+ JSON_EXTRACT(detail.Properties, '$.CloudWatchLogsLogGroupArn') as cloud_watch_logs_log_group_arn,
+ JSON_EXTRACT(detail.Properties, '$.SnsTopicName') as sns_topic_name,
+ JSON_EXTRACT(detail.Properties, '$.IsMultiRegionTrail') as is_multi_region_trail,
+ JSON_EXTRACT(detail.Properties, '$.S3BucketName') as s3_bucket_name,
JSON_EXTRACT(detail.Properties, '$.SnsTopicArn') as sns_topic_arn,
- JSON_EXTRACT(detail.Properties, '$.InsightSelectors') as insight_selectors
+ JSON_EXTRACT(detail.Properties, '$.EnableLogFileValidation') as enable_log_file_validation,
+ JSON_EXTRACT(detail.Properties, '$.Arn') as arn,
+ JSON_EXTRACT(detail.Properties, '$.Tags') as tags,
+ JSON_EXTRACT(detail.Properties, '$.IsLogging') as is_logging
FROM aws.cloud_control.resources listing
LEFT OUTER JOIN aws.cloud_control.resource detail
ON detail.data__Identifier = listing.Identifier
@@ -1897,24 +2365,24 @@ components:
SELECT
region,
data__Identifier,
- json_extract_path_text(Properties, 'CloudWatchLogsLogGroupArn') as cloud_watch_logs_log_group_arn,
- json_extract_path_text(Properties, 'CloudWatchLogsRoleArn') as cloud_watch_logs_role_arn,
- json_extract_path_text(Properties, 'EnableLogFileValidation') as enable_log_file_validation,
- json_extract_path_text(Properties, 'AdvancedEventSelectors') as advanced_event_selectors,
- json_extract_path_text(Properties, 'EventSelectors') as event_selectors,
json_extract_path_text(Properties, 'IncludeGlobalServiceEvents') as include_global_service_events,
- json_extract_path_text(Properties, 'IsLogging') as is_logging,
- json_extract_path_text(Properties, 'IsMultiRegionTrail') as is_multi_region_trail,
- json_extract_path_text(Properties, 'IsOrganizationTrail') as is_organization_trail,
+ json_extract_path_text(Properties, 'EventSelectors') as event_selectors,
json_extract_path_text(Properties, 'KMSKeyId') as kms_key_id,
- json_extract_path_text(Properties, 'S3BucketName') as s3_bucket_name,
+ json_extract_path_text(Properties, 'CloudWatchLogsRoleArn') as cloud_watch_logs_role_arn,
json_extract_path_text(Properties, 'S3KeyPrefix') as s3_key_prefix,
- json_extract_path_text(Properties, 'SnsTopicName') as sns_topic_name,
- json_extract_path_text(Properties, 'Tags') as tags,
+ json_extract_path_text(Properties, 'AdvancedEventSelectors') as advanced_event_selectors,
json_extract_path_text(Properties, 'TrailName') as trail_name,
- json_extract_path_text(Properties, 'Arn') as arn,
+ json_extract_path_text(Properties, 'IsOrganizationTrail') as is_organization_trail,
+ json_extract_path_text(Properties, 'InsightSelectors') as insight_selectors,
+ json_extract_path_text(Properties, 'CloudWatchLogsLogGroupArn') as cloud_watch_logs_log_group_arn,
+ json_extract_path_text(Properties, 'SnsTopicName') as sns_topic_name,
+ json_extract_path_text(Properties, 'IsMultiRegionTrail') as is_multi_region_trail,
+ json_extract_path_text(Properties, 'S3BucketName') as s3_bucket_name,
json_extract_path_text(Properties, 'SnsTopicArn') as sns_topic_arn,
- json_extract_path_text(Properties, 'InsightSelectors') as insight_selectors
+ json_extract_path_text(Properties, 'EnableLogFileValidation') as enable_log_file_validation,
+ json_extract_path_text(Properties, 'Arn') as arn,
+ json_extract_path_text(Properties, 'Tags') as tags,
+ json_extract_path_text(Properties, 'IsLogging') as is_logging
FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::CloudTrail::Trail'
AND data__Identifier = ''
AND region = 'us-east-1'
@@ -1923,24 +2391,24 @@ components:
ddl: |-
SELECT
detail.region,
- json_extract_path_text(detail.Properties, 'CloudWatchLogsLogGroupArn') as cloud_watch_logs_log_group_arn,
- json_extract_path_text(detail.Properties, 'CloudWatchLogsRoleArn') as cloud_watch_logs_role_arn,
- json_extract_path_text(detail.Properties, 'EnableLogFileValidation') as enable_log_file_validation,
- json_extract_path_text(detail.Properties, 'AdvancedEventSelectors') as advanced_event_selectors,
- json_extract_path_text(detail.Properties, 'EventSelectors') as event_selectors,
json_extract_path_text(detail.Properties, 'IncludeGlobalServiceEvents') as include_global_service_events,
- json_extract_path_text(detail.Properties, 'IsLogging') as is_logging,
- json_extract_path_text(detail.Properties, 'IsMultiRegionTrail') as is_multi_region_trail,
- json_extract_path_text(detail.Properties, 'IsOrganizationTrail') as is_organization_trail,
+ json_extract_path_text(detail.Properties, 'EventSelectors') as event_selectors,
json_extract_path_text(detail.Properties, 'KMSKeyId') as kms_key_id,
- json_extract_path_text(detail.Properties, 'S3BucketName') as s3_bucket_name,
+ json_extract_path_text(detail.Properties, 'CloudWatchLogsRoleArn') as cloud_watch_logs_role_arn,
json_extract_path_text(detail.Properties, 'S3KeyPrefix') as s3_key_prefix,
- json_extract_path_text(detail.Properties, 'SnsTopicName') as sns_topic_name,
- json_extract_path_text(detail.Properties, 'Tags') as tags,
+ json_extract_path_text(detail.Properties, 'AdvancedEventSelectors') as advanced_event_selectors,
json_extract_path_text(detail.Properties, 'TrailName') as trail_name,
- json_extract_path_text(detail.Properties, 'Arn') as arn,
+ json_extract_path_text(detail.Properties, 'IsOrganizationTrail') as is_organization_trail,
+ json_extract_path_text(detail.Properties, 'InsightSelectors') as insight_selectors,
+ json_extract_path_text(detail.Properties, 'CloudWatchLogsLogGroupArn') as cloud_watch_logs_log_group_arn,
+ json_extract_path_text(detail.Properties, 'SnsTopicName') as sns_topic_name,
+ json_extract_path_text(detail.Properties, 'IsMultiRegionTrail') as is_multi_region_trail,
+ json_extract_path_text(detail.Properties, 'S3BucketName') as s3_bucket_name,
json_extract_path_text(detail.Properties, 'SnsTopicArn') as sns_topic_arn,
- json_extract_path_text(detail.Properties, 'InsightSelectors') as insight_selectors
+ json_extract_path_text(detail.Properties, 'EnableLogFileValidation') as enable_log_file_validation,
+ json_extract_path_text(detail.Properties, 'Arn') as arn,
+ json_extract_path_text(detail.Properties, 'Tags') as tags,
+ json_extract_path_text(detail.Properties, 'IsLogging') as is_logging
FROM aws.cloud_control.resources listing
LEFT OUTER JOIN aws.cloud_control.resource detail
ON detail.data__Identifier = listing.Identifier
@@ -1999,23 +2467,23 @@ components:
detail.region,
JSON_EXTRACT(json_each.value, '$.Key') as tag_key,
JSON_EXTRACT(json_each.value, '$.Value') as tag_value,
- JSON_EXTRACT(detail.Properties, '$.CloudWatchLogsLogGroupArn') as cloud_watch_logs_log_group_arn,
- JSON_EXTRACT(detail.Properties, '$.CloudWatchLogsRoleArn') as cloud_watch_logs_role_arn,
- JSON_EXTRACT(detail.Properties, '$.EnableLogFileValidation') as enable_log_file_validation,
- JSON_EXTRACT(detail.Properties, '$.AdvancedEventSelectors') as advanced_event_selectors,
- JSON_EXTRACT(detail.Properties, '$.EventSelectors') as event_selectors,
JSON_EXTRACT(detail.Properties, '$.IncludeGlobalServiceEvents') as include_global_service_events,
- JSON_EXTRACT(detail.Properties, '$.IsLogging') as is_logging,
- JSON_EXTRACT(detail.Properties, '$.IsMultiRegionTrail') as is_multi_region_trail,
- JSON_EXTRACT(detail.Properties, '$.IsOrganizationTrail') as is_organization_trail,
+ JSON_EXTRACT(detail.Properties, '$.EventSelectors') as event_selectors,
JSON_EXTRACT(detail.Properties, '$.KMSKeyId') as kms_key_id,
- JSON_EXTRACT(detail.Properties, '$.S3BucketName') as s3_bucket_name,
+ JSON_EXTRACT(detail.Properties, '$.CloudWatchLogsRoleArn') as cloud_watch_logs_role_arn,
JSON_EXTRACT(detail.Properties, '$.S3KeyPrefix') as s3_key_prefix,
- JSON_EXTRACT(detail.Properties, '$.SnsTopicName') as sns_topic_name,
+ JSON_EXTRACT(detail.Properties, '$.AdvancedEventSelectors') as advanced_event_selectors,
JSON_EXTRACT(detail.Properties, '$.TrailName') as trail_name,
- JSON_EXTRACT(detail.Properties, '$.Arn') as arn,
+ JSON_EXTRACT(detail.Properties, '$.IsOrganizationTrail') as is_organization_trail,
+ JSON_EXTRACT(detail.Properties, '$.InsightSelectors') as insight_selectors,
+ JSON_EXTRACT(detail.Properties, '$.CloudWatchLogsLogGroupArn') as cloud_watch_logs_log_group_arn,
+ JSON_EXTRACT(detail.Properties, '$.SnsTopicName') as sns_topic_name,
+ JSON_EXTRACT(detail.Properties, '$.IsMultiRegionTrail') as is_multi_region_trail,
+ JSON_EXTRACT(detail.Properties, '$.S3BucketName') as s3_bucket_name,
JSON_EXTRACT(detail.Properties, '$.SnsTopicArn') as sns_topic_arn,
- JSON_EXTRACT(detail.Properties, '$.InsightSelectors') as insight_selectors
+ JSON_EXTRACT(detail.Properties, '$.EnableLogFileValidation') as enable_log_file_validation,
+ JSON_EXTRACT(detail.Properties, '$.Arn') as arn,
+ JSON_EXTRACT(detail.Properties, '$.IsLogging') as is_logging
FROM aws.cloud_control.resources listing
LEFT OUTER JOIN aws.cloud_control.resource detail
ON detail.data__Identifier = listing.Identifier
@@ -2031,23 +2499,23 @@ components:
detail.region,
json_extract_path_text(json_each.value, 'Key') as tag_key,
json_extract_path_text(json_each.value, 'Value') as tag_value,
- json_extract_path_text(detail.Properties, 'CloudWatchLogsLogGroupArn') as cloud_watch_logs_log_group_arn,
- json_extract_path_text(detail.Properties, 'CloudWatchLogsRoleArn') as cloud_watch_logs_role_arn,
- json_extract_path_text(detail.Properties, 'EnableLogFileValidation') as enable_log_file_validation,
- json_extract_path_text(detail.Properties, 'AdvancedEventSelectors') as advanced_event_selectors,
- json_extract_path_text(detail.Properties, 'EventSelectors') as event_selectors,
json_extract_path_text(detail.Properties, 'IncludeGlobalServiceEvents') as include_global_service_events,
- json_extract_path_text(detail.Properties, 'IsLogging') as is_logging,
- json_extract_path_text(detail.Properties, 'IsMultiRegionTrail') as is_multi_region_trail,
- json_extract_path_text(detail.Properties, 'IsOrganizationTrail') as is_organization_trail,
+ json_extract_path_text(detail.Properties, 'EventSelectors') as event_selectors,
json_extract_path_text(detail.Properties, 'KMSKeyId') as kms_key_id,
- json_extract_path_text(detail.Properties, 'S3BucketName') as s3_bucket_name,
+ json_extract_path_text(detail.Properties, 'CloudWatchLogsRoleArn') as cloud_watch_logs_role_arn,
json_extract_path_text(detail.Properties, 'S3KeyPrefix') as s3_key_prefix,
- json_extract_path_text(detail.Properties, 'SnsTopicName') as sns_topic_name,
+ json_extract_path_text(detail.Properties, 'AdvancedEventSelectors') as advanced_event_selectors,
json_extract_path_text(detail.Properties, 'TrailName') as trail_name,
- json_extract_path_text(detail.Properties, 'Arn') as arn,
+ json_extract_path_text(detail.Properties, 'IsOrganizationTrail') as is_organization_trail,
+ json_extract_path_text(detail.Properties, 'InsightSelectors') as insight_selectors,
+ json_extract_path_text(detail.Properties, 'CloudWatchLogsLogGroupArn') as cloud_watch_logs_log_group_arn,
+ json_extract_path_text(detail.Properties, 'SnsTopicName') as sns_topic_name,
+ json_extract_path_text(detail.Properties, 'IsMultiRegionTrail') as is_multi_region_trail,
+ json_extract_path_text(detail.Properties, 'S3BucketName') as s3_bucket_name,
json_extract_path_text(detail.Properties, 'SnsTopicArn') as sns_topic_arn,
- json_extract_path_text(detail.Properties, 'InsightSelectors') as insight_selectors
+ json_extract_path_text(detail.Properties, 'EnableLogFileValidation') as enable_log_file_validation,
+ json_extract_path_text(detail.Properties, 'Arn') as arn,
+ json_extract_path_text(detail.Properties, 'IsLogging') as is_logging
FROM aws.cloud_control.resources listing
LEFT OUTER JOIN aws.cloud_control.resource detail
ON detail.data__Identifier = listing.Identifier
@@ -2241,6 +2709,48 @@ paths:
schema:
$ref: '#/components/x-cloud-control-schemas/ProgressEvent'
description: Success
+ /?Action=CreateResource&Version=2021-09-30&__Dashboard&__detailTransformed=true:
+ parameters:
+ - $ref: '#/components/parameters/X-Amz-Content-Sha256'
+ - $ref: '#/components/parameters/X-Amz-Date'
+ - $ref: '#/components/parameters/X-Amz-Algorithm'
+ - $ref: '#/components/parameters/X-Amz-Credential'
+ - $ref: '#/components/parameters/X-Amz-Security-Token'
+ - $ref: '#/components/parameters/X-Amz-Signature'
+ - $ref: '#/components/parameters/X-Amz-SignedHeaders'
+ post:
+ operationId: CreateDashboard
+ parameters:
+ - description: Action Header
+ in: header
+ name: X-Amz-Target
+ required: false
+ schema:
+ default: CloudApiService.CreateResource
+ enum:
+ - CloudApiService.CreateResource
+ type: string
+ - in: header
+ name: Content-Type
+ required: false
+ schema:
+ default: application/x-amz-json-1.0
+ enum:
+ - application/x-amz-json-1.0
+ type: string
+ requestBody:
+ content:
+ application/x-amz-json-1.0:
+ schema:
+ $ref: '#/components/schemas/CreateDashboardRequest'
+ required: true
+ responses:
+ '200':
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/x-cloud-control-schemas/ProgressEvent'
+ description: Success
/?Action=CreateResource&Version=2021-09-30&__EventDataStore&__detailTransformed=true:
parameters:
- $ref: '#/components/parameters/X-Amz-Content-Sha256'
diff --git a/providers/src/aws/v00.00.00000/services/cloudwatch.yaml b/providers/src/aws/v00.00.00000/services/cloudwatch.yaml
index 19138a03..998c2b4f 100644
--- a/providers/src/aws/v00.00.00000/services/cloudwatch.yaml
+++ b/providers/src/aws/v00.00.00000/services/cloudwatch.yaml
@@ -905,7 +905,7 @@ components:
Value:
description: String which you can use to describe or define the tag.
type: string
- minLength: 1
+ minLength: 0
maxLength: 256
required:
- Key
@@ -944,7 +944,7 @@ components:
description: |-
The period, in seconds, over which the statistic is applied. This is required for an alarm based on a metric. Valid values are 10, 30, 60, and any multiple of 60.
For an alarm based on a math expression, you can't specify ``Period``, and instead you use the ``Metrics`` parameter.
- *Minimum:* 10
+ *Minimum:* 10
type: integer
EvaluationPeriods:
description: |-
@@ -1020,7 +1020,9 @@ components:
description: The value to compare with the specified statistic.
type: number
Tags:
- description: ''
+ description: |-
+ A list of key-value pairs to associate with the alarm. You can associate as many as 50 tags with an alarm. To be able to associate tags with the alarm when you create the alarm, you must have the ``cloudwatch:TagResource`` permission.
+ 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.
type: array
maxItems: 50
uniqueItems: true
@@ -1050,6 +1052,10 @@ components:
tagUpdatable: true
cloudFormationSystemTags: true
tagProperty: /properties/Tags
+ permissions:
+ - cloudwatch:TagResource
+ - cloudwatch:UntagResource
+ - cloudwatch:ListTagsForResource
x-required-permissions:
create:
- cloudwatch:PutMetricAlarm
@@ -1165,6 +1171,10 @@ components:
tagUpdatable: true
cloudFormationSystemTags: true
tagProperty: /properties/Tags
+ permissions:
+ - cloudwatch:TagResource
+ - cloudwatch:UntagResource
+ - cloudwatch:ListTagsForResource
x-required-permissions:
create:
- cloudwatch:DescribeAlarms
@@ -1183,6 +1193,44 @@ components:
- cloudwatch:DeleteAlarms
list:
- cloudwatch:DescribeAlarms
+ Dashboard:
+ type: object
+ properties:
+ DashboardName:
+ type: string
+ description: The name of the dashboard. The name must be between 1 and 255 characters. If you do not specify a name, one will be generated automatically.
+ DashboardBody:
+ type: string
+ description: The detailed information about the dashboard in JSON format, including the widgets to include and their location on the dashboard
+ required:
+ - DashboardBody
+ x-stackql-resource-name: dashboard
+ description: Resource Type definition for AWS::CloudWatch::Dashboard
+ x-type-name: AWS::CloudWatch::Dashboard
+ x-stackql-primary-identifier:
+ - DashboardName
+ x-create-only-properties:
+ - DashboardName
+ x-required-properties:
+ - DashboardBody
+ x-tagging:
+ taggable: false
+ tagOnCreate: false
+ tagUpdatable: false
+ cloudFormationSystemTags: false
+ x-required-permissions:
+ create:
+ - cloudwatch:PutDashboard
+ - cloudwatch:GetDashboard
+ read:
+ - cloudwatch:GetDashboard
+ update:
+ - cloudwatch:PutDashboard
+ delete:
+ - cloudwatch:DeleteDashboards
+ - cloudwatch:GetDashboard
+ list:
+ - cloudwatch:ListDashboards
MetricStreamFilter:
description: This structure defines the metrics that will be streamed.
type: object
@@ -1319,10 +1367,6 @@ components:
IncludeLinkedAccountsMetrics:
description: If you are creating a metric stream in a monitoring account, specify true to include metrics from source accounts that are linked to this monitoring account, in the metric stream. The default is false.
type: boolean
- required:
- - FirehoseArn
- - RoleArn
- - OutputFormat
x-stackql-resource-name: metric_stream
description: Resource Type definition for Metric Stream
x-type-name: AWS::CloudWatch::MetricStream
@@ -1337,10 +1381,6 @@ components:
- CreationDate
- LastUpdateDate
- State
- x-required-properties:
- - FirehoseArn
- - RoleArn
- - OutputFormat
x-taggable: true
x-required-permissions:
create:
@@ -1405,7 +1445,7 @@ components:
description: |-
The period, in seconds, over which the statistic is applied. This is required for an alarm based on a metric. Valid values are 10, 30, 60, and any multiple of 60.
For an alarm based on a math expression, you can't specify ``Period``, and instead you use the ``Metrics`` parameter.
- *Minimum:* 10
+ *Minimum:* 10
type: integer
EvaluationPeriods:
description: |-
@@ -1481,7 +1521,9 @@ components:
description: The value to compare with the specified statistic.
type: number
Tags:
- description: ''
+ description: |-
+ A list of key-value pairs to associate with the alarm. You can associate as many as 50 tags with an alarm. To be able to associate tags with the alarm when you create the alarm, you must have the ``cloudwatch:TagResource`` permission.
+ 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.
type: array
maxItems: 50
uniqueItems: true
@@ -1578,6 +1620,29 @@ components:
x-title: CreateCompositeAlarmRequest
type: object
required: []
+ CreateDashboardRequest:
+ properties:
+ ClientToken:
+ type: string
+ RoleArn:
+ type: string
+ TypeName:
+ type: string
+ TypeVersionId:
+ type: string
+ DesiredState:
+ type: object
+ properties:
+ DashboardName:
+ type: string
+ description: The name of the dashboard. The name must be between 1 and 255 characters. If you do not specify a name, one will be generated automatically.
+ DashboardBody:
+ type: string
+ description: The detailed information about the dashboard in JSON format, including the widgets to include and their location on the dashboard
+ x-stackQL-stringOnly: true
+ x-title: CreateDashboardRequest
+ type: object
+ required: []
CreateMetricStreamRequest:
properties:
ClientToken:
@@ -2340,6 +2405,144 @@ components:
WHERE listing.data__TypeName = 'AWS::CloudWatch::CompositeAlarm'
AND detail.data__TypeName = 'AWS::CloudWatch::CompositeAlarm'
AND listing.region = 'us-east-1'
+ dashboards:
+ name: dashboards
+ id: aws.cloudwatch.dashboards
+ x-cfn-schema-name: Dashboard
+ x-cfn-type-name: AWS::CloudWatch::Dashboard
+ x-identifiers:
+ - DashboardName
+ x-type: cloud_control
+ methods:
+ create_resource:
+ config:
+ requestBodyTranslate:
+ algorithm: naive_DesiredState
+ operation:
+ $ref: '#/paths/~1?Action=CreateResource&Version=2021-09-30&__Dashboard&__detailTransformed=true/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::CloudWatch::Dashboard"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ update_resource:
+ operation:
+ $ref: '#/paths/~1?Action=UpdateResource&Version=2021-09-30/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::CloudWatch::Dashboard"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ delete_resource:
+ operation:
+ $ref: '#/paths/~1?Action=DeleteResource&Version=2021-09-30/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::CloudWatch::Dashboard"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ sqlVerbs:
+ insert:
+ - $ref: '#/components/x-stackQL-resources/dashboards/methods/create_resource'
+ delete:
+ - $ref: '#/components/x-stackQL-resources/dashboards/methods/delete_resource'
+ update:
+ - $ref: '#/components/x-stackQL-resources/dashboards/methods/update_resource'
+ config:
+ views:
+ select:
+ predicate: sqlDialect == "sqlite3" && requiredParams == [ data__Identifier ]
+ ddl: |-
+ SELECT
+ region,
+ data__Identifier,
+ JSON_EXTRACT(Properties, '$.DashboardName') as dashboard_name,
+ JSON_EXTRACT(Properties, '$.DashboardBody') as dashboard_body
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::CloudWatch::Dashboard'
+ AND data__Identifier = ''
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "sqlite3"
+ ddl: |-
+ SELECT
+ detail.region,
+ JSON_EXTRACT(detail.Properties, '$.DashboardName') as dashboard_name,
+ JSON_EXTRACT(detail.Properties, '$.DashboardBody') as dashboard_body
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ WHERE listing.data__TypeName = 'AWS::CloudWatch::Dashboard'
+ AND detail.data__TypeName = 'AWS::CloudWatch::Dashboard'
+ AND listing.region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres" && requiredParams == [ data__Identifier ]
+ ddl: |-
+ SELECT
+ region,
+ data__Identifier,
+ json_extract_path_text(Properties, 'DashboardName') as dashboard_name,
+ json_extract_path_text(Properties, 'DashboardBody') as dashboard_body
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::CloudWatch::Dashboard'
+ AND data__Identifier = ''
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres"
+ ddl: |-
+ SELECT
+ detail.region,
+ json_extract_path_text(detail.Properties, 'DashboardName') as dashboard_name,
+ json_extract_path_text(detail.Properties, 'DashboardBody') as dashboard_body
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ WHERE listing.data__TypeName = 'AWS::CloudWatch::Dashboard'
+ AND detail.data__TypeName = 'AWS::CloudWatch::Dashboard'
+ AND listing.region = 'us-east-1'
+ dashboards_list_only:
+ name: dashboards_list_only
+ id: aws.cloudwatch.dashboards_list_only
+ x-cfn-schema-name: Dashboard
+ x-cfn-type-name: AWS::CloudWatch::Dashboard
+ x-identifiers:
+ - DashboardName
+ x-type: cloud_control_view
+ methods: {}
+ sqlVerbs:
+ insert: []
+ delete: []
+ update: []
+ config:
+ views:
+ select:
+ predicate: sqlDialect == "sqlite3"
+ ddl: |-
+ SELECT
+ region,
+ JSON_EXTRACT(Properties, '$.DashboardName') as dashboard_name
+ FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::CloudWatch::Dashboard'
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres"
+ ddl: |-
+ SELECT
+ region,
+ json_extract_path_text(Properties, 'DashboardName') as dashboard_name
+ FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::CloudWatch::Dashboard'
+ AND region = 'us-east-1'
metric_streams:
name: metric_streams
id: aws.cloudwatch.metric_streams
@@ -2816,6 +3019,48 @@ paths:
schema:
$ref: '#/components/x-cloud-control-schemas/ProgressEvent'
description: Success
+ /?Action=CreateResource&Version=2021-09-30&__Dashboard&__detailTransformed=true:
+ parameters:
+ - $ref: '#/components/parameters/X-Amz-Content-Sha256'
+ - $ref: '#/components/parameters/X-Amz-Date'
+ - $ref: '#/components/parameters/X-Amz-Algorithm'
+ - $ref: '#/components/parameters/X-Amz-Credential'
+ - $ref: '#/components/parameters/X-Amz-Security-Token'
+ - $ref: '#/components/parameters/X-Amz-Signature'
+ - $ref: '#/components/parameters/X-Amz-SignedHeaders'
+ post:
+ operationId: CreateDashboard
+ parameters:
+ - description: Action Header
+ in: header
+ name: X-Amz-Target
+ required: false
+ schema:
+ default: CloudApiService.CreateResource
+ enum:
+ - CloudApiService.CreateResource
+ type: string
+ - in: header
+ name: Content-Type
+ required: false
+ schema:
+ default: application/x-amz-json-1.0
+ enum:
+ - application/x-amz-json-1.0
+ type: string
+ requestBody:
+ content:
+ application/x-amz-json-1.0:
+ schema:
+ $ref: '#/components/schemas/CreateDashboardRequest'
+ required: true
+ responses:
+ '200':
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/x-cloud-control-schemas/ProgressEvent'
+ description: Success
/?Action=CreateResource&Version=2021-09-30&__MetricStream&__detailTransformed=true:
parameters:
- $ref: '#/components/parameters/X-Amz-Content-Sha256'
diff --git a/providers/src/aws/v00.00.00000/services/codeartifact.yaml b/providers/src/aws/v00.00.00000/services/codeartifact.yaml
index 961a4b92..f5e4bfcc 100644
--- a/providers/src/aws/v00.00.00000/services/codeartifact.yaml
+++ b/providers/src/aws/v00.00.00000/services/codeartifact.yaml
@@ -463,6 +463,10 @@ components:
tagUpdatable: true
cloudFormationSystemTags: true
tagProperty: /properties/Tags
+ permissions:
+ - codeartifact:ListTagsForResource
+ - codeartifact:UntagResource
+ - codeartifact:TagResource
x-required-permissions:
create:
- codeartifact:CreateDomain
@@ -470,16 +474,19 @@ components:
- codeartifact:PutDomainPermissionsPolicy
- codeartifact:GetDomainPermissionsPolicy
- codeartifact:TagResource
+ - codeartifact:ListTagsForResource
read:
- codeartifact:DescribeDomain
- codeartifact:GetDomainPermissionsPolicy
- codeartifact:ListTagsForResource
update:
+ - codeartifact:DescribeDomain
- codeartifact:PutDomainPermissionsPolicy
- codeartifact:DeleteDomainPermissionsPolicy
- codeartifact:GetDomainPermissionsPolicy
- codeartifact:TagResource
- codeartifact:UntagResource
+ - codeartifact:ListTagsForResource
delete:
- codeartifact:DeleteDomain
- codeartifact:DescribeDomain
@@ -590,6 +597,10 @@ components:
tagUpdatable: true
cloudFormationSystemTags: true
tagProperty: /properties/Tags
+ permissions:
+ - codeartifact:ListTagsForResource
+ - codeartifact:UntagResource
+ - codeartifact:TagResource
x-required-permissions:
create:
- codeartifact:CreatePackageGroup
@@ -695,20 +706,27 @@ components:
tagUpdatable: true
cloudFormationSystemTags: true
tagProperty: /properties/Tags
+ permissions:
+ - codeartifact:ListTagsForResource
+ - codeartifact:UntagResource
+ - codeartifact:TagResource
x-required-permissions:
create:
- codeartifact:CreateRepository
- codeartifact:DescribeRepository
- codeartifact:PutRepositoryPermissionsPolicy
+ - codeartifact:GetRepositoryPermissionsPolicy
- codeartifact:AssociateExternalConnection
- codeartifact:AssociateWithDownstreamRepository
- codeartifact:TagResource
+ - codeartifact:ListTagsForResource
read:
- codeartifact:DescribeRepository
- codeartifact:GetRepositoryPermissionsPolicy
- codeartifact:ListTagsForResource
update:
- codeartifact:PutRepositoryPermissionsPolicy
+ - codeartifact:GetRepositoryPermissionsPolicy
- codeartifact:DeleteRepositoryPermissionsPolicy
- codeartifact:AssociateExternalConnection
- codeartifact:DisassociateExternalConnection
@@ -717,6 +735,7 @@ components:
- codeartifact:AssociateWithDownstreamRepository
- codeartifact:TagResource
- codeartifact:UntagResource
+ - codeartifact:ListTagsForResource
delete:
- codeartifact:DeleteRepository
- codeartifact:DescribeRepository
diff --git a/providers/src/aws/v00.00.00000/services/codebuild.yaml b/providers/src/aws/v00.00.00000/services/codebuild.yaml
index 29494552..6255bb7d 100644
--- a/providers/src/aws/v00.00.00000/services/codebuild.yaml
+++ b/providers/src/aws/v00.00.00000/services/codebuild.yaml
@@ -420,6 +420,79 @@ components:
x-insertionOrder: false
items:
type: string
+ ProxyConfiguration:
+ type: object
+ additionalProperties: false
+ properties:
+ DefaultBehavior:
+ type: string
+ enum:
+ - ALLOW_ALL
+ - DENY_ALL
+ OrderedProxyRules:
+ type: array
+ x-insertionOrder: true
+ items:
+ $ref: '#/components/schemas/FleetProxyRule'
+ FleetProxyRule:
+ type: object
+ additionalProperties: false
+ properties:
+ Type:
+ type: string
+ enum:
+ - DOMAIN
+ - IP
+ Effect:
+ type: string
+ enum:
+ - ALLOW
+ - DENY
+ Entities:
+ type: array
+ x-insertionOrder: false
+ items:
+ type: string
+ ScalingConfigurationInput:
+ type: object
+ additionalProperties: false
+ properties:
+ MaxCapacity:
+ type: integer
+ minimum: 1
+ ScalingType:
+ type: string
+ enum:
+ - TARGET_TRACKING_SCALING
+ TargetTrackingScalingConfigs:
+ type: array
+ items:
+ $ref: '#/components/schemas/TargetTrackingScalingConfiguration'
+ TargetTrackingScalingConfiguration:
+ type: object
+ additionalProperties: false
+ properties:
+ MetricType:
+ type: string
+ enum:
+ - FLEET_UTILIZATION_RATE
+ TargetValue:
+ type: number
+ ComputeConfiguration:
+ type: object
+ additionalProperties: false
+ properties:
+ vCpu:
+ type: integer
+ memory:
+ type: integer
+ disk:
+ type: integer
+ machineType:
+ type: string
+ enum:
+ - GENERAL
+ - NVME
Fleet:
type: object
properties:
@@ -438,13 +511,16 @@ components:
- LINUX_CONTAINER
- LINUX_GPU_CONTAINER
- ARM_CONTAINER
+ - MAC_ARM
ComputeType:
type: string
enum:
- BUILD_GENERAL1_SMALL
- BUILD_GENERAL1_MEDIUM
- BUILD_GENERAL1_LARGE
+ - BUILD_GENERAL1_XLARGE
- BUILD_GENERAL1_2XLARGE
+ - ATTRIBUTE_BASED_COMPUTE
OverflowBehavior:
type: string
enum:
@@ -455,6 +531,8 @@ components:
pattern: ^(?:arn:)[a-zA-Z+-=,._:/@]+$
FleetVpcConfig:
$ref: '#/components/schemas/VpcConfig'
+ FleetProxyConfiguration:
+ $ref: '#/components/schemas/ProxyConfiguration'
Tags:
type: array
x-insertionOrder: false
@@ -463,6 +541,13 @@ components:
Arn:
type: string
minLength: 1
+ ImageId:
+ type: string
+ pattern: ^((aws/codebuild/[A-Za-z-]+:[0-9]+(-[0-9._]+)?)|ami-[a-z0-9]{1,1020})$
+ ScalingConfiguration:
+ $ref: '#/components/schemas/ScalingConfigurationInput'
+ ComputeConfiguration:
+ $ref: '#/components/schemas/ComputeConfiguration'
x-stackql-resource-name: fleet
description: Resource Type definition for AWS::CodeBuild::Fleet
x-type-name: AWS::CodeBuild::Fleet
@@ -520,13 +605,16 @@ components:
- LINUX_CONTAINER
- LINUX_GPU_CONTAINER
- ARM_CONTAINER
+ - MAC_ARM
ComputeType:
type: string
enum:
- BUILD_GENERAL1_SMALL
- BUILD_GENERAL1_MEDIUM
- BUILD_GENERAL1_LARGE
+ - BUILD_GENERAL1_XLARGE
- BUILD_GENERAL1_2XLARGE
+ - ATTRIBUTE_BASED_COMPUTE
OverflowBehavior:
type: string
enum:
@@ -537,6 +625,8 @@ components:
pattern: ^(?:arn:)[a-zA-Z+-=,._:/@]+$
FleetVpcConfig:
$ref: '#/components/schemas/VpcConfig'
+ FleetProxyConfiguration:
+ $ref: '#/components/schemas/ProxyConfiguration'
Tags:
type: array
x-insertionOrder: false
@@ -545,6 +635,13 @@ components:
Arn:
type: string
minLength: 1
+ ImageId:
+ type: string
+ pattern: ^((aws/codebuild/[A-Za-z-]+:[0-9]+(-[0-9._]+)?)|ami-[a-z0-9]{1,1020})$
+ ScalingConfiguration:
+ $ref: '#/components/schemas/ScalingConfigurationInput'
+ ComputeConfiguration:
+ $ref: '#/components/schemas/ComputeConfiguration'
x-stackQL-stringOnly: true
x-title: CreateFleetRequest
type: object
@@ -627,8 +724,12 @@ components:
JSON_EXTRACT(Properties, '$.OverflowBehavior') as overflow_behavior,
JSON_EXTRACT(Properties, '$.FleetServiceRole') as fleet_service_role,
JSON_EXTRACT(Properties, '$.FleetVpcConfig') as fleet_vpc_config,
+ JSON_EXTRACT(Properties, '$.FleetProxyConfiguration') as fleet_proxy_configuration,
JSON_EXTRACT(Properties, '$.Tags') as tags,
- JSON_EXTRACT(Properties, '$.Arn') as arn
+ JSON_EXTRACT(Properties, '$.Arn') as arn,
+ JSON_EXTRACT(Properties, '$.ImageId') as image_id,
+ JSON_EXTRACT(Properties, '$.ScalingConfiguration') as scaling_configuration,
+ JSON_EXTRACT(Properties, '$.ComputeConfiguration') as compute_configuration
FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::CodeBuild::Fleet'
AND data__Identifier = ''
AND region = 'us-east-1'
@@ -644,8 +745,12 @@ components:
JSON_EXTRACT(detail.Properties, '$.OverflowBehavior') as overflow_behavior,
JSON_EXTRACT(detail.Properties, '$.FleetServiceRole') as fleet_service_role,
JSON_EXTRACT(detail.Properties, '$.FleetVpcConfig') as fleet_vpc_config,
+ JSON_EXTRACT(detail.Properties, '$.FleetProxyConfiguration') as fleet_proxy_configuration,
JSON_EXTRACT(detail.Properties, '$.Tags') as tags,
- JSON_EXTRACT(detail.Properties, '$.Arn') as arn
+ JSON_EXTRACT(detail.Properties, '$.Arn') as arn,
+ JSON_EXTRACT(detail.Properties, '$.ImageId') as image_id,
+ JSON_EXTRACT(detail.Properties, '$.ScalingConfiguration') as scaling_configuration,
+ JSON_EXTRACT(detail.Properties, '$.ComputeConfiguration') as compute_configuration
FROM aws.cloud_control.resources listing
LEFT OUTER JOIN aws.cloud_control.resource detail
ON detail.data__Identifier = listing.Identifier
@@ -666,8 +771,12 @@ components:
json_extract_path_text(Properties, 'OverflowBehavior') as overflow_behavior,
json_extract_path_text(Properties, 'FleetServiceRole') as fleet_service_role,
json_extract_path_text(Properties, 'FleetVpcConfig') as fleet_vpc_config,
+ json_extract_path_text(Properties, 'FleetProxyConfiguration') as fleet_proxy_configuration,
json_extract_path_text(Properties, 'Tags') as tags,
- json_extract_path_text(Properties, 'Arn') as arn
+ json_extract_path_text(Properties, 'Arn') as arn,
+ json_extract_path_text(Properties, 'ImageId') as image_id,
+ json_extract_path_text(Properties, 'ScalingConfiguration') as scaling_configuration,
+ json_extract_path_text(Properties, 'ComputeConfiguration') as compute_configuration
FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::CodeBuild::Fleet'
AND data__Identifier = ''
AND region = 'us-east-1'
@@ -683,8 +792,12 @@ components:
json_extract_path_text(detail.Properties, 'OverflowBehavior') as overflow_behavior,
json_extract_path_text(detail.Properties, 'FleetServiceRole') as fleet_service_role,
json_extract_path_text(detail.Properties, 'FleetVpcConfig') as fleet_vpc_config,
+ json_extract_path_text(detail.Properties, 'FleetProxyConfiguration') as fleet_proxy_configuration,
json_extract_path_text(detail.Properties, 'Tags') as tags,
- json_extract_path_text(detail.Properties, 'Arn') as arn
+ json_extract_path_text(detail.Properties, 'Arn') as arn,
+ json_extract_path_text(detail.Properties, 'ImageId') as image_id,
+ json_extract_path_text(detail.Properties, 'ScalingConfiguration') as scaling_configuration,
+ json_extract_path_text(detail.Properties, 'ComputeConfiguration') as compute_configuration
FROM aws.cloud_control.resources listing
LEFT OUTER JOIN aws.cloud_control.resource detail
ON detail.data__Identifier = listing.Identifier
@@ -750,7 +863,11 @@ components:
JSON_EXTRACT(detail.Properties, '$.OverflowBehavior') as overflow_behavior,
JSON_EXTRACT(detail.Properties, '$.FleetServiceRole') as fleet_service_role,
JSON_EXTRACT(detail.Properties, '$.FleetVpcConfig') as fleet_vpc_config,
- JSON_EXTRACT(detail.Properties, '$.Arn') as arn
+ JSON_EXTRACT(detail.Properties, '$.FleetProxyConfiguration') as fleet_proxy_configuration,
+ JSON_EXTRACT(detail.Properties, '$.Arn') as arn,
+ JSON_EXTRACT(detail.Properties, '$.ImageId') as image_id,
+ JSON_EXTRACT(detail.Properties, '$.ScalingConfiguration') as scaling_configuration,
+ JSON_EXTRACT(detail.Properties, '$.ComputeConfiguration') as compute_configuration
FROM aws.cloud_control.resources listing
LEFT OUTER JOIN aws.cloud_control.resource detail
ON detail.data__Identifier = listing.Identifier
@@ -773,7 +890,11 @@ components:
json_extract_path_text(detail.Properties, 'OverflowBehavior') as overflow_behavior,
json_extract_path_text(detail.Properties, 'FleetServiceRole') as fleet_service_role,
json_extract_path_text(detail.Properties, 'FleetVpcConfig') as fleet_vpc_config,
- json_extract_path_text(detail.Properties, 'Arn') as arn
+ json_extract_path_text(detail.Properties, 'FleetProxyConfiguration') as fleet_proxy_configuration,
+ json_extract_path_text(detail.Properties, 'Arn') as arn,
+ json_extract_path_text(detail.Properties, 'ImageId') as image_id,
+ json_extract_path_text(detail.Properties, 'ScalingConfiguration') as scaling_configuration,
+ json_extract_path_text(detail.Properties, 'ComputeConfiguration') as compute_configuration
FROM aws.cloud_control.resources listing
LEFT OUTER JOIN aws.cloud_control.resource detail
ON detail.data__Identifier = listing.Identifier
diff --git a/providers/src/aws/v00.00.00000/services/codedeploy.yaml b/providers/src/aws/v00.00.00000/services/codedeploy.yaml
index 1250f1d4..3790b64c 100644
--- a/providers/src/aws/v00.00.00000/services/codedeploy.yaml
+++ b/providers/src/aws/v00.00.00000/services/codedeploy.yaml
@@ -426,6 +426,9 @@ components:
tagUpdatable: true
cloudFormationSystemTags: false
tagProperty: /properties/Tags
+ permissions:
+ - codedeploy:TagResource
+ - codedeploy:UntagResource
x-required-permissions:
create:
- codedeploy:CreateApplication
diff --git a/providers/src/aws/v00.00.00000/services/codeguruprofiler.yaml b/providers/src/aws/v00.00.00000/services/codeguruprofiler.yaml
index 6a8c0a48..14808f0c 100644
--- a/providers/src/aws/v00.00.00000/services/codeguruprofiler.yaml
+++ b/providers/src/aws/v00.00.00000/services/codeguruprofiler.yaml
@@ -485,6 +485,16 @@ components:
- Arn
x-required-properties:
- ProfilingGroupName
+ x-tagging:
+ taggable: true
+ tagOnCreate: true
+ tagUpdatable: true
+ cloudFormationSystemTags: true
+ tagProperty: /properties/Tags
+ permissions:
+ - codeguru-profiler:TagResource
+ - codeguru-profiler:ListTagsForResource
+ - codeguru-profiler:UntagResource
x-required-permissions:
create:
- sns:Publish
@@ -495,8 +505,11 @@ components:
read:
- codeguru-profiler:DescribeProfilingGroup
- codeguru-profiler:ListTagsForResource
+ - codeguru-profiler:GetNotificationConfiguration
+ - codeguru-profiler:GetPolicy
update:
- sns:Publish
+ - codeguru-profiler:DescribeProfilingGroup
- codeguru-profiler:AddNotificationChannels
- codeguru-profiler:GetNotificationConfiguration
- codeguru-profiler:RemoveNotificationChannel
@@ -511,6 +524,8 @@ components:
list:
- codeguru-profiler:ListProfilingGroups
- codeguru-profiler:ListTagsForResource
+ - codeguru-profiler:GetNotificationConfiguration
+ - codeguru-profiler:GetPolicy
CreateProfilingGroupRequest:
properties:
ClientToken:
diff --git a/providers/src/aws/v00.00.00000/services/codepipeline.yaml b/providers/src/aws/v00.00.00000/services/codepipeline.yaml
index c2230671..c56859e8 100644
--- a/providers/src/aws/v00.00.00000/services/codepipeline.yaml
+++ b/providers/src/aws/v00.00.00000/services/codepipeline.yaml
@@ -450,12 +450,15 @@ components:
description: The URL of a sign-up page where users can sign up for an external service and perform initial configuration of the action provided by that service.
type: string
Tag:
+ description: A tag is a key-value pair that is used to manage the resource.
type: object
additionalProperties: false
properties:
Value:
+ description: The tag's value.
type: string
Key:
+ description: The tag's key.
type: string
required:
- Value
@@ -551,6 +554,581 @@ components:
- codepipeline:ListActionTypes
list:
- codepipeline:ListActionTypes
+ BlockerDeclaration:
+ description: Reserved for future use.
+ type: object
+ additionalProperties: false
+ properties:
+ Name:
+ description: Reserved for future use.
+ type: string
+ Type:
+ description: Reserved for future use.
+ type: string
+ enum:
+ - Schedule
+ required:
+ - Type
+ - Name
+ GitConfiguration:
+ description: A type of trigger configuration for Git-based source actions.
+ type: object
+ additionalProperties: false
+ properties:
+ Push:
+ description: The field where the repository event that will start the pipeline, such as pushing Git tags, is specified with details.
+ type: array
+ uniqueItems: true
+ items:
+ $ref: '#/components/schemas/GitPushFilter'
+ SourceActionName:
+ description: 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.
+ type: string
+ PullRequest:
+ description: The field where the repository event that will start the pipeline is specified as pull requests.
+ type: array
+ uniqueItems: true
+ items:
+ $ref: '#/components/schemas/GitPullRequestFilter'
+ required:
+ - SourceActionName
+ ActionTypeId:
+ description: Represents information about an action type.
+ type: object
+ additionalProperties: false
+ properties:
+ Owner:
+ description: 'The creator of the action being called. There are three valid values for the Owner field in the action category section within your pipeline structure: AWS, ThirdParty, and Custom.'
+ type: string
+ Category:
+ description: A category defines what kind of action can be taken in the stage, and constrains the provider type for the action. Valid categories are limited to one of the values below.
+ type: string
+ enum:
+ - Source
+ - Build
+ - Test
+ - Deploy
+ - Invoke
+ - Approval
+ - Compute
+ Version:
+ description: A string that describes the action version.
+ type: string
+ Provider:
+ description: The provider of the service being called by the action. Valid providers are determined by the action category. For example, an action in the Deploy category type might have a provider of CodeDeploy, which would be specified as CodeDeploy.
+ type: string
+ required:
+ - Owner
+ - Category
+ - Version
+ - Provider
+ ArtifactStoreMap:
+ description: A mapping of artifactStore objects and their corresponding AWS Regions. There must be an artifact store for the pipeline Region and for each cross-region action in the pipeline.
+ type: object
+ additionalProperties: false
+ properties:
+ ArtifactStore:
+ $ref: '#/components/schemas/ArtifactStore'
+ Region:
+ description: The action declaration's AWS Region, such as us-east-1.
+ type: string
+ required:
+ - ArtifactStore
+ - Region
+ PipelineTriggerDeclaration:
+ description: Represents information about the specified trigger configuration, such as the filter criteria and the source stage for the action that contains the trigger.
+ type: object
+ additionalProperties: false
+ properties:
+ GitConfiguration:
+ $ref: '#/components/schemas/GitConfiguration'
+ ProviderType:
+ description: The source provider for the event, such as connections configured for a repository with Git tags, for the specified trigger configuration.
+ type: string
+ enum:
+ - CodeStarSourceConnection
+ required:
+ - ProviderType
+ EncryptionKey:
+ description: Represents information about the key used to encrypt data in the artifact store, such as an AWS Key Management Service (AWS KMS) key
+ type: object
+ additionalProperties: false
+ properties:
+ Type:
+ description: The type of encryption key, such as an AWS KMS key. When creating or updating a pipeline, the value must be set to 'KMS'.
+ type: string
+ Id:
+ description: The ID used to identify the key. For an AWS KMS key, you can use the key ID, the key ARN, or the alias ARN.
+ type: string
+ required:
+ - Type
+ - Id
+ GitPullRequestFilter:
+ description: The event criteria for the pull request trigger configuration, such as the lists of branches or file paths to include and exclude.
+ type: object
+ additionalProperties: false
+ properties:
+ FilePaths:
+ $ref: '#/components/schemas/GitFilePathFilterCriteria'
+ Events:
+ description: The field that specifies which pull request events to filter on (opened, updated, closed) for the trigger configuration.
+ type: array
+ uniqueItems: true
+ items:
+ type: string
+ Branches:
+ $ref: '#/components/schemas/GitBranchFilterCriteria'
+ GitPushFilter:
+ description: 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: object
+ additionalProperties: false
+ properties:
+ FilePaths:
+ $ref: '#/components/schemas/GitFilePathFilterCriteria'
+ Branches:
+ $ref: '#/components/schemas/GitBranchFilterCriteria'
+ Tags:
+ $ref: '#/components/schemas/GitTagFilterCriteria'
+ ActionDeclaration:
+ description: Represents information about an action declaration.
+ type: object
+ additionalProperties: false
+ properties:
+ ActionTypeId:
+ $ref: '#/components/schemas/ActionTypeId'
+ Configuration:
+ description: The action's configuration. These are key-value pairs that specify input values for an action.
+ type: object
+ InputArtifacts:
+ type: array
+ uniqueItems: true
+ items:
+ $ref: '#/components/schemas/InputArtifact'
+ OutputArtifacts:
+ type: array
+ uniqueItems: true
+ items:
+ $ref: '#/components/schemas/OutputArtifact'
+ Commands:
+ description: The shell commands to run with your compute action in CodePipeline.
+ type: array
+ uniqueItems: false
+ items:
+ type: string
+ OutputVariables:
+ description: The list of variables that are to be exported from the compute action.
+ type: array
+ uniqueItems: true
+ items:
+ type: string
+ Region:
+ description: The action declaration's AWS Region, such as us-east-1.
+ type: string
+ Namespace:
+ description: The variable namespace associated with the action. All variables produced as output by this action fall under this namespace.
+ type: string
+ RoleArn:
+ description: The ARN of the IAM service role that performs the declared action. This is assumed through the roleArn for the pipeline.
+ type: string
+ pattern: arn:aws(-[\w]+)*:iam::[0-9]{12}:role/.*
+ RunOrder:
+ description: The order in which actions are run.
+ type: integer
+ Name:
+ description: The action declaration's name.
+ type: string
+ TimeoutInMinutes:
+ description: A timeout duration in minutes that can be applied against the ActionType’s default timeout value specified in Quotas for AWS CodePipeline. This attribute is available only to the manual approval ActionType.
+ type: integer
+ required:
+ - ActionTypeId
+ - Name
+ GitFilePathFilterCriteria:
+ description: The Git repository file paths specified as filter criteria to start the pipeline.
+ type: object
+ additionalProperties: false
+ properties:
+ Includes:
+ description: The list of patterns of Git repository file paths that, when a commit is pushed, are to be included as criteria that starts the pipeline.
+ type: array
+ uniqueItems: true
+ items:
+ type: string
+ Excludes:
+ description: The list of patterns of Git repository file paths that, when a commit is pushed, are to be excluded from starting the pipeline.
+ type: array
+ uniqueItems: true
+ items:
+ type: string
+ StageDeclaration:
+ description: Represents information about a stage and its definition.
+ type: object
+ additionalProperties: false
+ properties:
+ Blockers:
+ type: array
+ uniqueItems: true
+ items:
+ $ref: '#/components/schemas/BlockerDeclaration'
+ Actions:
+ type: array
+ uniqueItems: true
+ items:
+ $ref: '#/components/schemas/ActionDeclaration'
+ Name:
+ description: The name of the stage.
+ type: string
+ OnFailure:
+ type: object
+ description: The method to use when a stage has not completed successfully
+ $ref: '#/components/schemas/FailureConditions'
+ OnSuccess:
+ type: object
+ description: The method to use when a stage has completed successfully
+ $ref: '#/components/schemas/SuccessConditions'
+ BeforeEntry:
+ type: object
+ description: The method to use before stage runs.
+ $ref: '#/components/schemas/BeforeEntryConditions'
+ required:
+ - Actions
+ - Name
+ InputArtifact:
+ description: Represents information about an artifact to be worked on, such as a test or build artifact.
+ type: object
+ additionalProperties: false
+ properties:
+ Name:
+ description: The name of the artifact to be worked on (for example, "My App").
+ type: string
+ required:
+ - Name
+ ArtifactStore:
+ description: The S3 bucket where artifacts for the pipeline are stored.
+ type: object
+ additionalProperties: false
+ properties:
+ Type:
+ description: The type of the artifact store, such as S3.
+ enum:
+ - S3
+ type: string
+ EncryptionKey:
+ $ref: '#/components/schemas/EncryptionKey'
+ Location:
+ description: The S3 bucket used for storing the artifacts for a pipeline. You can specify the name of an S3 bucket but not a folder in the bucket. A folder to contain the pipeline artifacts is created for you based on the name of the pipeline. You can use any S3 bucket in the same AWS Region as the pipeline to store your pipeline artifacts.
+ type: string
+ required:
+ - Type
+ - Location
+ VariableDeclaration:
+ description: A variable declared at the pipeline level.
+ type: object
+ additionalProperties: false
+ properties:
+ DefaultValue:
+ description: The value of a pipeline-level variable.
+ type: string
+ Description:
+ 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.
+ type: string
+ Name:
+ description: The name of a pipeline-level variable.
+ type: string
+ required:
+ - Name
+ StageTransition:
+ description: The name of the pipeline in which you want to disable the flow of artifacts from one stage to another.
+ type: object
+ additionalProperties: false
+ properties:
+ StageName:
+ description: The name of the stage where you want to disable the inbound or outbound transition of artifacts.
+ type: string
+ Reason:
+ description: The reason given to the user that a stage is disabled, such as waiting for manual approval or manual tests. This message is displayed in the pipeline console UI.
+ type: string
+ required:
+ - StageName
+ - Reason
+ GitTagFilterCriteria:
+ description: The Git tags specified as filter criteria for whether a Git tag repository event will start the pipeline.
+ type: object
+ additionalProperties: false
+ properties:
+ Includes:
+ description: The list of patterns of Git tags that, when pushed, are to be included as criteria that starts the pipeline.
+ type: array
+ uniqueItems: true
+ items:
+ type: string
+ Excludes:
+ description: The list of patterns of Git tags that, when pushed, are to be excluded from starting the pipeline.
+ type: array
+ uniqueItems: true
+ items:
+ type: string
+ GitBranchFilterCriteria:
+ description: The Git repository branches specified as filter criteria to start the pipeline.
+ type: object
+ additionalProperties: false
+ properties:
+ Includes:
+ description: The list of patterns of Git branches that, when a commit is pushed, are to be included as criteria that starts the pipeline.
+ type: array
+ uniqueItems: true
+ items:
+ type: string
+ Excludes:
+ description: The list of patterns of Git branches that, when a commit is pushed, are to be excluded from starting the pipeline.
+ type: array
+ uniqueItems: true
+ items:
+ type: string
+ OutputArtifact:
+ description: Represents information about the output of an action.
+ type: object
+ additionalProperties: false
+ properties:
+ Name:
+ description: The name of the output of an artifact, such as "My App".
+ type: string
+ Files:
+ description: The files that you want to associate with the output artifact that will be exported from the compute action.
+ type: array
+ uniqueItems: true
+ items:
+ type: string
+ required:
+ - Name
+ FailureConditions:
+ description: The configuration that specifies the result, such as rollback, to occur upon stage failure
+ type: object
+ additionalProperties: false
+ properties:
+ Result:
+ type: string
+ description: The specified result for when the failure conditions are met, such as rolling back the stage
+ enum:
+ - ROLLBACK
+ - RETRY
+ RetryConfiguration:
+ description: The configuration that specifies the retry configuration for a stage
+ type: object
+ additionalProperties: false
+ properties:
+ RetryMode:
+ type: string
+ description: The specified retry mode type for the given stage. FAILED_ACTIONS will retry only the failed actions. ALL_ACTIONS will retry both failed and successful
+ enum:
+ - ALL_ACTIONS
+ - FAILED_ACTIONS
+ Conditions:
+ type: array
+ uniqueItems: true
+ items:
+ $ref: '#/components/schemas/Condition'
+ SuccessConditions:
+ description: The configuration that specifies the result, such as rollback, to occur upon stage failure
+ type: object
+ additionalProperties: false
+ properties:
+ Conditions:
+ type: array
+ uniqueItems: true
+ items:
+ $ref: '#/components/schemas/Condition'
+ BeforeEntryConditions:
+ description: The configuration that specifies the rules to run before stage starts.
+ type: object
+ additionalProperties: false
+ properties:
+ Conditions:
+ type: array
+ uniqueItems: true
+ items:
+ $ref: '#/components/schemas/Condition'
+ Condition:
+ description: Represents information about condition.
+ type: object
+ additionalProperties: false
+ properties:
+ Result:
+ type: string
+ description: The specified result for when the failure conditions are met, such as rolling back the stage
+ Rules:
+ type: array
+ uniqueItems: true
+ items:
+ $ref: '#/components/schemas/RuleDeclaration'
+ RuleDeclaration:
+ description: Represents information about condition.
+ type: object
+ additionalProperties: false
+ properties:
+ RuleTypeId:
+ $ref: '#/components/schemas/RuleTypeId'
+ Configuration:
+ description: The rule's configuration. These are key-value pairs that specify input values for a rule.
+ type: object
+ InputArtifacts:
+ type: array
+ uniqueItems: true
+ items:
+ $ref: '#/components/schemas/InputArtifact'
+ Region:
+ description: The rule declaration's AWS Region, such as us-east-1.
+ type: string
+ RoleArn:
+ description: The ARN of the IAM service role that performs the declared rule. This is assumed through the roleArn for the pipeline.
+ type: string
+ pattern: arn:aws(-[\w]+)*:iam::[0-9]{12}:role/.*
+ Name:
+ description: The rule declaration's name.
+ type: string
+ RuleTypeId:
+ description: Represents information about a rule type.
+ type: object
+ additionalProperties: false
+ properties:
+ Owner:
+ description: The creator of the rule being called. Only AWS is supported.
+ type: string
+ Category:
+ description: A category for the provider type for the rule.
+ type: string
+ Version:
+ description: A string that describes the rule version.
+ type: string
+ Provider:
+ description: The provider of the service being called by the rule.
+ type: string
+ Pipeline:
+ type: object
+ properties:
+ ArtifactStores:
+ description: A mapping of artifactStore objects and their corresponding AWS Regions. There must be an artifact store for the pipeline Region and for each cross-region action in the pipeline.
+ type: array
+ uniqueItems: true
+ items:
+ $ref: '#/components/schemas/ArtifactStoreMap'
+ DisableInboundStageTransitions:
+ description: Represents the input of a DisableStageTransition action.
+ type: array
+ uniqueItems: true
+ items:
+ $ref: '#/components/schemas/StageTransition'
+ Stages:
+ description: Represents information about a stage and its definition.
+ type: array
+ uniqueItems: true
+ items:
+ $ref: '#/components/schemas/StageDeclaration'
+ ExecutionMode:
+ description: The method that the pipeline will use to handle multiple executions. The default mode is SUPERSEDED.
+ enum:
+ - QUEUED
+ - SUPERSEDED
+ - PARALLEL
+ default: SUPERSEDED
+ type: string
+ RestartExecutionOnUpdate:
+ description: Indicates whether to rerun the CodePipeline pipeline after you update it.
+ type: boolean
+ Triggers:
+ description: The trigger configuration specifying a type of event, such as Git tags, that starts the pipeline.
+ type: array
+ uniqueItems: true
+ items:
+ $ref: '#/components/schemas/PipelineTriggerDeclaration'
+ RoleArn:
+ description: 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
+ type: string
+ pattern: arn:aws(-[\w]+)*:iam::[0-9]{12}:role/.*
+ Name:
+ description: The name of the pipeline.
+ type: string
+ Variables:
+ description: 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@\-_]+.
+ type: array
+ uniqueItems: true
+ items:
+ $ref: '#/components/schemas/VariableDeclaration'
+ Version:
+ description: The version of the pipeline.
+ type: string
+ ArtifactStore:
+ description: The S3 bucket where artifacts for the pipeline are stored.
+ $ref: '#/components/schemas/ArtifactStore'
+ PipelineType:
+ description: 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.
+ type: string
+ enum:
+ - V1
+ - V2
+ Tags:
+ description: Specifies the tags applied to the pipeline.
+ type: array
+ uniqueItems: false
+ items:
+ $ref: '#/components/schemas/Tag'
+ required:
+ - Stages
+ - RoleArn
+ x-stackql-resource-name: pipeline
+ description: The AWS::CodePipeline::Pipeline resource creates a CodePipeline pipeline that describes how software changes go through a release process.
+ x-type-name: AWS::CodePipeline::Pipeline
+ x-stackql-primary-identifier:
+ - Name
+ x-create-only-properties:
+ - Name
+ x-write-only-properties:
+ - RestartExecutionOnUpdate
+ x-read-only-properties:
+ - Version
+ x-required-properties:
+ - Stages
+ - RoleArn
+ x-tagging:
+ taggable: true
+ tagOnCreate: true
+ tagUpdatable: true
+ cloudFormationSystemTags: false
+ tagProperty: /properties/Tags
+ permissions:
+ - codepipeline:TagResource
+ - codepipeline:UntagResource
+ x-required-permissions:
+ create:
+ - iam:GetRole
+ - iam:PassRole
+ - codepipeline:GetPipeline
+ - codepipeline:CreatePipeline
+ - codepipeline:DisableStageTransition
+ - codepipeline:GetPipelineState
+ - codepipeline:TagResource
+ - codestar-connections:PassConnection
+ read:
+ - codepipeline:GetPipeline
+ - codepipeline:ListTagsForResource
+ - codepipeline:GetPipelineState
+ update:
+ - iam:GetRole
+ - iam:PassRole
+ - codepipeline:EnableStageTransition
+ - codepipeline:StartPipelineExecution
+ - codepipeline:GetPipeline
+ - codepipeline:UpdatePipeline
+ - codepipeline:GetPipelineState
+ - codepipeline:DisableStageTransition
+ - codepipeline:TagResource
+ - codepipeline:UntagResource
+ - codestar-connections:PassConnection
+ delete:
+ - codepipeline:GetPipeline
+ - codepipeline:DeletePipeline
+ list:
+ - codepipeline:ListPipelines
CreateCustomActionTypeRequest:
properties:
ClientToken:
@@ -602,6 +1180,89 @@ components:
x-title: CreateCustomActionTypeRequest
type: object
required: []
+ CreatePipelineRequest:
+ properties:
+ ClientToken:
+ type: string
+ RoleArn:
+ type: string
+ TypeName:
+ type: string
+ TypeVersionId:
+ type: string
+ DesiredState:
+ type: object
+ properties:
+ ArtifactStores:
+ description: A mapping of artifactStore objects and their corresponding AWS Regions. There must be an artifact store for the pipeline Region and for each cross-region action in the pipeline.
+ type: array
+ uniqueItems: true
+ items:
+ $ref: '#/components/schemas/ArtifactStoreMap'
+ DisableInboundStageTransitions:
+ description: Represents the input of a DisableStageTransition action.
+ type: array
+ uniqueItems: true
+ items:
+ $ref: '#/components/schemas/StageTransition'
+ Stages:
+ description: Represents information about a stage and its definition.
+ type: array
+ uniqueItems: true
+ items:
+ $ref: '#/components/schemas/StageDeclaration'
+ ExecutionMode:
+ description: The method that the pipeline will use to handle multiple executions. The default mode is SUPERSEDED.
+ enum:
+ - QUEUED
+ - SUPERSEDED
+ - PARALLEL
+ default: SUPERSEDED
+ type: string
+ RestartExecutionOnUpdate:
+ description: Indicates whether to rerun the CodePipeline pipeline after you update it.
+ type: boolean
+ Triggers:
+ description: The trigger configuration specifying a type of event, such as Git tags, that starts the pipeline.
+ type: array
+ uniqueItems: true
+ items:
+ $ref: '#/components/schemas/PipelineTriggerDeclaration'
+ RoleArn:
+ description: 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
+ type: string
+ pattern: arn:aws(-[\w]+)*:iam::[0-9]{12}:role/.*
+ Name:
+ description: The name of the pipeline.
+ type: string
+ Variables:
+ description: 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@\-_]+.
+ type: array
+ uniqueItems: true
+ items:
+ $ref: '#/components/schemas/VariableDeclaration'
+ Version:
+ description: The version of the pipeline.
+ type: string
+ ArtifactStore:
+ description: The S3 bucket where artifacts for the pipeline are stored.
+ $ref: '#/components/schemas/ArtifactStore'
+ PipelineType:
+ description: 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.
+ type: string
+ enum:
+ - V1
+ - V2
+ Tags:
+ description: Specifies the tags applied to the pipeline.
+ type: array
+ uniqueItems: false
+ items:
+ $ref: '#/components/schemas/Tag'
+ x-stackQL-stringOnly: true
+ x-title: CreatePipelineRequest
+ type: object
+ required: []
securitySchemes:
hmac:
type: apiKey
@@ -843,6 +1504,255 @@ components:
WHERE listing.data__TypeName = 'AWS::CodePipeline::CustomActionType'
AND detail.data__TypeName = 'AWS::CodePipeline::CustomActionType'
AND listing.region = 'us-east-1'
+ pipelines:
+ name: pipelines
+ id: aws.codepipeline.pipelines
+ x-cfn-schema-name: Pipeline
+ x-cfn-type-name: AWS::CodePipeline::Pipeline
+ x-identifiers:
+ - Name
+ x-type: cloud_control
+ methods:
+ create_resource:
+ config:
+ requestBodyTranslate:
+ algorithm: naive_DesiredState
+ operation:
+ $ref: '#/paths/~1?Action=CreateResource&Version=2021-09-30&__Pipeline&__detailTransformed=true/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::CodePipeline::Pipeline"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ update_resource:
+ operation:
+ $ref: '#/paths/~1?Action=UpdateResource&Version=2021-09-30/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::CodePipeline::Pipeline"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ delete_resource:
+ operation:
+ $ref: '#/paths/~1?Action=DeleteResource&Version=2021-09-30/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::CodePipeline::Pipeline"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ sqlVerbs:
+ insert:
+ - $ref: '#/components/x-stackQL-resources/pipelines/methods/create_resource'
+ delete:
+ - $ref: '#/components/x-stackQL-resources/pipelines/methods/delete_resource'
+ update:
+ - $ref: '#/components/x-stackQL-resources/pipelines/methods/update_resource'
+ config:
+ views:
+ select:
+ predicate: sqlDialect == "sqlite3" && requiredParams == [ data__Identifier ]
+ ddl: |-
+ SELECT
+ region,
+ data__Identifier,
+ JSON_EXTRACT(Properties, '$.ArtifactStores') as artifact_stores,
+ JSON_EXTRACT(Properties, '$.DisableInboundStageTransitions') as disable_inbound_stage_transitions,
+ JSON_EXTRACT(Properties, '$.Stages') as stages,
+ JSON_EXTRACT(Properties, '$.ExecutionMode') as execution_mode,
+ JSON_EXTRACT(Properties, '$.RestartExecutionOnUpdate') as restart_execution_on_update,
+ JSON_EXTRACT(Properties, '$.Triggers') as triggers,
+ JSON_EXTRACT(Properties, '$.RoleArn') as role_arn,
+ JSON_EXTRACT(Properties, '$.Name') as name,
+ JSON_EXTRACT(Properties, '$.Variables') as variables,
+ JSON_EXTRACT(Properties, '$.Version') as version,
+ JSON_EXTRACT(Properties, '$.ArtifactStore') as artifact_store,
+ JSON_EXTRACT(Properties, '$.PipelineType') as pipeline_type,
+ JSON_EXTRACT(Properties, '$.Tags') as tags
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::CodePipeline::Pipeline'
+ AND data__Identifier = ''
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "sqlite3"
+ ddl: |-
+ SELECT
+ detail.region,
+ JSON_EXTRACT(detail.Properties, '$.ArtifactStores') as artifact_stores,
+ JSON_EXTRACT(detail.Properties, '$.DisableInboundStageTransitions') as disable_inbound_stage_transitions,
+ JSON_EXTRACT(detail.Properties, '$.Stages') as stages,
+ JSON_EXTRACT(detail.Properties, '$.ExecutionMode') as execution_mode,
+ JSON_EXTRACT(detail.Properties, '$.RestartExecutionOnUpdate') as restart_execution_on_update,
+ JSON_EXTRACT(detail.Properties, '$.Triggers') as triggers,
+ JSON_EXTRACT(detail.Properties, '$.RoleArn') as role_arn,
+ JSON_EXTRACT(detail.Properties, '$.Name') as name,
+ JSON_EXTRACT(detail.Properties, '$.Variables') as variables,
+ JSON_EXTRACT(detail.Properties, '$.Version') as version,
+ JSON_EXTRACT(detail.Properties, '$.ArtifactStore') as artifact_store,
+ JSON_EXTRACT(detail.Properties, '$.PipelineType') as pipeline_type,
+ JSON_EXTRACT(detail.Properties, '$.Tags') as tags
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ WHERE listing.data__TypeName = 'AWS::CodePipeline::Pipeline'
+ AND detail.data__TypeName = 'AWS::CodePipeline::Pipeline'
+ AND listing.region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres" && requiredParams == [ data__Identifier ]
+ ddl: |-
+ SELECT
+ region,
+ data__Identifier,
+ json_extract_path_text(Properties, 'ArtifactStores') as artifact_stores,
+ json_extract_path_text(Properties, 'DisableInboundStageTransitions') as disable_inbound_stage_transitions,
+ json_extract_path_text(Properties, 'Stages') as stages,
+ json_extract_path_text(Properties, 'ExecutionMode') as execution_mode,
+ json_extract_path_text(Properties, 'RestartExecutionOnUpdate') as restart_execution_on_update,
+ json_extract_path_text(Properties, 'Triggers') as triggers,
+ json_extract_path_text(Properties, 'RoleArn') as role_arn,
+ json_extract_path_text(Properties, 'Name') as name,
+ json_extract_path_text(Properties, 'Variables') as variables,
+ json_extract_path_text(Properties, 'Version') as version,
+ json_extract_path_text(Properties, 'ArtifactStore') as artifact_store,
+ json_extract_path_text(Properties, 'PipelineType') as pipeline_type,
+ json_extract_path_text(Properties, 'Tags') as tags
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::CodePipeline::Pipeline'
+ AND data__Identifier = ''
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres"
+ ddl: |-
+ SELECT
+ detail.region,
+ json_extract_path_text(detail.Properties, 'ArtifactStores') as artifact_stores,
+ json_extract_path_text(detail.Properties, 'DisableInboundStageTransitions') as disable_inbound_stage_transitions,
+ json_extract_path_text(detail.Properties, 'Stages') as stages,
+ json_extract_path_text(detail.Properties, 'ExecutionMode') as execution_mode,
+ json_extract_path_text(detail.Properties, 'RestartExecutionOnUpdate') as restart_execution_on_update,
+ json_extract_path_text(detail.Properties, 'Triggers') as triggers,
+ json_extract_path_text(detail.Properties, 'RoleArn') as role_arn,
+ json_extract_path_text(detail.Properties, 'Name') as name,
+ json_extract_path_text(detail.Properties, 'Variables') as variables,
+ json_extract_path_text(detail.Properties, 'Version') as version,
+ json_extract_path_text(detail.Properties, 'ArtifactStore') as artifact_store,
+ json_extract_path_text(detail.Properties, 'PipelineType') as pipeline_type,
+ json_extract_path_text(detail.Properties, 'Tags') as tags
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ WHERE listing.data__TypeName = 'AWS::CodePipeline::Pipeline'
+ AND detail.data__TypeName = 'AWS::CodePipeline::Pipeline'
+ AND listing.region = 'us-east-1'
+ pipelines_list_only:
+ name: pipelines_list_only
+ id: aws.codepipeline.pipelines_list_only
+ x-cfn-schema-name: Pipeline
+ x-cfn-type-name: AWS::CodePipeline::Pipeline
+ x-identifiers:
+ - Name
+ x-type: cloud_control_view
+ methods: {}
+ sqlVerbs:
+ insert: []
+ delete: []
+ update: []
+ config:
+ views:
+ select:
+ predicate: sqlDialect == "sqlite3"
+ ddl: |-
+ SELECT
+ region,
+ JSON_EXTRACT(Properties, '$.Name') as name
+ FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::CodePipeline::Pipeline'
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres"
+ ddl: |-
+ SELECT
+ region,
+ json_extract_path_text(Properties, 'Name') as name
+ FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::CodePipeline::Pipeline'
+ AND region = 'us-east-1'
+ pipeline_tags:
+ name: pipeline_tags
+ id: aws.codepipeline.pipeline_tags
+ x-cfn-schema-name: Pipeline
+ x-cfn-type-name: AWS::CodePipeline::Pipeline
+ x-type: cloud_control_view
+ methods: {}
+ sqlVerbs:
+ insert: []
+ delete: []
+ update: []
+ config:
+ views:
+ select:
+ predicate: sqlDialect == "sqlite3"
+ ddl: |-
+ SELECT
+ detail.region,
+ JSON_EXTRACT(json_each.value, '$.Key') as tag_key,
+ JSON_EXTRACT(json_each.value, '$.Value') as tag_value,
+ JSON_EXTRACT(detail.Properties, '$.ArtifactStores') as artifact_stores,
+ JSON_EXTRACT(detail.Properties, '$.DisableInboundStageTransitions') as disable_inbound_stage_transitions,
+ JSON_EXTRACT(detail.Properties, '$.Stages') as stages,
+ JSON_EXTRACT(detail.Properties, '$.ExecutionMode') as execution_mode,
+ JSON_EXTRACT(detail.Properties, '$.RestartExecutionOnUpdate') as restart_execution_on_update,
+ JSON_EXTRACT(detail.Properties, '$.Triggers') as triggers,
+ JSON_EXTRACT(detail.Properties, '$.RoleArn') as role_arn,
+ JSON_EXTRACT(detail.Properties, '$.Name') as name,
+ JSON_EXTRACT(detail.Properties, '$.Variables') as variables,
+ JSON_EXTRACT(detail.Properties, '$.Version') as version,
+ JSON_EXTRACT(detail.Properties, '$.ArtifactStore') as artifact_store,
+ JSON_EXTRACT(detail.Properties, '$.PipelineType') as pipeline_type
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ ,json_each(JSON_EXTRACT(detail.Properties, '$.Tags'))
+ WHERE listing.data__TypeName = 'AWS::CodePipeline::Pipeline'
+ AND detail.data__TypeName = 'AWS::CodePipeline::Pipeline'
+ AND listing.region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres"
+ ddl: |-
+ SELECT
+ detail.region,
+ json_extract_path_text(json_each.value, 'Key') as tag_key,
+ json_extract_path_text(json_each.value, 'Value') as tag_value,
+ json_extract_path_text(detail.Properties, 'ArtifactStores') as artifact_stores,
+ json_extract_path_text(detail.Properties, 'DisableInboundStageTransitions') as disable_inbound_stage_transitions,
+ json_extract_path_text(detail.Properties, 'Stages') as stages,
+ json_extract_path_text(detail.Properties, 'ExecutionMode') as execution_mode,
+ json_extract_path_text(detail.Properties, 'RestartExecutionOnUpdate') as restart_execution_on_update,
+ json_extract_path_text(detail.Properties, 'Triggers') as triggers,
+ json_extract_path_text(detail.Properties, 'RoleArn') as role_arn,
+ json_extract_path_text(detail.Properties, 'Name') as name,
+ json_extract_path_text(detail.Properties, 'Variables') as variables,
+ json_extract_path_text(detail.Properties, 'Version') as version,
+ json_extract_path_text(detail.Properties, 'ArtifactStore') as artifact_store,
+ json_extract_path_text(detail.Properties, 'PipelineType') as pipeline_type
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ ,json_array_elements_text(json_extract_path_text(detail.Properties, 'Tags'))
+ WHERE listing.data__TypeName = 'AWS::CodePipeline::Pipeline'
+ AND detail.data__TypeName = 'AWS::CodePipeline::Pipeline'
+ AND listing.region = 'us-east-1'
paths:
/?Action=CreateResource&Version=2021-09-30:
parameters:
@@ -1028,6 +1938,48 @@ paths:
schema:
$ref: '#/components/x-cloud-control-schemas/ProgressEvent'
description: Success
+ /?Action=CreateResource&Version=2021-09-30&__Pipeline&__detailTransformed=true:
+ parameters:
+ - $ref: '#/components/parameters/X-Amz-Content-Sha256'
+ - $ref: '#/components/parameters/X-Amz-Date'
+ - $ref: '#/components/parameters/X-Amz-Algorithm'
+ - $ref: '#/components/parameters/X-Amz-Credential'
+ - $ref: '#/components/parameters/X-Amz-Security-Token'
+ - $ref: '#/components/parameters/X-Amz-Signature'
+ - $ref: '#/components/parameters/X-Amz-SignedHeaders'
+ post:
+ operationId: CreatePipeline
+ parameters:
+ - description: Action Header
+ in: header
+ name: X-Amz-Target
+ required: false
+ schema:
+ default: CloudApiService.CreateResource
+ enum:
+ - CloudApiService.CreateResource
+ type: string
+ - in: header
+ name: Content-Type
+ required: false
+ schema:
+ default: application/x-amz-json-1.0
+ enum:
+ - application/x-amz-json-1.0
+ type: string
+ requestBody:
+ content:
+ application/x-amz-json-1.0:
+ schema:
+ $ref: '#/components/schemas/CreatePipelineRequest'
+ required: true
+ responses:
+ '200':
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/x-cloud-control-schemas/ProgressEvent'
+ description: Success
x-stackQL-config:
requestTranslate:
algorithm: drop_double_underscore_params
diff --git a/providers/src/aws/v00.00.00000/services/codestarconnections.yaml b/providers/src/aws/v00.00.00000/services/codestarconnections.yaml
index 209cdacc..bd7eea15 100644
--- a/providers/src/aws/v00.00.00000/services/codestarconnections.yaml
+++ b/providers/src/aws/v00.00.00000/services/codestarconnections.yaml
@@ -550,6 +550,10 @@ components:
tagUpdatable: true
cloudFormationSystemTags: false
tagProperty: /properties/Tags
+ permissions:
+ - codestar-connections:UntagResource
+ - codestar-connections:ListTagsForResource
+ - codestar-connections:TagResource
x-required-permissions:
update:
- codestar-connections:GetConnection
diff --git a/providers/src/aws/v00.00.00000/services/cognito.yaml b/providers/src/aws/v00.00.00000/services/cognito.yaml
index 9724f380..60282041 100644
--- a/providers/src/aws/v00.00.00000/services/cognito.yaml
+++ b/providers/src/aws/v00.00.00000/services/cognito.yaml
@@ -385,6 +385,24 @@ components:
$ref: '#/components/x-cloud-control-schemas/ProgressEvent'
type: object
schemas:
+ Tag:
+ description: A key-value pair to associate with a resource.
+ type: object
+ properties:
+ Key:
+ type: string
+ description: 'The key name of the tag. You can specify a value that is 1 to 128 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -.'
+ minLength: 1
+ maxLength: 128
+ Value:
+ type: string
+ description: 'The value for the tag. You can specify a value that is 0 to 256 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -.'
+ minLength: 0
+ maxLength: 256
+ required:
+ - Key
+ - Value
+ additionalProperties: false
PushSync:
type: object
additionalProperties: false
@@ -461,6 +479,13 @@ components:
type: string
AllowClassicFlow:
type: boolean
+ IdentityPoolTags:
+ description: An array of key-value pairs to apply to this resource.
+ type: array
+ uniqueItems: true
+ x-insertionOrder: false
+ items:
+ $ref: '#/components/schemas/Tag'
required:
- AllowUnauthenticatedIdentities
x-stackql-resource-name: identity_pool
@@ -478,15 +503,20 @@ components:
x-required-properties:
- AllowUnauthenticatedIdentities
x-tagging:
- taggable: false
- tagOnCreate: false
- tagUpdatable: false
+ taggable: true
+ tagOnCreate: true
+ tagUpdatable: true
cloudFormationSystemTags: false
+ tagProperty: /properties/IdentityPoolTags
+ permissions:
+ - cognito-identity:TagResource
+ - cognito-identity:UntagResource
x-required-permissions:
create:
- cognito-identity:CreateIdentityPool
- cognito-sync:SetIdentityPoolConfiguration
- cognito-sync:SetCognitoEvents
+ - cognito-identity:TagResource
- iam:PassRole
read:
- cognito-identity:DescribeIdentityPool
@@ -495,6 +525,8 @@ components:
- cognito-identity:DescribeIdentityPool
- cognito-sync:SetIdentityPoolConfiguration
- cognito-sync:SetCognitoEvents
+ - cognito-identity:TagResource
+ - cognito-identity:UntagResource
- iam:PassRole
delete:
- cognito-identity:DeleteIdentityPool
@@ -647,6 +679,18 @@ components:
LogGroupArn:
type: string
additionalProperties: false
+ S3Configuration:
+ type: object
+ properties:
+ BucketArn:
+ type: string
+ additionalProperties: false
+ FirehoseConfiguration:
+ type: object
+ properties:
+ StreamArn:
+ type: string
+ additionalProperties: false
LogConfiguration:
type: object
properties:
@@ -656,6 +700,10 @@ components:
type: string
CloudWatchLogsConfiguration:
$ref: '#/components/schemas/CloudWatchLogsConfiguration'
+ S3Configuration:
+ $ref: '#/components/schemas/S3Configuration'
+ FirehoseConfiguration:
+ $ref: '#/components/schemas/FirehoseConfiguration'
additionalProperties: false
LogConfigurations:
type: array
@@ -700,6 +748,13 @@ components:
- logs:PutResourcePolicy
- logs:DescribeResourcePolicies
- logs:DescribeLogGroups
+ - s3:GetBucketPolicy
+ - s3:PutBucketPolicy
+ - s3:ListBucket
+ - s3:PutObject
+ - s3:GetBucketAcl
+ - firehose:TagDeliveryStream
+ - iam:CreateServiceLinkedRole
read:
- cognito-idp:GetLogDeliveryConfiguration
update:
@@ -713,6 +768,13 @@ components:
- logs:PutResourcePolicy
- logs:DescribeResourcePolicies
- logs:DescribeLogGroups
+ - s3:GetBucketPolicy
+ - s3:PutBucketPolicy
+ - s3:ListBucket
+ - s3:PutObject
+ - s3:GetBucketAcl
+ - firehose:TagDeliveryStream
+ - iam:CreateServiceLinkedRole
delete:
- cognito-idp:GetLogDeliveryConfiguration
- cognito-idp:SetLogDeliveryConfiguration
@@ -724,6 +786,127 @@ components:
- logs:PutResourcePolicy
- logs:DescribeResourcePolicies
- logs:DescribeLogGroups
+ - s3:GetBucketPolicy
+ - s3:PutBucketPolicy
+ - s3:ListBucket
+ - s3:PutObject
+ - s3:GetBucketAcl
+ - firehose:TagDeliveryStream
+ - iam:CreateServiceLinkedRole
+ ManagedLoginBrandingIdType:
+ type: string
+ pattern: ^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[4][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}$
+ CategoryType:
+ type: string
+ enum:
+ - FAVICON_ICO
+ - FAVICON_SVG
+ - EMAIL_GRAPHIC
+ - SMS_GRAPHIC
+ - AUTH_APP_GRAPHIC
+ - PASSWORD_GRAPHIC
+ - PASSKEY_GRAPHIC
+ - PAGE_HEADER_LOGO
+ - PAGE_HEADER_BACKGROUND
+ - PAGE_FOOTER_LOGO
+ - PAGE_FOOTER_BACKGROUND
+ - PAGE_BACKGROUND
+ - FORM_BACKGROUND
+ - FORM_LOGO
+ - IDP_BUTTON_ICON
+ ColorModeType:
+ type: string
+ enum:
+ - LIGHT
+ - DARK
+ - DYNAMIC
+ ExtensionType:
+ type: string
+ enum:
+ - ICO
+ - JPEG
+ - PNG
+ - SVG
+ - WEBP
+ BytesType:
+ type: string
+ maxLength: 1000000
+ ResourceIdType:
+ type: string
+ pattern: ^[\w\- ]+$
+ minLength: 1
+ maxLength: 40
+ AssetType:
+ type: object
+ properties:
+ Category:
+ $ref: '#/components/schemas/CategoryType'
+ ColorMode:
+ $ref: '#/components/schemas/ColorModeType'
+ Extension:
+ $ref: '#/components/schemas/ExtensionType'
+ Bytes:
+ $ref: '#/components/schemas/BytesType'
+ ResourceId:
+ $ref: '#/components/schemas/ResourceIdType'
+ additionalProperties: false
+ required:
+ - Category
+ - ColorMode
+ - Extension
+ AssetList:
+ type: array
+ items:
+ $ref: '#/components/schemas/AssetType'
+ ManagedLoginBranding:
+ type: object
+ properties:
+ UserPoolId:
+ type: string
+ ClientId:
+ type: string
+ UseCognitoProvidedValues:
+ type: boolean
+ Settings:
+ type: object
+ Assets:
+ $ref: '#/components/schemas/AssetList'
+ ManagedLoginBrandingId:
+ $ref: '#/components/schemas/ManagedLoginBrandingIdType'
+ ReturnMergedResources:
+ type: boolean
+ required:
+ - UserPoolId
+ x-stackql-resource-name: managed_login_branding
+ description: Resource Type definition for AWS::Cognito::ManagedLoginBranding
+ x-type-name: AWS::Cognito::ManagedLoginBranding
+ x-stackql-primary-identifier:
+ - UserPoolId
+ - ManagedLoginBrandingId
+ x-create-only-properties:
+ - UserPoolId
+ - ClientId
+ x-write-only-properties:
+ - ClientId
+ - ReturnMergedResources
+ x-read-only-properties:
+ - ManagedLoginBrandingId
+ x-required-properties:
+ - UserPoolId
+ x-tagging:
+ taggable: false
+ tagOnCreate: false
+ tagUpdatable: false
+ cloudFormationSystemTags: false
+ x-required-permissions:
+ create:
+ - cognito-idp:CreateManagedLoginBranding
+ read:
+ - cognito-idp:DescribeManagedLoginBranding
+ update:
+ - cognito-idp:UpdateManagedLoginBranding
+ delete:
+ - cognito-idp:DeleteManagedLoginBranding
PasswordPolicy:
type: object
properties:
@@ -739,12 +922,24 @@ components:
type: boolean
TemporaryPasswordValidityDays:
type: integer
+ PasswordHistorySize:
+ type: integer
+ additionalProperties: false
+ SignInPolicy:
+ type: object
+ properties:
+ AllowedFirstAuthFactors:
+ type: array
+ items:
+ type: string
additionalProperties: false
Policies:
type: object
properties:
PasswordPolicy:
$ref: '#/components/schemas/PasswordPolicy'
+ SignInPolicy:
+ $ref: '#/components/schemas/SignInPolicy'
additionalProperties: false
InviteMessageTemplate:
type: object
@@ -936,11 +1131,19 @@ components:
SmsMessage:
type: string
additionalProperties: false
+ AdvancedSecurityAdditionalFlows:
+ type: object
+ properties:
+ CustomAuthMode:
+ type: string
+ additionalProperties: false
UserPoolAddOns:
type: object
properties:
AdvancedSecurityMode:
type: string
+ AdvancedSecurityAdditionalFlows:
+ $ref: '#/components/schemas/AdvancedSecurityAdditionalFlows'
additionalProperties: false
UserPool:
type: object
@@ -993,12 +1196,28 @@ components:
type: string
minLength: 6
maxLength: 140
+ EmailAuthenticationMessage:
+ type: string
+ minLength: 6
+ maxLength: 20000
+ EmailAuthenticationSubject:
+ type: string
+ minLength: 1
+ maxLength: 140
SmsConfiguration:
$ref: '#/components/schemas/SmsConfiguration'
SmsVerificationMessage:
type: string
minLength: 6
maxLength: 140
+ WebAuthnRelyingPartyID:
+ type: string
+ minLength: 1
+ maxLength: 63
+ WebAuthnUserVerification:
+ type: string
+ minLength: 1
+ maxLength: 9
Schema:
type: array
items:
@@ -1025,8 +1244,14 @@ components:
type: string
UserPoolId:
type: string
+ UserPoolTier:
+ type: string
+ enum:
+ - LITE
+ - ESSENTIALS
+ - PLUS
x-stackql-resource-name: user_pool
- description: Resource Type definition for AWS::Cognito::UserPool
+ description: Definition of AWS::Cognito::UserPool Resource Type
x-type-name: AWS::Cognito::UserPool
x-stackql-primary-identifier:
- UserPoolId
@@ -1043,6 +1268,10 @@ components:
tagUpdatable: true
cloudFormationSystemTags: false
tagProperty: /properties/UserPoolTags
+ permissions:
+ - cognito-idp:ListTagsForResource
+ - cognito-idp:UntagResource
+ - cognito-idp:TagResource
x-required-permissions:
create:
- cognito-idp:CreateUserPool
@@ -1051,8 +1280,10 @@ components:
- cognito-idp:DescribeUserPool
- kms:CreateGrant
- iam:CreateServiceLinkedRole
+ - cognito-idp:TagResource
read:
- cognito-idp:DescribeUserPool
+ - cognito-idp:GetUserPoolMfaConfig
update:
- cognito-idp:UpdateUserPool
- cognito-idp:ListTagsForResource
@@ -1061,6 +1292,7 @@ components:
- cognito-idp:SetUserPoolMfaConfig
- cognito-idp:AddCustomAttributes
- cognito-idp:DescribeUserPool
+ - cognito-idp:GetUserPoolMfaConfig
- iam:PassRole
delete:
- cognito-idp:DeleteUserPool
@@ -1260,6 +1492,127 @@ components:
- iam:PutRolePolicy
list:
- cognito-idp:ListGroups
+ UserPoolIdentityProvider:
+ type: object
+ properties:
+ UserPoolId:
+ type: string
+ ProviderName:
+ type: string
+ ProviderType:
+ type: string
+ ProviderDetails:
+ type: object
+ x-patternProperties:
+ ^([\p{L}\p{Z}\p{N}_.:/=+\-@]*)$:
+ type: string
+ additionalProperties: false
+ IdpIdentifiers:
+ type: array
+ items:
+ type: string
+ AttributeMapping:
+ type: object
+ x-patternProperties:
+ ^([\p{L}\p{Z}\p{N}_.:/=+\-@]*)$:
+ type: string
+ additionalProperties: false
+ required:
+ - UserPoolId
+ - ProviderName
+ - ProviderType
+ - ProviderDetails
+ x-stackql-resource-name: user_pool_identity_provider
+ description: Resource Type definition for AWS::Cognito::UserPoolIdentityProvider
+ x-type-name: AWS::Cognito::UserPoolIdentityProvider
+ x-stackql-primary-identifier:
+ - UserPoolId
+ - ProviderName
+ x-create-only-properties:
+ - UserPoolId
+ - ProviderName
+ - ProviderType
+ x-required-properties:
+ - UserPoolId
+ - ProviderName
+ - ProviderType
+ - ProviderDetails
+ x-tagging:
+ taggable: false
+ tagOnCreate: false
+ tagUpdatable: false
+ cloudFormationSystemTags: false
+ x-required-permissions:
+ create:
+ - cognito-idp:CreateIdentityProvider
+ - cognito-idp:DescribeIdentityProvider
+ read:
+ - cognito-idp:DescribeIdentityProvider
+ update:
+ - cognito-idp:UpdateIdentityProvider
+ - cognito-idp:DescribeIdentityProvider
+ delete:
+ - cognito-idp:DeleteIdentityProvider
+ - cognito-idp:DescribeIdentityProvider
+ list:
+ - cognito-idp:ListIdentityProviders
+ ResourceServerScopeType:
+ type: object
+ properties:
+ ScopeDescription:
+ type: string
+ ScopeName:
+ type: string
+ required:
+ - ScopeDescription
+ - ScopeName
+ additionalProperties: false
+ UserPoolResourceServer:
+ type: object
+ properties:
+ UserPoolId:
+ type: string
+ Identifier:
+ type: string
+ Name:
+ type: string
+ Scopes:
+ type: array
+ items:
+ $ref: '#/components/schemas/ResourceServerScopeType'
+ required:
+ - UserPoolId
+ - Identifier
+ - Name
+ x-stackql-resource-name: user_pool_resource_server
+ description: Resource Type definition for AWS::Cognito::UserPoolResourceServer
+ x-type-name: AWS::Cognito::UserPoolResourceServer
+ x-stackql-primary-identifier:
+ - UserPoolId
+ - Identifier
+ x-create-only-properties:
+ - UserPoolId
+ - Identifier
+ x-required-properties:
+ - UserPoolId
+ - Identifier
+ - Name
+ x-tagging:
+ taggable: false
+ tagOnCreate: false
+ tagUpdatable: false
+ cloudFormationSystemTags: false
+ x-required-permissions:
+ create:
+ - cognito-idp:CreateResourceServer
+ read:
+ - cognito-idp:DescribeResourceServer
+ update:
+ - cognito-idp:UpdateResourceServer
+ delete:
+ - cognito-idp:DeleteResourceServer
+ list:
+ - cognito-idp:ListResourceServers
RiskExceptionConfigurationType:
type: object
properties:
@@ -1403,6 +1756,46 @@ components:
delete:
- cognito-idp:SetRiskConfiguration
- cognito-idp:DescribeRiskConfiguration
+ UserPoolUICustomizationAttachment:
+ type: object
+ properties:
+ UserPoolId:
+ type: string
+ ClientId:
+ type: string
+ CSS:
+ type: string
+ required:
+ - UserPoolId
+ - ClientId
+ x-stackql-resource-name: user_poolui_customization_attachment
+ description: Resource Type definition for AWS::Cognito::UserPoolUICustomizationAttachment
+ x-type-name: AWS::Cognito::UserPoolUICustomizationAttachment
+ x-stackql-primary-identifier:
+ - UserPoolId
+ - ClientId
+ x-create-only-properties:
+ - UserPoolId
+ - ClientId
+ x-required-properties:
+ - UserPoolId
+ - ClientId
+ x-tagging:
+ taggable: false
+ tagOnCreate: false
+ tagUpdatable: false
+ cloudFormationSystemTags: false
+ x-required-permissions:
+ create:
+ - cognito-idp:SetUICustomization
+ - cognito-idp:GetUICustomization
+ read:
+ - cognito-idp:GetUICustomization
+ update:
+ - cognito-idp:SetUICustomization
+ delete:
+ - cognito-idp:SetUICustomization
+ - cognito-idp:GetUICustomization
AttributeType:
type: object
properties:
@@ -1574,6 +1967,13 @@ components:
type: string
AllowClassicFlow:
type: boolean
+ IdentityPoolTags:
+ description: An array of key-value pairs to apply to this resource.
+ type: array
+ uniqueItems: true
+ x-insertionOrder: false
+ items:
+ $ref: '#/components/schemas/Tag'
x-stackQL-stringOnly: true
x-title: CreateIdentityPoolRequest
type: object
@@ -1657,6 +2057,37 @@ components:
x-title: CreateLogDeliveryConfigurationRequest
type: object
required: []
+ CreateManagedLoginBrandingRequest:
+ properties:
+ ClientToken:
+ type: string
+ RoleArn:
+ type: string
+ TypeName:
+ type: string
+ TypeVersionId:
+ type: string
+ DesiredState:
+ type: object
+ properties:
+ UserPoolId:
+ type: string
+ ClientId:
+ type: string
+ UseCognitoProvidedValues:
+ type: boolean
+ Settings:
+ type: object
+ Assets:
+ $ref: '#/components/schemas/AssetList'
+ ManagedLoginBrandingId:
+ $ref: '#/components/schemas/ManagedLoginBrandingIdType'
+ ReturnMergedResources:
+ type: boolean
+ x-stackQL-stringOnly: true
+ x-title: CreateManagedLoginBrandingRequest
+ type: object
+ required: []
CreateUserPoolRequest:
properties:
ClientToken:
@@ -1718,12 +2149,28 @@ components:
type: string
minLength: 6
maxLength: 140
+ EmailAuthenticationMessage:
+ type: string
+ minLength: 6
+ maxLength: 20000
+ EmailAuthenticationSubject:
+ type: string
+ minLength: 1
+ maxLength: 140
SmsConfiguration:
$ref: '#/components/schemas/SmsConfiguration'
SmsVerificationMessage:
type: string
minLength: 6
maxLength: 140
+ WebAuthnRelyingPartyID:
+ type: string
+ minLength: 1
+ maxLength: 63
+ WebAuthnUserVerification:
+ type: string
+ minLength: 1
+ maxLength: 9
Schema:
type: array
items:
@@ -1750,6 +2197,12 @@ components:
type: string
UserPoolId:
type: string
+ UserPoolTier:
+ type: string
+ enum:
+ - LITE
+ - ESSENTIALS
+ - PLUS
x-stackQL-stringOnly: true
x-title: CreateUserPoolRequest
type: object
@@ -1876,7 +2329,7 @@ components:
x-title: CreateUserPoolGroupRequest
type: object
required: []
- CreateUserPoolRiskConfigurationAttachmentRequest:
+ CreateUserPoolIdentityProviderRequest:
properties:
ClientToken:
type: string
@@ -1891,7 +2344,73 @@ components:
properties:
UserPoolId:
type: string
- ClientId:
+ ProviderName:
+ type: string
+ ProviderType:
+ type: string
+ ProviderDetails:
+ type: object
+ x-patternProperties:
+ ^([\p{L}\p{Z}\p{N}_.:/=+\-@]*)$:
+ type: string
+ additionalProperties: false
+ IdpIdentifiers:
+ type: array
+ items:
+ type: string
+ AttributeMapping:
+ type: object
+ x-patternProperties:
+ ^([\p{L}\p{Z}\p{N}_.:/=+\-@]*)$:
+ type: string
+ additionalProperties: false
+ x-stackQL-stringOnly: true
+ x-title: CreateUserPoolIdentityProviderRequest
+ type: object
+ required: []
+ CreateUserPoolResourceServerRequest:
+ properties:
+ ClientToken:
+ type: string
+ RoleArn:
+ type: string
+ TypeName:
+ type: string
+ TypeVersionId:
+ type: string
+ DesiredState:
+ type: object
+ properties:
+ UserPoolId:
+ type: string
+ Identifier:
+ type: string
+ Name:
+ type: string
+ Scopes:
+ type: array
+ items:
+ $ref: '#/components/schemas/ResourceServerScopeType'
+ x-stackQL-stringOnly: true
+ x-title: CreateUserPoolResourceServerRequest
+ type: object
+ required: []
+ CreateUserPoolRiskConfigurationAttachmentRequest:
+ properties:
+ ClientToken:
+ type: string
+ RoleArn:
+ type: string
+ TypeName:
+ type: string
+ TypeVersionId:
+ type: string
+ DesiredState:
+ type: object
+ properties:
+ UserPoolId:
+ type: string
+ ClientId:
type: string
RiskExceptionConfiguration:
$ref: '#/components/schemas/RiskExceptionConfigurationType'
@@ -1903,6 +2422,29 @@ components:
x-title: CreateUserPoolRiskConfigurationAttachmentRequest
type: object
required: []
+ CreateUserPoolUICustomizationAttachmentRequest:
+ properties:
+ ClientToken:
+ type: string
+ RoleArn:
+ type: string
+ TypeName:
+ type: string
+ TypeVersionId:
+ type: string
+ DesiredState:
+ type: object
+ properties:
+ UserPoolId:
+ type: string
+ ClientId:
+ type: string
+ CSS:
+ type: string
+ x-stackQL-stringOnly: true
+ x-title: CreateUserPoolUICustomizationAttachmentRequest
+ type: object
+ required: []
CreateUserPoolUserRequest:
properties:
ClientToken:
@@ -2052,7 +2594,8 @@ components:
JSON_EXTRACT(Properties, '$.AllowUnauthenticatedIdentities') as allow_unauthenticated_identities,
JSON_EXTRACT(Properties, '$.SamlProviderARNs') as saml_provider_arns,
JSON_EXTRACT(Properties, '$.OpenIdConnectProviderARNs') as open_id_connect_provider_arns,
- JSON_EXTRACT(Properties, '$.AllowClassicFlow') as allow_classic_flow
+ JSON_EXTRACT(Properties, '$.AllowClassicFlow') as allow_classic_flow,
+ JSON_EXTRACT(Properties, '$.IdentityPoolTags') as identity_pool_tags
FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::Cognito::IdentityPool'
AND data__Identifier = ''
AND region = 'us-east-1'
@@ -2073,7 +2616,8 @@ components:
JSON_EXTRACT(detail.Properties, '$.AllowUnauthenticatedIdentities') as allow_unauthenticated_identities,
JSON_EXTRACT(detail.Properties, '$.SamlProviderARNs') as saml_provider_arns,
JSON_EXTRACT(detail.Properties, '$.OpenIdConnectProviderARNs') as open_id_connect_provider_arns,
- JSON_EXTRACT(detail.Properties, '$.AllowClassicFlow') as allow_classic_flow
+ JSON_EXTRACT(detail.Properties, '$.AllowClassicFlow') as allow_classic_flow,
+ JSON_EXTRACT(detail.Properties, '$.IdentityPoolTags') as identity_pool_tags
FROM aws.cloud_control.resources listing
LEFT OUTER JOIN aws.cloud_control.resource detail
ON detail.data__Identifier = listing.Identifier
@@ -2099,7 +2643,8 @@ components:
json_extract_path_text(Properties, 'AllowUnauthenticatedIdentities') as allow_unauthenticated_identities,
json_extract_path_text(Properties, 'SamlProviderARNs') as saml_provider_arns,
json_extract_path_text(Properties, 'OpenIdConnectProviderARNs') as open_id_connect_provider_arns,
- json_extract_path_text(Properties, 'AllowClassicFlow') as allow_classic_flow
+ json_extract_path_text(Properties, 'AllowClassicFlow') as allow_classic_flow,
+ json_extract_path_text(Properties, 'IdentityPoolTags') as identity_pool_tags
FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::Cognito::IdentityPool'
AND data__Identifier = ''
AND region = 'us-east-1'
@@ -2120,7 +2665,8 @@ components:
json_extract_path_text(detail.Properties, 'AllowUnauthenticatedIdentities') as allow_unauthenticated_identities,
json_extract_path_text(detail.Properties, 'SamlProviderARNs') as saml_provider_arns,
json_extract_path_text(detail.Properties, 'OpenIdConnectProviderARNs') as open_id_connect_provider_arns,
- json_extract_path_text(detail.Properties, 'AllowClassicFlow') as allow_classic_flow
+ json_extract_path_text(detail.Properties, 'AllowClassicFlow') as allow_classic_flow,
+ json_extract_path_text(detail.Properties, 'IdentityPoolTags') as identity_pool_tags
FROM aws.cloud_control.resources listing
LEFT OUTER JOIN aws.cloud_control.resource detail
ON detail.data__Identifier = listing.Identifier
@@ -2536,6 +3082,96 @@ components:
FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::Cognito::LogDeliveryConfiguration'
AND data__Identifier = ''
AND region = 'us-east-1'
+ managed_login_brandings:
+ name: managed_login_brandings
+ id: aws.cognito.managed_login_brandings
+ x-cfn-schema-name: ManagedLoginBranding
+ x-cfn-type-name: AWS::Cognito::ManagedLoginBranding
+ x-identifiers:
+ - UserPoolId
+ - ManagedLoginBrandingId
+ x-type: cloud_control
+ methods:
+ create_resource:
+ config:
+ requestBodyTranslate:
+ algorithm: naive_DesiredState
+ operation:
+ $ref: '#/paths/~1?Action=CreateResource&Version=2021-09-30&__ManagedLoginBranding&__detailTransformed=true/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::Cognito::ManagedLoginBranding"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ update_resource:
+ operation:
+ $ref: '#/paths/~1?Action=UpdateResource&Version=2021-09-30/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::Cognito::ManagedLoginBranding"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ delete_resource:
+ operation:
+ $ref: '#/paths/~1?Action=DeleteResource&Version=2021-09-30/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::Cognito::ManagedLoginBranding"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ sqlVerbs:
+ insert:
+ - $ref: '#/components/x-stackQL-resources/managed_login_brandings/methods/create_resource'
+ delete:
+ - $ref: '#/components/x-stackQL-resources/managed_login_brandings/methods/delete_resource'
+ update:
+ - $ref: '#/components/x-stackQL-resources/managed_login_brandings/methods/update_resource'
+ config:
+ views:
+ select:
+ predicate: sqlDialect == "sqlite3" && requiredParams == [ data__Identifier ]
+ ddl: |-
+ SELECT
+ region,
+ data__Identifier,
+ JSON_EXTRACT(Properties, '$.UserPoolId') as user_pool_id,
+ JSON_EXTRACT(Properties, '$.ClientId') as client_id,
+ JSON_EXTRACT(Properties, '$.UseCognitoProvidedValues') as use_cognito_provided_values,
+ JSON_EXTRACT(Properties, '$.Settings') as settings,
+ JSON_EXTRACT(Properties, '$.Assets') as assets,
+ JSON_EXTRACT(Properties, '$.ManagedLoginBrandingId') as managed_login_branding_id,
+ JSON_EXTRACT(Properties, '$.ReturnMergedResources') as return_merged_resources
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::Cognito::ManagedLoginBranding'
+ AND data__Identifier = '|'
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres" && requiredParams == [ data__Identifier ]
+ ddl: |-
+ SELECT
+ region,
+ data__Identifier,
+ json_extract_path_text(Properties, 'UserPoolId') as user_pool_id,
+ json_extract_path_text(Properties, 'ClientId') as client_id,
+ json_extract_path_text(Properties, 'UseCognitoProvidedValues') as use_cognito_provided_values,
+ json_extract_path_text(Properties, 'Settings') as settings,
+ json_extract_path_text(Properties, 'Assets') as assets,
+ json_extract_path_text(Properties, 'ManagedLoginBrandingId') as managed_login_branding_id,
+ json_extract_path_text(Properties, 'ReturnMergedResources') as return_merged_resources
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::Cognito::ManagedLoginBranding'
+ AND data__Identifier = '|'
+ AND region = 'us-east-1'
user_pools:
name: user_pools
id: aws.cognito.user_pools
@@ -2615,8 +3251,12 @@ components:
JSON_EXTRACT(Properties, '$.MfaConfiguration') as mfa_configuration,
JSON_EXTRACT(Properties, '$.EnabledMfas') as enabled_mfas,
JSON_EXTRACT(Properties, '$.SmsAuthenticationMessage') as sms_authentication_message,
+ JSON_EXTRACT(Properties, '$.EmailAuthenticationMessage') as email_authentication_message,
+ JSON_EXTRACT(Properties, '$.EmailAuthenticationSubject') as email_authentication_subject,
JSON_EXTRACT(Properties, '$.SmsConfiguration') as sms_configuration,
JSON_EXTRACT(Properties, '$.SmsVerificationMessage') as sms_verification_message,
+ JSON_EXTRACT(Properties, '$.WebAuthnRelyingPartyID') as web_authn_relying_party_id,
+ JSON_EXTRACT(Properties, '$.WebAuthnUserVerification') as web_authn_user_verification,
JSON_EXTRACT(Properties, '$.Schema') as _schema,
JSON_EXTRACT(Properties, '$.UsernameConfiguration') as username_configuration,
JSON_EXTRACT(Properties, '$.UserAttributeUpdateSettings') as user_attribute_update_settings,
@@ -2626,7 +3266,8 @@ components:
JSON_EXTRACT(Properties, '$.ProviderName') as provider_name,
JSON_EXTRACT(Properties, '$.ProviderURL') as provider_url,
JSON_EXTRACT(Properties, '$.Arn') as arn,
- JSON_EXTRACT(Properties, '$.UserPoolId') as user_pool_id
+ JSON_EXTRACT(Properties, '$.UserPoolId') as user_pool_id,
+ JSON_EXTRACT(Properties, '$.UserPoolTier') as user_pool_tier
FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::Cognito::UserPool'
AND data__Identifier = ''
AND region = 'us-east-1'
@@ -2651,8 +3292,12 @@ components:
JSON_EXTRACT(detail.Properties, '$.MfaConfiguration') as mfa_configuration,
JSON_EXTRACT(detail.Properties, '$.EnabledMfas') as enabled_mfas,
JSON_EXTRACT(detail.Properties, '$.SmsAuthenticationMessage') as sms_authentication_message,
+ JSON_EXTRACT(detail.Properties, '$.EmailAuthenticationMessage') as email_authentication_message,
+ JSON_EXTRACT(detail.Properties, '$.EmailAuthenticationSubject') as email_authentication_subject,
JSON_EXTRACT(detail.Properties, '$.SmsConfiguration') as sms_configuration,
JSON_EXTRACT(detail.Properties, '$.SmsVerificationMessage') as sms_verification_message,
+ JSON_EXTRACT(detail.Properties, '$.WebAuthnRelyingPartyID') as web_authn_relying_party_id,
+ JSON_EXTRACT(detail.Properties, '$.WebAuthnUserVerification') as web_authn_user_verification,
JSON_EXTRACT(detail.Properties, '$.Schema') as _schema,
JSON_EXTRACT(detail.Properties, '$.UsernameConfiguration') as username_configuration,
JSON_EXTRACT(detail.Properties, '$.UserAttributeUpdateSettings') as user_attribute_update_settings,
@@ -2662,7 +3307,8 @@ components:
JSON_EXTRACT(detail.Properties, '$.ProviderName') as provider_name,
JSON_EXTRACT(detail.Properties, '$.ProviderURL') as provider_url,
JSON_EXTRACT(detail.Properties, '$.Arn') as arn,
- JSON_EXTRACT(detail.Properties, '$.UserPoolId') as user_pool_id
+ JSON_EXTRACT(detail.Properties, '$.UserPoolId') as user_pool_id,
+ JSON_EXTRACT(detail.Properties, '$.UserPoolTier') as user_pool_tier
FROM aws.cloud_control.resources listing
LEFT OUTER JOIN aws.cloud_control.resource detail
ON detail.data__Identifier = listing.Identifier
@@ -2692,8 +3338,12 @@ components:
json_extract_path_text(Properties, 'MfaConfiguration') as mfa_configuration,
json_extract_path_text(Properties, 'EnabledMfas') as enabled_mfas,
json_extract_path_text(Properties, 'SmsAuthenticationMessage') as sms_authentication_message,
+ json_extract_path_text(Properties, 'EmailAuthenticationMessage') as email_authentication_message,
+ json_extract_path_text(Properties, 'EmailAuthenticationSubject') as email_authentication_subject,
json_extract_path_text(Properties, 'SmsConfiguration') as sms_configuration,
json_extract_path_text(Properties, 'SmsVerificationMessage') as sms_verification_message,
+ json_extract_path_text(Properties, 'WebAuthnRelyingPartyID') as web_authn_relying_party_id,
+ json_extract_path_text(Properties, 'WebAuthnUserVerification') as web_authn_user_verification,
json_extract_path_text(Properties, 'Schema') as _schema,
json_extract_path_text(Properties, 'UsernameConfiguration') as username_configuration,
json_extract_path_text(Properties, 'UserAttributeUpdateSettings') as user_attribute_update_settings,
@@ -2703,7 +3353,8 @@ components:
json_extract_path_text(Properties, 'ProviderName') as provider_name,
json_extract_path_text(Properties, 'ProviderURL') as provider_url,
json_extract_path_text(Properties, 'Arn') as arn,
- json_extract_path_text(Properties, 'UserPoolId') as user_pool_id
+ json_extract_path_text(Properties, 'UserPoolId') as user_pool_id,
+ json_extract_path_text(Properties, 'UserPoolTier') as user_pool_tier
FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::Cognito::UserPool'
AND data__Identifier = ''
AND region = 'us-east-1'
@@ -2728,8 +3379,12 @@ components:
json_extract_path_text(detail.Properties, 'MfaConfiguration') as mfa_configuration,
json_extract_path_text(detail.Properties, 'EnabledMfas') as enabled_mfas,
json_extract_path_text(detail.Properties, 'SmsAuthenticationMessage') as sms_authentication_message,
+ json_extract_path_text(detail.Properties, 'EmailAuthenticationMessage') as email_authentication_message,
+ json_extract_path_text(detail.Properties, 'EmailAuthenticationSubject') as email_authentication_subject,
json_extract_path_text(detail.Properties, 'SmsConfiguration') as sms_configuration,
json_extract_path_text(detail.Properties, 'SmsVerificationMessage') as sms_verification_message,
+ json_extract_path_text(detail.Properties, 'WebAuthnRelyingPartyID') as web_authn_relying_party_id,
+ json_extract_path_text(detail.Properties, 'WebAuthnUserVerification') as web_authn_user_verification,
json_extract_path_text(detail.Properties, 'Schema') as _schema,
json_extract_path_text(detail.Properties, 'UsernameConfiguration') as username_configuration,
json_extract_path_text(detail.Properties, 'UserAttributeUpdateSettings') as user_attribute_update_settings,
@@ -2739,7 +3394,8 @@ components:
json_extract_path_text(detail.Properties, 'ProviderName') as provider_name,
json_extract_path_text(detail.Properties, 'ProviderURL') as provider_url,
json_extract_path_text(detail.Properties, 'Arn') as arn,
- json_extract_path_text(detail.Properties, 'UserPoolId') as user_pool_id
+ json_extract_path_text(detail.Properties, 'UserPoolId') as user_pool_id,
+ json_extract_path_text(detail.Properties, 'UserPoolTier') as user_pool_tier
FROM aws.cloud_control.resources listing
LEFT OUTER JOIN aws.cloud_control.resource detail
ON detail.data__Identifier = listing.Identifier
@@ -3166,14 +3822,14 @@ components:
json_extract_path_text(Properties, 'GroupName') as group_name
FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::Cognito::UserPoolGroup'
AND region = 'us-east-1'
- user_pool_risk_configuration_attachments:
- name: user_pool_risk_configuration_attachments
- id: aws.cognito.user_pool_risk_configuration_attachments
- x-cfn-schema-name: UserPoolRiskConfigurationAttachment
- x-cfn-type-name: AWS::Cognito::UserPoolRiskConfigurationAttachment
+ user_pool_identity_providers:
+ name: user_pool_identity_providers
+ id: aws.cognito.user_pool_identity_providers
+ x-cfn-schema-name: UserPoolIdentityProvider
+ x-cfn-type-name: AWS::Cognito::UserPoolIdentityProvider
x-identifiers:
- UserPoolId
- - ClientId
+ - ProviderName
x-type: cloud_control
methods:
create_resource:
@@ -3181,12 +3837,12 @@ components:
requestBodyTranslate:
algorithm: naive_DesiredState
operation:
- $ref: '#/paths/~1?Action=CreateResource&Version=2021-09-30&__UserPoolRiskConfigurationAttachment&__detailTransformed=true/post'
+ $ref: '#/paths/~1?Action=CreateResource&Version=2021-09-30&__UserPoolIdentityProvider&__detailTransformed=true/post'
request:
mediaType: application/x-amz-json-1.0
base: |-
{
- "TypeName": "AWS::Cognito::UserPoolRiskConfigurationAttachment"
+ "TypeName": "AWS::Cognito::UserPoolIdentityProvider"
}
response:
mediaType: application/json
@@ -3198,7 +3854,7 @@ components:
mediaType: application/x-amz-json-1.0
base: |-
{
- "TypeName": "AWS::Cognito::UserPoolRiskConfigurationAttachment"
+ "TypeName": "AWS::Cognito::UserPoolIdentityProvider"
}
response:
mediaType: application/json
@@ -3210,18 +3866,18 @@ components:
mediaType: application/x-amz-json-1.0
base: |-
{
- "TypeName": "AWS::Cognito::UserPoolRiskConfigurationAttachment"
+ "TypeName": "AWS::Cognito::UserPoolIdentityProvider"
}
response:
mediaType: application/json
openAPIDocKey: '200'
sqlVerbs:
insert:
- - $ref: '#/components/x-stackQL-resources/user_pool_risk_configuration_attachments/methods/create_resource'
+ - $ref: '#/components/x-stackQL-resources/user_pool_identity_providers/methods/create_resource'
delete:
- - $ref: '#/components/x-stackQL-resources/user_pool_risk_configuration_attachments/methods/delete_resource'
+ - $ref: '#/components/x-stackQL-resources/user_pool_identity_providers/methods/delete_resource'
update:
- - $ref: '#/components/x-stackQL-resources/user_pool_risk_configuration_attachments/methods/update_resource'
+ - $ref: '#/components/x-stackQL-resources/user_pool_identity_providers/methods/update_resource'
config:
views:
select:
@@ -3231,35 +3887,107 @@ components:
region,
data__Identifier,
JSON_EXTRACT(Properties, '$.UserPoolId') as user_pool_id,
- JSON_EXTRACT(Properties, '$.ClientId') as client_id,
- JSON_EXTRACT(Properties, '$.RiskExceptionConfiguration') as risk_exception_configuration,
- JSON_EXTRACT(Properties, '$.CompromisedCredentialsRiskConfiguration') as compromised_credentials_risk_configuration,
- JSON_EXTRACT(Properties, '$.AccountTakeoverRiskConfiguration') as account_takeover_risk_configuration
- FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::Cognito::UserPoolRiskConfigurationAttachment'
- AND data__Identifier = '|'
+ JSON_EXTRACT(Properties, '$.ProviderName') as provider_name,
+ JSON_EXTRACT(Properties, '$.ProviderType') as provider_type,
+ JSON_EXTRACT(Properties, '$.ProviderDetails') as provider_details,
+ JSON_EXTRACT(Properties, '$.IdpIdentifiers') as idp_identifiers,
+ JSON_EXTRACT(Properties, '$.AttributeMapping') as attribute_mapping
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::Cognito::UserPoolIdentityProvider'
+ AND data__Identifier = '|'
AND region = 'us-east-1'
fallback:
- predicate: sqlDialect == "postgres" && requiredParams == [ data__Identifier ]
+ predicate: sqlDialect == "sqlite3"
+ ddl: |-
+ SELECT
+ detail.region,
+ JSON_EXTRACT(detail.Properties, '$.UserPoolId') as user_pool_id,
+ JSON_EXTRACT(detail.Properties, '$.ProviderName') as provider_name,
+ JSON_EXTRACT(detail.Properties, '$.ProviderType') as provider_type,
+ JSON_EXTRACT(detail.Properties, '$.ProviderDetails') as provider_details,
+ JSON_EXTRACT(detail.Properties, '$.IdpIdentifiers') as idp_identifiers,
+ JSON_EXTRACT(detail.Properties, '$.AttributeMapping') as attribute_mapping
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ WHERE listing.data__TypeName = 'AWS::Cognito::UserPoolIdentityProvider'
+ AND detail.data__TypeName = 'AWS::Cognito::UserPoolIdentityProvider'
+ AND listing.region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres" && requiredParams == [ data__Identifier ]
+ ddl: |-
+ SELECT
+ region,
+ data__Identifier,
+ json_extract_path_text(Properties, 'UserPoolId') as user_pool_id,
+ json_extract_path_text(Properties, 'ProviderName') as provider_name,
+ json_extract_path_text(Properties, 'ProviderType') as provider_type,
+ json_extract_path_text(Properties, 'ProviderDetails') as provider_details,
+ json_extract_path_text(Properties, 'IdpIdentifiers') as idp_identifiers,
+ json_extract_path_text(Properties, 'AttributeMapping') as attribute_mapping
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::Cognito::UserPoolIdentityProvider'
+ AND data__Identifier = '|'
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres"
+ ddl: |-
+ SELECT
+ detail.region,
+ json_extract_path_text(detail.Properties, 'UserPoolId') as user_pool_id,
+ json_extract_path_text(detail.Properties, 'ProviderName') as provider_name,
+ json_extract_path_text(detail.Properties, 'ProviderType') as provider_type,
+ json_extract_path_text(detail.Properties, 'ProviderDetails') as provider_details,
+ json_extract_path_text(detail.Properties, 'IdpIdentifiers') as idp_identifiers,
+ json_extract_path_text(detail.Properties, 'AttributeMapping') as attribute_mapping
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ WHERE listing.data__TypeName = 'AWS::Cognito::UserPoolIdentityProvider'
+ AND detail.data__TypeName = 'AWS::Cognito::UserPoolIdentityProvider'
+ AND listing.region = 'us-east-1'
+ user_pool_identity_providers_list_only:
+ name: user_pool_identity_providers_list_only
+ id: aws.cognito.user_pool_identity_providers_list_only
+ x-cfn-schema-name: UserPoolIdentityProvider
+ x-cfn-type-name: AWS::Cognito::UserPoolIdentityProvider
+ x-identifiers:
+ - UserPoolId
+ - ProviderName
+ x-type: cloud_control_view
+ methods: {}
+ sqlVerbs:
+ insert: []
+ delete: []
+ update: []
+ config:
+ views:
+ select:
+ predicate: sqlDialect == "sqlite3"
+ ddl: |-
+ SELECT
+ region,
+ JSON_EXTRACT(Properties, '$.UserPoolId') as user_pool_id,
+ JSON_EXTRACT(Properties, '$.ProviderName') as provider_name
+ FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::Cognito::UserPoolIdentityProvider'
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres"
ddl: |-
SELECT
region,
- data__Identifier,
json_extract_path_text(Properties, 'UserPoolId') as user_pool_id,
- json_extract_path_text(Properties, 'ClientId') as client_id,
- json_extract_path_text(Properties, 'RiskExceptionConfiguration') as risk_exception_configuration,
- json_extract_path_text(Properties, 'CompromisedCredentialsRiskConfiguration') as compromised_credentials_risk_configuration,
- json_extract_path_text(Properties, 'AccountTakeoverRiskConfiguration') as account_takeover_risk_configuration
- FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::Cognito::UserPoolRiskConfigurationAttachment'
- AND data__Identifier = '|'
+ json_extract_path_text(Properties, 'ProviderName') as provider_name
+ FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::Cognito::UserPoolIdentityProvider'
AND region = 'us-east-1'
- user_pool_users:
- name: user_pool_users
- id: aws.cognito.user_pool_users
- x-cfn-schema-name: UserPoolUser
- x-cfn-type-name: AWS::Cognito::UserPoolUser
+ user_pool_resource_servers:
+ name: user_pool_resource_servers
+ id: aws.cognito.user_pool_resource_servers
+ x-cfn-schema-name: UserPoolResourceServer
+ x-cfn-type-name: AWS::Cognito::UserPoolResourceServer
x-identifiers:
- UserPoolId
- - Username
+ - Identifier
x-type: cloud_control
methods:
create_resource:
@@ -3267,12 +3995,24 @@ components:
requestBodyTranslate:
algorithm: naive_DesiredState
operation:
- $ref: '#/paths/~1?Action=CreateResource&Version=2021-09-30&__UserPoolUser&__detailTransformed=true/post'
+ $ref: '#/paths/~1?Action=CreateResource&Version=2021-09-30&__UserPoolResourceServer&__detailTransformed=true/post'
request:
mediaType: application/x-amz-json-1.0
base: |-
{
- "TypeName": "AWS::Cognito::UserPoolUser"
+ "TypeName": "AWS::Cognito::UserPoolResourceServer"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ update_resource:
+ operation:
+ $ref: '#/paths/~1?Action=UpdateResource&Version=2021-09-30/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::Cognito::UserPoolResourceServer"
}
response:
mediaType: application/json
@@ -3284,17 +4024,18 @@ components:
mediaType: application/x-amz-json-1.0
base: |-
{
- "TypeName": "AWS::Cognito::UserPoolUser"
+ "TypeName": "AWS::Cognito::UserPoolResourceServer"
}
response:
mediaType: application/json
openAPIDocKey: '200'
sqlVerbs:
insert:
- - $ref: '#/components/x-stackQL-resources/user_pool_users/methods/create_resource'
+ - $ref: '#/components/x-stackQL-resources/user_pool_resource_servers/methods/create_resource'
delete:
- - $ref: '#/components/x-stackQL-resources/user_pool_users/methods/delete_resource'
- update: []
+ - $ref: '#/components/x-stackQL-resources/user_pool_resource_servers/methods/delete_resource'
+ update:
+ - $ref: '#/components/x-stackQL-resources/user_pool_resource_servers/methods/update_resource'
config:
views:
select:
@@ -3303,9 +4044,314 @@ components:
SELECT
region,
data__Identifier,
- JSON_EXTRACT(Properties, '$.DesiredDeliveryMediums') as desired_delivery_mediums,
- JSON_EXTRACT(Properties, '$.ForceAliasCreation') as force_alias_creation,
- JSON_EXTRACT(Properties, '$.UserAttributes') as user_attributes,
+ JSON_EXTRACT(Properties, '$.UserPoolId') as user_pool_id,
+ JSON_EXTRACT(Properties, '$.Identifier') as identifier,
+ JSON_EXTRACT(Properties, '$.Name') as name,
+ JSON_EXTRACT(Properties, '$.Scopes') as scopes
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::Cognito::UserPoolResourceServer'
+ AND data__Identifier = '|'
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "sqlite3"
+ ddl: |-
+ SELECT
+ detail.region,
+ JSON_EXTRACT(detail.Properties, '$.UserPoolId') as user_pool_id,
+ JSON_EXTRACT(detail.Properties, '$.Identifier') as identifier,
+ JSON_EXTRACT(detail.Properties, '$.Name') as name,
+ JSON_EXTRACT(detail.Properties, '$.Scopes') as scopes
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ WHERE listing.data__TypeName = 'AWS::Cognito::UserPoolResourceServer'
+ AND detail.data__TypeName = 'AWS::Cognito::UserPoolResourceServer'
+ AND listing.region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres" && requiredParams == [ data__Identifier ]
+ ddl: |-
+ SELECT
+ region,
+ data__Identifier,
+ json_extract_path_text(Properties, 'UserPoolId') as user_pool_id,
+ json_extract_path_text(Properties, 'Identifier') as identifier,
+ json_extract_path_text(Properties, 'Name') as name,
+ json_extract_path_text(Properties, 'Scopes') as scopes
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::Cognito::UserPoolResourceServer'
+ AND data__Identifier = '|'
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres"
+ ddl: |-
+ SELECT
+ detail.region,
+ json_extract_path_text(detail.Properties, 'UserPoolId') as user_pool_id,
+ json_extract_path_text(detail.Properties, 'Identifier') as identifier,
+ json_extract_path_text(detail.Properties, 'Name') as name,
+ json_extract_path_text(detail.Properties, 'Scopes') as scopes
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ WHERE listing.data__TypeName = 'AWS::Cognito::UserPoolResourceServer'
+ AND detail.data__TypeName = 'AWS::Cognito::UserPoolResourceServer'
+ AND listing.region = 'us-east-1'
+ user_pool_resource_servers_list_only:
+ name: user_pool_resource_servers_list_only
+ id: aws.cognito.user_pool_resource_servers_list_only
+ x-cfn-schema-name: UserPoolResourceServer
+ x-cfn-type-name: AWS::Cognito::UserPoolResourceServer
+ x-identifiers:
+ - UserPoolId
+ - Identifier
+ x-type: cloud_control_view
+ methods: {}
+ sqlVerbs:
+ insert: []
+ delete: []
+ update: []
+ config:
+ views:
+ select:
+ predicate: sqlDialect == "sqlite3"
+ ddl: |-
+ SELECT
+ region,
+ JSON_EXTRACT(Properties, '$.UserPoolId') as user_pool_id,
+ JSON_EXTRACT(Properties, '$.Identifier') as identifier
+ FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::Cognito::UserPoolResourceServer'
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres"
+ ddl: |-
+ SELECT
+ region,
+ json_extract_path_text(Properties, 'UserPoolId') as user_pool_id,
+ json_extract_path_text(Properties, 'Identifier') as identifier
+ FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::Cognito::UserPoolResourceServer'
+ AND region = 'us-east-1'
+ user_pool_risk_configuration_attachments:
+ name: user_pool_risk_configuration_attachments
+ id: aws.cognito.user_pool_risk_configuration_attachments
+ x-cfn-schema-name: UserPoolRiskConfigurationAttachment
+ x-cfn-type-name: AWS::Cognito::UserPoolRiskConfigurationAttachment
+ x-identifiers:
+ - UserPoolId
+ - ClientId
+ x-type: cloud_control
+ methods:
+ create_resource:
+ config:
+ requestBodyTranslate:
+ algorithm: naive_DesiredState
+ operation:
+ $ref: '#/paths/~1?Action=CreateResource&Version=2021-09-30&__UserPoolRiskConfigurationAttachment&__detailTransformed=true/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::Cognito::UserPoolRiskConfigurationAttachment"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ update_resource:
+ operation:
+ $ref: '#/paths/~1?Action=UpdateResource&Version=2021-09-30/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::Cognito::UserPoolRiskConfigurationAttachment"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ delete_resource:
+ operation:
+ $ref: '#/paths/~1?Action=DeleteResource&Version=2021-09-30/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::Cognito::UserPoolRiskConfigurationAttachment"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ sqlVerbs:
+ insert:
+ - $ref: '#/components/x-stackQL-resources/user_pool_risk_configuration_attachments/methods/create_resource'
+ delete:
+ - $ref: '#/components/x-stackQL-resources/user_pool_risk_configuration_attachments/methods/delete_resource'
+ update:
+ - $ref: '#/components/x-stackQL-resources/user_pool_risk_configuration_attachments/methods/update_resource'
+ config:
+ views:
+ select:
+ predicate: sqlDialect == "sqlite3" && requiredParams == [ data__Identifier ]
+ ddl: |-
+ SELECT
+ region,
+ data__Identifier,
+ JSON_EXTRACT(Properties, '$.UserPoolId') as user_pool_id,
+ JSON_EXTRACT(Properties, '$.ClientId') as client_id,
+ JSON_EXTRACT(Properties, '$.RiskExceptionConfiguration') as risk_exception_configuration,
+ JSON_EXTRACT(Properties, '$.CompromisedCredentialsRiskConfiguration') as compromised_credentials_risk_configuration,
+ JSON_EXTRACT(Properties, '$.AccountTakeoverRiskConfiguration') as account_takeover_risk_configuration
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::Cognito::UserPoolRiskConfigurationAttachment'
+ AND data__Identifier = '|'
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres" && requiredParams == [ data__Identifier ]
+ ddl: |-
+ SELECT
+ region,
+ data__Identifier,
+ json_extract_path_text(Properties, 'UserPoolId') as user_pool_id,
+ json_extract_path_text(Properties, 'ClientId') as client_id,
+ json_extract_path_text(Properties, 'RiskExceptionConfiguration') as risk_exception_configuration,
+ json_extract_path_text(Properties, 'CompromisedCredentialsRiskConfiguration') as compromised_credentials_risk_configuration,
+ json_extract_path_text(Properties, 'AccountTakeoverRiskConfiguration') as account_takeover_risk_configuration
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::Cognito::UserPoolRiskConfigurationAttachment'
+ AND data__Identifier = '|'
+ AND region = 'us-east-1'
+ user_poolui_customization_attachments:
+ name: user_poolui_customization_attachments
+ id: aws.cognito.user_poolui_customization_attachments
+ x-cfn-schema-name: UserPoolUICustomizationAttachment
+ x-cfn-type-name: AWS::Cognito::UserPoolUICustomizationAttachment
+ x-identifiers:
+ - UserPoolId
+ - ClientId
+ x-type: cloud_control
+ methods:
+ create_resource:
+ config:
+ requestBodyTranslate:
+ algorithm: naive_DesiredState
+ operation:
+ $ref: '#/paths/~1?Action=CreateResource&Version=2021-09-30&__UserPoolUICustomizationAttachment&__detailTransformed=true/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::Cognito::UserPoolUICustomizationAttachment"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ update_resource:
+ operation:
+ $ref: '#/paths/~1?Action=UpdateResource&Version=2021-09-30/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::Cognito::UserPoolUICustomizationAttachment"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ delete_resource:
+ operation:
+ $ref: '#/paths/~1?Action=DeleteResource&Version=2021-09-30/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::Cognito::UserPoolUICustomizationAttachment"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ sqlVerbs:
+ insert:
+ - $ref: '#/components/x-stackQL-resources/user_poolui_customization_attachments/methods/create_resource'
+ delete:
+ - $ref: '#/components/x-stackQL-resources/user_poolui_customization_attachments/methods/delete_resource'
+ update:
+ - $ref: '#/components/x-stackQL-resources/user_poolui_customization_attachments/methods/update_resource'
+ config:
+ views:
+ select:
+ predicate: sqlDialect == "sqlite3" && requiredParams == [ data__Identifier ]
+ ddl: |-
+ SELECT
+ region,
+ data__Identifier,
+ JSON_EXTRACT(Properties, '$.UserPoolId') as user_pool_id,
+ JSON_EXTRACT(Properties, '$.ClientId') as client_id,
+ JSON_EXTRACT(Properties, '$.CSS') as c_ss
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::Cognito::UserPoolUICustomizationAttachment'
+ AND data__Identifier = '|'
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres" && requiredParams == [ data__Identifier ]
+ ddl: |-
+ SELECT
+ region,
+ data__Identifier,
+ json_extract_path_text(Properties, 'UserPoolId') as user_pool_id,
+ json_extract_path_text(Properties, 'ClientId') as client_id,
+ json_extract_path_text(Properties, 'CSS') as c_ss
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::Cognito::UserPoolUICustomizationAttachment'
+ AND data__Identifier = '|'
+ AND region = 'us-east-1'
+ user_pool_users:
+ name: user_pool_users
+ id: aws.cognito.user_pool_users
+ x-cfn-schema-name: UserPoolUser
+ x-cfn-type-name: AWS::Cognito::UserPoolUser
+ x-identifiers:
+ - UserPoolId
+ - Username
+ x-type: cloud_control
+ methods:
+ create_resource:
+ config:
+ requestBodyTranslate:
+ algorithm: naive_DesiredState
+ operation:
+ $ref: '#/paths/~1?Action=CreateResource&Version=2021-09-30&__UserPoolUser&__detailTransformed=true/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::Cognito::UserPoolUser"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ delete_resource:
+ operation:
+ $ref: '#/paths/~1?Action=DeleteResource&Version=2021-09-30/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::Cognito::UserPoolUser"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ sqlVerbs:
+ insert:
+ - $ref: '#/components/x-stackQL-resources/user_pool_users/methods/create_resource'
+ delete:
+ - $ref: '#/components/x-stackQL-resources/user_pool_users/methods/delete_resource'
+ update: []
+ config:
+ views:
+ select:
+ predicate: sqlDialect == "sqlite3" && requiredParams == [ data__Identifier ]
+ ddl: |-
+ SELECT
+ region,
+ data__Identifier,
+ JSON_EXTRACT(Properties, '$.DesiredDeliveryMediums') as desired_delivery_mediums,
+ JSON_EXTRACT(Properties, '$.ForceAliasCreation') as force_alias_creation,
+ JSON_EXTRACT(Properties, '$.UserAttributes') as user_attributes,
JSON_EXTRACT(Properties, '$.MessageAction') as message_action,
JSON_EXTRACT(Properties, '$.Username') as username,
JSON_EXTRACT(Properties, '$.UserPoolId') as user_pool_id,
@@ -3786,6 +4832,48 @@ paths:
schema:
$ref: '#/components/x-cloud-control-schemas/ProgressEvent'
description: Success
+ /?Action=CreateResource&Version=2021-09-30&__ManagedLoginBranding&__detailTransformed=true:
+ parameters:
+ - $ref: '#/components/parameters/X-Amz-Content-Sha256'
+ - $ref: '#/components/parameters/X-Amz-Date'
+ - $ref: '#/components/parameters/X-Amz-Algorithm'
+ - $ref: '#/components/parameters/X-Amz-Credential'
+ - $ref: '#/components/parameters/X-Amz-Security-Token'
+ - $ref: '#/components/parameters/X-Amz-Signature'
+ - $ref: '#/components/parameters/X-Amz-SignedHeaders'
+ post:
+ operationId: CreateManagedLoginBranding
+ parameters:
+ - description: Action Header
+ in: header
+ name: X-Amz-Target
+ required: false
+ schema:
+ default: CloudApiService.CreateResource
+ enum:
+ - CloudApiService.CreateResource
+ type: string
+ - in: header
+ name: Content-Type
+ required: false
+ schema:
+ default: application/x-amz-json-1.0
+ enum:
+ - application/x-amz-json-1.0
+ type: string
+ requestBody:
+ content:
+ application/x-amz-json-1.0:
+ schema:
+ $ref: '#/components/schemas/CreateManagedLoginBrandingRequest'
+ required: true
+ responses:
+ '200':
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/x-cloud-control-schemas/ProgressEvent'
+ description: Success
/?Action=CreateResource&Version=2021-09-30&__UserPool&__detailTransformed=true:
parameters:
- $ref: '#/components/parameters/X-Amz-Content-Sha256'
@@ -3912,6 +5000,90 @@ paths:
schema:
$ref: '#/components/x-cloud-control-schemas/ProgressEvent'
description: Success
+ /?Action=CreateResource&Version=2021-09-30&__UserPoolIdentityProvider&__detailTransformed=true:
+ parameters:
+ - $ref: '#/components/parameters/X-Amz-Content-Sha256'
+ - $ref: '#/components/parameters/X-Amz-Date'
+ - $ref: '#/components/parameters/X-Amz-Algorithm'
+ - $ref: '#/components/parameters/X-Amz-Credential'
+ - $ref: '#/components/parameters/X-Amz-Security-Token'
+ - $ref: '#/components/parameters/X-Amz-Signature'
+ - $ref: '#/components/parameters/X-Amz-SignedHeaders'
+ post:
+ operationId: CreateUserPoolIdentityProvider
+ parameters:
+ - description: Action Header
+ in: header
+ name: X-Amz-Target
+ required: false
+ schema:
+ default: CloudApiService.CreateResource
+ enum:
+ - CloudApiService.CreateResource
+ type: string
+ - in: header
+ name: Content-Type
+ required: false
+ schema:
+ default: application/x-amz-json-1.0
+ enum:
+ - application/x-amz-json-1.0
+ type: string
+ requestBody:
+ content:
+ application/x-amz-json-1.0:
+ schema:
+ $ref: '#/components/schemas/CreateUserPoolIdentityProviderRequest'
+ required: true
+ responses:
+ '200':
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/x-cloud-control-schemas/ProgressEvent'
+ description: Success
+ /?Action=CreateResource&Version=2021-09-30&__UserPoolResourceServer&__detailTransformed=true:
+ parameters:
+ - $ref: '#/components/parameters/X-Amz-Content-Sha256'
+ - $ref: '#/components/parameters/X-Amz-Date'
+ - $ref: '#/components/parameters/X-Amz-Algorithm'
+ - $ref: '#/components/parameters/X-Amz-Credential'
+ - $ref: '#/components/parameters/X-Amz-Security-Token'
+ - $ref: '#/components/parameters/X-Amz-Signature'
+ - $ref: '#/components/parameters/X-Amz-SignedHeaders'
+ post:
+ operationId: CreateUserPoolResourceServer
+ parameters:
+ - description: Action Header
+ in: header
+ name: X-Amz-Target
+ required: false
+ schema:
+ default: CloudApiService.CreateResource
+ enum:
+ - CloudApiService.CreateResource
+ type: string
+ - in: header
+ name: Content-Type
+ required: false
+ schema:
+ default: application/x-amz-json-1.0
+ enum:
+ - application/x-amz-json-1.0
+ type: string
+ requestBody:
+ content:
+ application/x-amz-json-1.0:
+ schema:
+ $ref: '#/components/schemas/CreateUserPoolResourceServerRequest'
+ required: true
+ responses:
+ '200':
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/x-cloud-control-schemas/ProgressEvent'
+ description: Success
/?Action=CreateResource&Version=2021-09-30&__UserPoolRiskConfigurationAttachment&__detailTransformed=true:
parameters:
- $ref: '#/components/parameters/X-Amz-Content-Sha256'
@@ -3954,6 +5126,48 @@ paths:
schema:
$ref: '#/components/x-cloud-control-schemas/ProgressEvent'
description: Success
+ /?Action=CreateResource&Version=2021-09-30&__UserPoolUICustomizationAttachment&__detailTransformed=true:
+ parameters:
+ - $ref: '#/components/parameters/X-Amz-Content-Sha256'
+ - $ref: '#/components/parameters/X-Amz-Date'
+ - $ref: '#/components/parameters/X-Amz-Algorithm'
+ - $ref: '#/components/parameters/X-Amz-Credential'
+ - $ref: '#/components/parameters/X-Amz-Security-Token'
+ - $ref: '#/components/parameters/X-Amz-Signature'
+ - $ref: '#/components/parameters/X-Amz-SignedHeaders'
+ post:
+ operationId: CreateUserPoolUICustomizationAttachment
+ parameters:
+ - description: Action Header
+ in: header
+ name: X-Amz-Target
+ required: false
+ schema:
+ default: CloudApiService.CreateResource
+ enum:
+ - CloudApiService.CreateResource
+ type: string
+ - in: header
+ name: Content-Type
+ required: false
+ schema:
+ default: application/x-amz-json-1.0
+ enum:
+ - application/x-amz-json-1.0
+ type: string
+ requestBody:
+ content:
+ application/x-amz-json-1.0:
+ schema:
+ $ref: '#/components/schemas/CreateUserPoolUICustomizationAttachmentRequest'
+ required: true
+ responses:
+ '200':
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/x-cloud-control-schemas/ProgressEvent'
+ description: Success
/?Action=CreateResource&Version=2021-09-30&__UserPoolUser&__detailTransformed=true:
parameters:
- $ref: '#/components/parameters/X-Amz-Content-Sha256'
diff --git a/providers/src/aws/v00.00.00000/services/comprehend.yaml b/providers/src/aws/v00.00.00000/services/comprehend.yaml
index cc70822c..afc26113 100644
--- a/providers/src/aws/v00.00.00000/services/comprehend.yaml
+++ b/providers/src/aws/v00.00.00000/services/comprehend.yaml
@@ -632,6 +632,9 @@ components:
tagUpdatable: true
cloudFormationSystemTags: true
tagProperty: /properties/Tags
+ permissions:
+ - comprehend:TagResource
+ - comprehend:UntagResource
x-required-permissions:
create:
- iam:PassRole
diff --git a/providers/src/aws/v00.00.00000/services/config.yaml b/providers/src/aws/v00.00.00000/services/config.yaml
index bcb80f24..70c7ac36 100644
--- a/providers/src/aws/v00.00.00000/services/config.yaml
+++ b/providers/src/aws/v00.00.00000/services/config.yaml
@@ -448,6 +448,10 @@ components:
tagUpdatable: true
cloudFormationSystemTags: false
tagProperty: /properties/Tags
+ permissions:
+ - config:TagResource
+ - config:UntagResource
+ - config:ListTagsForResource
x-required-permissions:
create:
- config:DescribeAggregationAuthorizations
@@ -733,6 +737,10 @@ components:
tagUpdatable: true
cloudFormationSystemTags: false
tagProperty: /properties/Tags
+ permissions:
+ - config:TagResource
+ - config:UntagResource
+ - config:ListTagsForResource
x-required-permissions:
create:
- config:PutConfigurationAggregator
@@ -1026,6 +1034,10 @@ components:
tagUpdatable: true
cloudFormationSystemTags: true
tagProperty: /properties/Tags
+ permissions:
+ - config:TagResource
+ - config:UntagResource
+ - config:ListTagsForResource
x-required-permissions:
create:
- config:PutStoredQuery
diff --git a/providers/src/aws/v00.00.00000/services/connect.yaml b/providers/src/aws/v00.00.00000/services/connect.yaml
index edc34761..4c87bb93 100644
--- a/providers/src/aws/v00.00.00000/services/connect.yaml
+++ b/providers/src/aws/v00.00.00000/services/connect.yaml
@@ -385,6 +385,118 @@ components:
$ref: '#/components/x-cloud-control-schemas/ProgressEvent'
type: object
schemas:
+ Tag:
+ description: A key-value pair to associate with a resource.
+ type: object
+ additionalProperties: false
+ properties:
+ Key:
+ type: string
+ description: The key name of the tag. You can specify a value that is 1 to 128 Unicode characters
+ pattern: ^(?!aws:)[a-zA-Z+-=._:/]+$
+ minLength: 1
+ maxLength: 128
+ Value:
+ type: string
+ description: The value for the tag. . You can specify a value that is maximum of 256 Unicode characters
+ maxLength: 256
+ required:
+ - Key
+ - Value
+ AgentStatus:
+ type: object
+ properties:
+ InstanceArn:
+ description: The identifier of the Amazon Connect instance.
+ type: string
+ pattern: ^arn:aws[-a-z0-9]*:connect:[-a-z0-9]*:[0-9]{12}:instance/[-a-zA-Z0-9]*$
+ AgentStatusArn:
+ description: The Amazon Resource Name (ARN) of the agent status.
+ type: string
+ pattern: ^arn:aws[-a-z0-9]*:connect:[-a-z0-9]*:[0-9]{12}:instance/[-a-zA-Z0-9]*/agent-state/[-a-zA-Z0-9]*$
+ Description:
+ description: The description of the status.
+ type: string
+ minLength: 1
+ maxLength: 250
+ Name:
+ description: The name of the status.
+ type: string
+ minLength: 1
+ maxLength: 127
+ DisplayOrder:
+ description: The display order of the status.
+ type: integer
+ minimum: 1
+ maximum: 50
+ State:
+ type: string
+ description: The state of the status.
+ enum:
+ - ENABLED
+ - DISABLED
+ Type:
+ type: string
+ description: The type of agent status.
+ enum:
+ - ROUTABLE
+ - CUSTOM
+ - OFFLINE
+ ResetOrderNumber:
+ type: boolean
+ description: A number indicating the reset order of the agent status.
+ Tags:
+ type: array
+ maxItems: 50
+ uniqueItems: true
+ x-insertionOrder: false
+ description: An array of key-value pairs to apply to this resource.
+ items:
+ $ref: '#/components/schemas/Tag'
+ LastModifiedRegion:
+ description: Last modified region.
+ type: string
+ pattern: '[a-z]{2}(-[a-z]+){1,2}(-[0-9])?'
+ LastModifiedTime:
+ description: Last modified time.
+ type: number
+ required:
+ - InstanceArn
+ - Name
+ - State
+ x-stackql-resource-name: agent_status
+ description: Resource Type definition for AWS::Connect::AgentStatus
+ x-type-name: AWS::Connect::AgentStatus
+ x-stackql-primary-identifier:
+ - AgentStatusArn
+ x-read-only-properties:
+ - AgentStatusArn
+ - LastModifiedRegion
+ - LastModifiedTime
+ x-required-properties:
+ - InstanceArn
+ - Name
+ - State
+ x-tagging:
+ taggable: true
+ tagOnCreate: true
+ tagUpdatable: true
+ cloudFormationSystemTags: true
+ tagProperty: /properties/Tags
+ x-required-permissions:
+ create:
+ - connect:CreateAgentStatus
+ - connect:TagResource
+ - connect:ListAgentStatuses
+ read:
+ - connect:DescribeAgentStatus
+ delete: []
+ update:
+ - connect:UpdateAgentStatus
+ - connect:UntagResource
+ - connect:TagResource
+ list:
+ - connect:ListAgentStatuses
Origin:
description: Domain name to be added to the allowlist of instance
type: string
@@ -434,24 +546,6 @@ components:
- connect:ListApprovedOrigins
list:
- connect:ListApprovedOrigins
- Tag:
- description: A key-value pair to associate with a resource.
- type: object
- additionalProperties: false
- properties:
- Key:
- type: string
- description: The key name of the tag. You can specify a value that is 1 to 128 Unicode characters
- pattern: ^(?!aws:)[a-zA-Z+-=._:/]+$
- minLength: 1
- maxLength: 128
- Value:
- type: string
- description: The value for the tag. . You can specify a value that is maximum of 256 Unicode characters
- maxLength: 256
- required:
- - Key
- - Value
ContactFlow:
type: object
properties:
@@ -500,6 +594,7 @@ components:
- OUTBOUND_WHISPER
- AGENT_TRANSFER
- QUEUE_TRANSFER
+ - CAMPAIGN
Tags:
description: One or more tags.
type: array
@@ -533,6 +628,10 @@ components:
tagUpdatable: true
cloudFormationSystemTags: true
tagProperty: /properties/Tags
+ permissions:
+ - connect:ListTagsForResource
+ - connect:UntagResource
+ - connect:TagResource
x-required-permissions:
create:
- connect:CreateContactFlow
@@ -618,6 +717,10 @@ components:
tagUpdatable: true
cloudFormationSystemTags: true
tagProperty: /properties/Tags
+ permissions:
+ - connect:ListTagsForResource
+ - connect:UntagResource
+ - connect:TagResource
x-required-permissions:
create:
- connect:CreateContactFlowModule
@@ -634,6 +737,93 @@ components:
- connect:UntagResource
list:
- connect:ListContactFlowModules
+ EmailAddress:
+ type: object
+ properties:
+ InstanceArn:
+ description: The identifier of the Amazon Connect instance.
+ type: string
+ pattern: ^arn:(aws|aws-us-gov):connect:[a-z]{2}-[a-z]+-[0-9]{1}:[0-9]{1,20}:instance/[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}$
+ minLength: 1
+ maxLength: 250
+ EmailAddressArn:
+ description: The identifier of the email address.
+ type: string
+ pattern: ^arn:(aws|aws-us-gov):connect:[a-z]{2}-[a-z]+-[0-9]{1}:[0-9]{1,20}:instance/[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}/email-address/[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}$
+ Description:
+ description: A description for the email address.
+ type: string
+ pattern: (^[\S].*[\S]$)|(^[\S]$)
+ minLength: 1
+ maxLength: 250
+ EmailAddress:
+ description: Email address to be created for this instance
+ type: string
+ pattern: ([^\s@]+@[^\s@]+\.[^\s@]+)
+ minLength: 1
+ maxLength: 255
+ DisplayName:
+ description: The display name for the email address.
+ type: string
+ pattern: (^[\S].*[\S]$)|(^[\S]$)
+ minLength: 0
+ maxLength: 256
+ Tags:
+ type: array
+ maxItems: 50
+ uniqueItems: true
+ x-insertionOrder: false
+ description: One or more tags.
+ items:
+ $ref: '#/components/schemas/Tag'
+ required:
+ - InstanceArn
+ - EmailAddress
+ x-stackql-resource-name: email_address
+ description: Resource Type definition for AWS::Connect::EmailAddress
+ x-type-name: AWS::Connect::EmailAddress
+ x-stackql-primary-identifier:
+ - EmailAddressArn
+ x-create-only-properties:
+ - EmailAddress
+ x-read-only-properties:
+ - EmailAddressArn
+ x-required-properties:
+ - InstanceArn
+ - EmailAddress
+ x-tagging:
+ taggable: true
+ tagOnCreate: true
+ tagUpdatable: true
+ cloudFormationSystemTags: true
+ tagProperty: /properties/Tags
+ permissions:
+ - connect:TagResource
+ - connect:UntagResource
+ x-required-permissions:
+ create:
+ - connect:CreateEmailAddress
+ - connect:TagResource
+ - connect:ListIntegrationAssociations
+ - ses:GetEmailIdentity
+ - ses:DescribeReceiptRule
+ - ses:UpdateReceiptRule
+ - iam:PassRole
+ read:
+ - connect:DescribeEmailAddress
+ update:
+ - connect:UpdateEmailAddressMetadata
+ - connect:TagResource
+ - connect:UntagResource
+ delete:
+ - connect:DeleteEmailAddress
+ - connect:UntagResource
+ - iam:PassRole
+ - ses:DescribeReceiptRule
+ - ses:UpdateReceiptRule
+ list:
+ - connect:DescribeEmailAddress
+ - connect:SearchEmailAddresses
RefId:
description: The identifier to reference the item.
type: string
@@ -649,45 +839,51 @@ components:
minimum: 0
maximum: 10
EvaluationFormBaseItem:
- description: The evaluation form base item.
+ description: An item at the root level. All items must be sections.
type: object
additionalProperties: false
properties:
Section:
- description: The evaluation form section item
+ description: A subsection or inner section of an item.
$ref: '#/components/schemas/EvaluationFormSection'
required:
- Section
EvaluationFormItem:
- description: The evaluation form item.
+ description: Items that are part of the evaluation form. The total number of sections and questions must not exceed 100 each. Questions must be contained in a section.
type: object
additionalProperties: false
properties:
Section:
- description: The evaluation form section item
+ description: The information of the section.
$ref: '#/components/schemas/EvaluationFormSection'
Question:
- description: The evaluation form question item
+ description: The information of the question.
$ref: '#/components/schemas/EvaluationFormQuestion'
EvaluationFormSection:
- description: The evaluation form section.
+ description: Information about a section from an evaluation form. A section can contain sections and/or questions. Evaluation forms can only contain sections and subsections (two level nesting).
type: object
additionalProperties: false
properties:
Title:
- description: The title of the section.
+ description: |-
+ The title of the section.
+ *Length Constraints*: Minimum length of 1. Maximum length of 128.
type: string
minLength: 1
maxLength: 128
Instructions:
- description: The instructions for the section.
+ description: The instructions of the section.
type: string
maxLength: 1024
RefId:
- description: The identifier to reference the section.
+ description: |-
+ The identifier of the section. An identifier must be unique within the evaluation form.
+ *Length Constraints*: Minimum length of 1. Maximum length of 40.
$ref: '#/components/schemas/RefId'
Items:
- description: The list of section items.
+ description: |-
+ The items of the section.
+ *Minimum*: 1
type: array
x-insertionOrder: true
minItems: 1
@@ -695,38 +891,44 @@ components:
items:
$ref: '#/components/schemas/EvaluationFormItem'
Weight:
- description: The item weight used for scoring.
+ description: |-
+ The scoring weight of the section.
+ *Minimum*: 0
+ *Maximum*: 100
$ref: '#/components/schemas/Weight'
required:
- RefId
- Title
EvaluationFormNumericQuestionOption:
- description: The option ranges used for scoring in numeric questions.
+ description: Information about the option range used for scoring in numeric questions.
type: object
additionalProperties: false
properties:
MinValue:
- description: The minimum value of the option range.
+ description: The minimum answer value of the range option.
type: integer
MaxValue:
- description: The maximum value of the option range.
+ description: The maximum answer value of the range option.
type: integer
Score:
- description: The score of the option range.
+ description: |-
+ The score assigned to answer values within the range option.
+ *Minimum*: 0
+ *Maximum*: 10
$ref: '#/components/schemas/Score'
AutomaticFail:
- description: The flag to mark the option as automatic fail.
+ description: The flag to mark the option as automatic fail. If an automatic fail answer is provided, the overall evaluation gets a score of 0.
type: boolean
required:
- MinValue
- MaxValue
NumericQuestionPropertyValueAutomation:
- description: The automation property name of the question.
+ description: Information about the property value used in automation of a numeric questions.
type: object
additionalProperties: false
properties:
Label:
- description: The automation property label.
+ description: The property label of the automation.
type: string
enum:
- OVERALL_CUSTOMER_SENTIMENT_SCORE
@@ -740,28 +942,28 @@ components:
required:
- Label
EvaluationFormNumericQuestionAutomation:
- description: The automation properties for the numeric question.
+ description: Information about the automation configuration in numeric questions.
type: object
additionalProperties: false
properties:
PropertyValue:
- description: The automation property name of the question.
+ description: The property value of the automation.
$ref: '#/components/schemas/NumericQuestionPropertyValueAutomation'
required:
- PropertyValue
EvaluationFormNumericQuestionProperties:
- description: The properties of the numeric question.
+ description: Information about properties for a numeric question in an evaluation form.
type: object
additionalProperties: false
properties:
MinValue:
- description: The minimum value for answers of the question.
+ description: The minimum answer value.
type: integer
MaxValue:
- description: The maximum value for answers of the question.
+ description: The maximum answer value.
type: integer
Options:
- description: The list of option ranges used for scoring.
+ description: The scoring options of the numeric question.
type: array
x-insertionOrder: true
minItems: 1
@@ -769,51 +971,64 @@ components:
items:
$ref: '#/components/schemas/EvaluationFormNumericQuestionOption'
Automation:
- description: The automation properties for the numeric question.
+ description: The automation properties of the numeric question.
$ref: '#/components/schemas/EvaluationFormNumericQuestionAutomation'
required:
- MinValue
- MaxValue
EvaluationFormSingleSelectQuestionAutomationOption:
- description: The automation option for the single-select question.
+ description: The automation options of the single select question.
type: object
additionalProperties: false
properties:
RuleCategory:
- description: The automation option based on Rules categories.
+ description: The automation option based on a rule category for the single select question.
$ref: '#/components/schemas/SingleSelectQuestionRuleCategoryAutomation'
required:
- RuleCategory
SingleSelectQuestionRuleCategoryAutomation:
- description: The automation option based on Rules categories.
+ description: |-
+ Information about the automation option based on a rule category for a single select question.
+ *Length Constraints*: Minimum length of 1. Maximum length of 50.
type: object
additionalProperties: false
properties:
Category:
- description: The category name as defined in Rules.
+ description: |-
+ The category name, as defined in Rules.
+ *Minimum*: 1
+ *Maximum*: 50
type: string
minLength: 1
maxLength: 50
Condition:
- description: The automation condition applied on contact categories.
+ description: |-
+ The condition to apply for the automation option. If the condition is PRESENT, then the option is applied when the contact data includes the category. Similarly, if the condition is NOT_PRESENT, then the option is applied when the contact data does not include the category.
+ *Allowed values*: ``PRESENT`` | ``NOT_PRESENT``
+ *Maximum*: 50
type: string
enum:
- PRESENT
- NOT_PRESENT
OptionRefId:
- description: The option identifier referencing the option to be selected when the automation option is triggered.
+ description: |-
+ The identifier of the answer option. An identifier must be unique within the question.
+ *Length Constraints*: Minimum length of 1. Maximum length of 40.
$ref: '#/components/schemas/RefId'
required:
- Category
- Condition
- OptionRefId
EvaluationFormSingleSelectQuestionAutomation:
- description: The automation properties for the single-select question.
+ description: Information about the automation configuration in single select questions. Automation options are evaluated in order, and the first matched option is applied. If no automation option matches, and there is a default option, then the default option is applied.
type: object
additionalProperties: false
properties:
Options:
- description: The answer options for the automation.
+ description: |-
+ The automation options of the single select question.
+ *Minimum*: 1
+ *Maximum*: 20
type: array
x-insertionOrder: true
minItems: 1
@@ -821,39 +1036,51 @@ components:
items:
$ref: '#/components/schemas/EvaluationFormSingleSelectQuestionAutomationOption'
DefaultOptionRefId:
- description: The option reference identifier of the default answer.
+ description: |-
+ The identifier of the default answer option, when none of the automation options match the criteria.
+ *Length Constraints*: Minimum length of 1. Maximum length of 40.
$ref: '#/components/schemas/RefId'
required:
- Options
EvaluationFormSingleSelectQuestionOption:
- description: The option for a question.
+ description: Information about the automation configuration in single select questions.
type: object
additionalProperties: false
properties:
RefId:
- description: The identifier used to reference the option.
+ description: |-
+ The identifier of the answer option. An identifier must be unique within the question.
+ *Length Constraints*: Minimum length of 1. Maximum length of 40.
$ref: '#/components/schemas/RefId'
Text:
- description: The title of the option.
+ description: |-
+ The title of the answer option.
+ *Length Constraints*: Minimum length of 1. Maximum length of 128.
type: string
minLength: 1
maxLength: 128
Score:
- description: The score of the option.
+ description: |-
+ The score assigned to the answer option.
+ *Minimum*: 0
+ *Maximum*: 10
$ref: '#/components/schemas/Score'
AutomaticFail:
- description: The flag to mark the option as automatic fail.
+ description: The flag to mark the option as automatic fail. If an automatic fail answer is provided, the overall evaluation gets a score of 0.
type: boolean
required:
- RefId
- Text
EvaluationFormSingleSelectQuestionProperties:
- description: The properties of the single-select question.
+ description: Information about the options in single select questions.
type: object
additionalProperties: false
properties:
Options:
- description: The list of options for the question.
+ description: |-
+ The answer options of the single select question.
+ *Minimum*: 2
+ *Maximum*: 256
type: array
x-insertionOrder: true
minItems: 2
@@ -861,18 +1088,20 @@ components:
items:
$ref: '#/components/schemas/EvaluationFormSingleSelectQuestionOption'
DisplayAs:
- description: The display mode of the single-select question.
+ description: |-
+ The display mode of the single select question.
+ *Allowed values*: ``DROPDOWN`` | ``RADIO``
type: string
enum:
- DROPDOWN
- RADIO
Automation:
- description: The automation properties for the single-select question.
+ description: The display mode of the single select question.
$ref: '#/components/schemas/EvaluationFormSingleSelectQuestionAutomation'
required:
- Options
EvaluationFormQuestionTypeProperties:
- description: The properties of the question.
+ description: Information about properties for a question in an evaluation form. The question type properties must be either for a numeric question or a single select question.
type: object
additionalProperties: false
properties:
@@ -880,58 +1109,73 @@ components:
description: The properties of the numeric question.
$ref: '#/components/schemas/EvaluationFormNumericQuestionProperties'
SingleSelect:
- description: The properties of the single-select question.
+ description: The properties of the numeric question.
$ref: '#/components/schemas/EvaluationFormSingleSelectQuestionProperties'
EvaluationFormQuestion:
- description: The evaluation form question.
+ description: Information about a question from an evaluation form.
type: object
additionalProperties: false
properties:
Title:
- description: The title of the question.
+ description: |-
+ The title of the question.
+ *Length Constraints*: Minimum length of 1. Maximum length of 350.
type: string
minLength: 1
maxLength: 350
Instructions:
- description: The instructions for the question.
+ description: |-
+ The instructions of the section.
+ *Length Constraints*: Minimum length of 0. Maximum length of 1024.
type: string
maxLength: 1024
RefId:
- description: The identifier used to reference the question.
+ description: |-
+ The identifier of the question. An identifier must be unique within the evaluation form.
+ *Length Constraints*: Minimum length of 1. Maximum length of 40.
$ref: '#/components/schemas/RefId'
NotApplicableEnabled:
description: The flag to enable not applicable answers to the question.
type: boolean
QuestionType:
- description: The type of the question.
+ description: |-
+ The type of the question.
+ *Allowed values*: ``NUMERIC`` | ``SINGLESELECT`` | ``TEXT``
type: string
enum:
- NUMERIC
- SINGLESELECT
- TEXT
QuestionTypeProperties:
- description: The properties of the question
+ description: The properties of the type of question. Text questions do not have to define question type properties.
$ref: '#/components/schemas/EvaluationFormQuestionTypeProperties'
Weight:
- description: The question weight used for scoring.
+ description: |-
+ The scoring weight of the section.
+ *Minimum*: 0
+ *Maximum*: 100
$ref: '#/components/schemas/Weight'
required:
- RefId
- Title
- QuestionType
ScoringStrategy:
- description: The scoring strategy.
+ description: A scoring strategy of the evaluation form.
type: object
additionalProperties: false
properties:
Mode:
- description: The scoring mode.
+ description: |-
+ The scoring mode of the evaluation form.
+ *Allowed values*: ``QUESTION_ONLY`` | ``SECTION_ONLY``
type: string
enum:
- QUESTION_ONLY
- SECTION_ONLY
Status:
- description: The scoring status.
+ description: |-
+ The scoring status of the evaluation form.
+ *Allowed values*: ``ENABLED`` | ``DISABLED``
type: string
enum:
- ENABLED
@@ -943,24 +1187,29 @@ components:
type: object
properties:
Title:
- description: The title of the evaluation form.
+ description: A title of the evaluation form.
type: string
minLength: 1
maxLength: 128
Description:
- description: The description of the evaluation form.
+ description: |-
+ The description of the evaluation form.
+ *Length Constraints*: Minimum length of 0. Maximum length of 1024.
type: string
maxLength: 1024
EvaluationFormArn:
- description: The Amazon Resource Name (ARN) for the evaluation form.
+ description: ''
type: string
pattern: ^arn:aws[-a-z0-9]*:connect:[-a-z0-9]*:[0-9]{12}:instance/[-a-zA-Z0-9]*/evaluation-form/[-a-zA-Z0-9]*$
InstanceArn:
- description: The Amazon Resource Name (ARN) of the instance.
+ description: The identifier of the Amazon Connect instance.
type: string
pattern: ^arn:aws[-a-z0-9]*:connect:[-a-z0-9]*:[0-9]{12}:instance/[-a-zA-Z0-9]*$
Items:
- description: The list of evaluation form items.
+ description: |-
+ Items that are part of the evaluation form. The total number of sections and questions must not exceed 100 each. Questions must be contained in a section.
+ *Minimum size*: 1
+ *Maximum size*: 100
type: array
x-insertionOrder: true
minItems: 1
@@ -968,17 +1217,19 @@ components:
items:
$ref: '#/components/schemas/EvaluationFormBaseItem'
ScoringStrategy:
- description: The scoring strategy.
+ description: A scoring strategy of the evaluation form.
$ref: '#/components/schemas/ScoringStrategy'
Status:
- description: The status of the evaluation form.
+ description: |-
+ The status of the evaluation form.
+ *Allowed values*: ``DRAFT`` | ``ACTIVE``
type: string
default: DRAFT
enum:
- DRAFT
- ACTIVE
Tags:
- description: One or more tags.
+ description: 'The tags used to organize, track, or control access for this resource. For example, { "tags": {"key1":"value1", "key2":"value2"} }.'
type: array
maxItems: 50
uniqueItems: true
@@ -991,7 +1242,7 @@ components:
- Items
- Status
x-stackql-resource-name: evaluation_form
- description: Resource Type definition for AWS::Connect::EvaluationForm
+ description: Creates an evaluation form for the specified CON instance.
x-type-name: AWS::Connect::EvaluationForm
x-stackql-primary-identifier:
- EvaluationFormArn
@@ -1008,6 +1259,10 @@ components:
tagUpdatable: true
cloudFormationSystemTags: true
tagProperty: /properties/Tags
+ permissions:
+ - connect:ListTagsForResource
+ - connect:UntagResource
+ - connect:TagResource
x-required-permissions:
create:
- connect:CreateEvaluationForm
@@ -1072,6 +1327,102 @@ components:
- Day
- StartTime
- EndTime
+ OverrideTimeSlice:
+ description: The start time or end time for an an hours of operation override.
+ type: object
+ additionalProperties: false
+ properties:
+ Hours:
+ type: integer
+ description: The hours.
+ minimum: 0
+ maximum: 23
+ Minutes:
+ type: integer
+ description: The minutes.
+ minimum: 0
+ maximum: 59
+ required:
+ - Hours
+ - Minutes
+ HoursOfOperationOverrideConfig:
+ description: Contains information about the hours of operation override.
+ type: object
+ additionalProperties: false
+ properties:
+ Day:
+ type: string
+ description: The day that the hours of operation override applies to.
+ enum:
+ - SUNDAY
+ - MONDAY
+ - TUESDAY
+ - WEDNESDAY
+ - THURSDAY
+ - FRIDAY
+ - SATURDAY
+ StartTime:
+ description: The new start time that your contact center opens for the overriden days.
+ $ref: '#/components/schemas/OverrideTimeSlice'
+ EndTime:
+ description: The new end time that your contact center closes for the overriden days.
+ $ref: '#/components/schemas/OverrideTimeSlice'
+ required:
+ - Day
+ - StartTime
+ - EndTime
+ HoursOfOperationOverride:
+ description: Overrides attached to the hours of operation.
+ type: object
+ additionalProperties: false
+ properties:
+ OverrideName:
+ $ref: '#/components/schemas/OverrideName'
+ OverrideDescription:
+ $ref: '#/components/schemas/OverrideDescription'
+ EffectiveFrom:
+ $ref: '#/components/schemas/EffectiveFrom'
+ EffectiveTill:
+ $ref: '#/components/schemas/EffectiveTill'
+ OverrideConfig:
+ $ref: '#/components/schemas/OverrideConfig'
+ HoursOfOperationOverrideId:
+ $ref: '#/components/schemas/HoursOfOperationOverrideId'
+ required:
+ - OverrideName
+ - EffectiveFrom
+ - EffectiveTill
+ - OverrideConfig
+ OverrideName:
+ description: The name of the hours of operation override.
+ type: string
+ minLength: 1
+ maxLength: 127
+ OverrideDescription:
+ description: The description of the hours of operation override.
+ type: string
+ minLength: 1
+ maxLength: 250
+ EffectiveFrom:
+ description: The date from which the hours of operation override would be effective.
+ type: string
+ pattern: ^\d{4}-\d{2}-\d{2}$
+ EffectiveTill:
+ description: The date till which the hours of operation override would be effective.
+ type: string
+ pattern: ^\d{4}-\d{2}-\d{2}$
+ OverrideConfig:
+ description: 'Configuration information for the hours of operation override: day, start time, and end time.'
+ type: array
+ maxItems: 100
+ uniqueItems: true
+ x-insertionOrder: false
+ items:
+ $ref: '#/components/schemas/HoursOfOperationOverrideConfig'
+ HoursOfOperationOverrideId:
+ description: The Resource Identifier for the hours of operation override.
+ type: string
+ pattern: ^[-a-zA-Z0-9]*$
HoursOfOperation:
type: object
properties:
@@ -1112,6 +1463,13 @@ components:
x-insertionOrder: false
items:
$ref: '#/components/schemas/Tag'
+ HoursOfOperationOverrides:
+ description: One or more hours of operation overrides assigned to an hour of operation.
+ type: array
+ maxItems: 50
+ x-insertionOrder: false
+ items:
+ $ref: '#/components/schemas/HoursOfOperationOverride'
required:
- InstanceArn
- Name
@@ -1135,17 +1493,26 @@ components:
tagUpdatable: true
cloudFormationSystemTags: true
tagProperty: /properties/Tags
+ permissions:
+ - connect:TagResource
+ - connect:UntagResource
x-required-permissions:
create:
- connect:CreateHoursOfOperation
- connect:TagResource
+ - connect:CreateHoursOfOperationOverride
read:
- connect:DescribeHoursOfOperation
+ - connect:ListHoursOfOperationOverrides
delete:
- connect:DeleteHoursOfOperation
- connect:UntagResource
update:
- connect:UpdateHoursOfOperation
+ - connect:CreateHoursOfOperationOverride
+ - connect:UpdateHoursOfOperationOverride
+ - connect:DeleteHoursOfOperationOverride
+ - connect:ListHoursOfOperationOverrides
- connect:TagResource
- connect:UntagResource
list:
@@ -1784,6 +2151,10 @@ components:
pattern: ^arn:aws[-a-z0-9]*:connect:[-a-z0-9]*:[0-9]{12}:instance/[-a-zA-Z0-9]*/contact-flow/[-a-zA-Z0-9]*$
minLength: 1
maxLength: 500
+ OutboundEmailAddressId:
+ description: The email address connect resource ID.
+ type: string
+ pattern: ^arn:aws[-a-z0-9]*:connect:[-a-z0-9]*:[0-9]{12}:instance/[-a-zA-Z0-9]*/email-address/[-a-zA-Z0-9]*$
Key:
description: A valid security key in PEM format.
type: string
@@ -1800,6 +2171,13 @@ components:
$ref: '#/components/schemas/OutboundCallerIdNumberArn'
OutboundFlowArn:
$ref: '#/components/schemas/OutboundFlowArn'
+ OutboundEmailConfig:
+ description: The outbound email address ID.
+ type: object
+ additionalProperties: false
+ properties:
+ OutboundEmailAddressId:
+ $ref: '#/components/schemas/OutboundEmailAddressId'
QuickConnectArn:
description: The Amazon Resource Name (ARN) for the quick connect.
type: string
@@ -1832,6 +2210,9 @@ components:
OutboundCallerConfig:
description: The outbound caller ID name, number, and outbound whisper flow.
$ref: '#/components/schemas/OutboundCallerConfig'
+ OutboundEmailConfig:
+ description: The outbound email address ID.
+ $ref: '#/components/schemas/OutboundEmailConfig'
QueueArn:
description: The Amazon Resource Name (ARN) for the queue.
type: string
@@ -1846,7 +2227,6 @@ components:
description: The quick connects available to agents who are working the queue.
type: array
minItems: 1
- maxItems: 50
x-insertionOrder: false
items:
$ref: '#/components/schemas/QuickConnectArn'
@@ -1886,6 +2266,9 @@ components:
tagUpdatable: true
cloudFormationSystemTags: true
tagProperty: /properties/Tags
+ permissions:
+ - connect:TagResource
+ - connect:UntagResource
x-required-permissions:
create:
- connect:CreateQueue
@@ -1901,6 +2284,7 @@ components:
- connect:UpdateQueueMaxContacts
- connect:UpdateQueueName
- connect:UpdateQueueOutboundCallerConfig
+ - connect:UpdateQueueOutboundEmailConfig
- connect:UpdateQueueStatus
- connect:AssociateQueueQuickConnects
- connect:DisassociateQueueQuickConnects
@@ -2274,13 +2658,13 @@ components:
type: object
properties:
UserTags:
- description: The collection of recipients who are identified by user tags
+ description: 'The tags used to organize, track, or control access for this resource. For example, { "tags": {"key1":"value1", "key2":"value2"} }. CON users with the specified tags will be notified.'
x-patternProperties:
^(?=.{1,128}$).+$:
type: string
additionalProperties: false
UserArns:
- description: The list of recipients by user arns.
+ description: The Amazon Resource Name (ARN) of the user account.
type: array
minItems: 1
maxItems: 5
@@ -2290,12 +2674,13 @@ components:
$ref: '#/components/schemas/UserArn'
additionalProperties: false
Reference:
- description: A contact reference.
+ description: Information about the reference when the ``referenceType`` is ``URL``. Otherwise, null. (Supports variable injection in the ``Value`` field.)
type: object
properties:
Value:
type: string
pattern: ^(/|https:)
+ description: A valid value for the reference. For example, for a URL reference, a formatted URL that is displayed to an agent in the Contact Control Panel (CCP).
Type:
type: string
enum:
@@ -2305,30 +2690,33 @@ components:
- STRING
- DATE
- EMAIL
+ description: |-
+ The type of the reference. ``DATE`` must be of type Epoch timestamp.
+ *Allowed values*: ``URL`` | ``ATTACHMENT`` | ``NUMBER`` | ``STRING`` | ``DATE`` | ``EMAIL``
required:
- Value
- Type
additionalProperties: false
TaskAction:
- description: The definition of task action.
+ description: 'Information about the task action. This field is required if ``TriggerEventSource`` is one of the following values: ``OnZendeskTicketCreate`` | ``OnZendeskTicketStatusUpdate`` | ``OnSalesforceCaseCreate``'
type: object
properties:
Name:
- description: The name which appears in the agent's Contact Control Panel (CCP).
+ description: The name. Supports variable injection. For more information, see [JSONPath reference](https://docs.aws.amazon.com/connect/latest/adminguide/contact-lens-variable-injection.html) in the *Administrators Guide*.
type: string
minLength: 1
maxLength: 512
Description:
- description: The description which appears in the agent's Contact Control Panel (CCP).
+ description: The description. Supports variable injection. For more information, see [JSONPath reference](https://docs.aws.amazon.com/connect/latest/adminguide/contact-lens-variable-injection.html) in the *Administrators Guide*.
type: string
minLength: 0
maxLength: 4096
ContactFlowArn:
- description: The Amazon Resource Name (ARN) of the contact flow.
+ description: The Amazon Resource Name (ARN) of the flow.
type: string
pattern: ^$|arn:aws[-a-z0-9]*:connect:[-a-z0-9]*:[0-9]{12}:instance/[-a-zA-Z0-9]*/contact-flow/[-a-zA-Z0-9]*$
References:
- description: A formatted URL that is shown to an agent in the Contact Control Panel (CCP).
+ description: Information about the reference when the ``referenceType`` is ``URL``. Otherwise, null. ``URL`` is the only accepted type. (Supports variable injection in the ``Value`` field.)
x-patternProperties:
^(?=.{1,4096}$).+$:
$ref: '#/components/schemas/Reference'
@@ -2337,12 +2725,23 @@ components:
- Name
- ContactFlowArn
additionalProperties: false
+ SubmitAutoEvaluationAction:
+ description: ''
+ type: object
+ properties:
+ EvaluationFormArn:
+ description: ''
+ type: string
+ pattern: ^$|arn:aws[-a-z0-9]*:connect:[-a-z0-9]*:[0-9]{12}:instance/[-a-zA-Z0-9]*/evaluation-form/[-a-zA-Z0-9]*$
+ required:
+ - EvaluationFormArn
+ additionalProperties: false
EventBridgeAction:
- description: The definition for event bridge action.
+ description: The EV action definition.
type: object
properties:
Name:
- description: The name of the event bridge action.
+ description: The name.
type: string
pattern: ^[a-zA-Z0-9._-]{1,100}$
required:
@@ -2352,31 +2751,36 @@ components:
description: The definition for assigning contact category action.
type: object
SendNotificationAction:
- description: The definition for sending notification action.
+ description: Information about the send notification action.
type: object
properties:
DeliveryMethod:
- description: The means of delivery.
+ description: |-
+ Notification delivery method.
+ *Allowed value*: ``EMAIL``
type: string
enum:
- EMAIL
Subject:
- description: The subject of notification.
+ description: The subject of the email if the delivery method is ``EMAIL``. Supports variable injection. For more information, see [JSONPath reference](https://docs.aws.amazon.com/connect/latest/adminguide/contact-lens-variable-injection.html) in the *Administrators Guide*.
type: string
minLength: 1
maxLength: 200
Content:
- description: The content of notification.
+ description: Notification content. Supports variable injection. For more information, see [JSONPath reference](https://docs.aws.amazon.com/connect/latest/adminguide/contact-lens-variable-injection.html) in the *Administrators Guide*.
type: string
minLength: 1
maxLength: 1024
ContentType:
- description: The type of content.
+ description: |-
+ Content type format.
+ *Allowed value*: ``PLAIN_TEXT``
type: string
enum:
- PLAIN_TEXT
Recipient:
$ref: '#/components/schemas/NotificationRecipientType'
+ description: Notification recipient.
required:
- DeliveryMethod
- Content
@@ -2384,13 +2788,14 @@ components:
- ContentType
additionalProperties: false
CreateCaseAction:
- description: The definition for create case action.
+ description: ''
type: object
properties:
Fields:
$ref: '#/components/schemas/Fields'
+ description: ''
TemplateId:
- description: The Id of template.
+ description: ''
type: string
minLength: 1
maxLength: 500
@@ -2399,11 +2804,12 @@ components:
- TemplateId
additionalProperties: false
UpdateCaseAction:
- description: The definition for update case action.
+ description: ''
type: object
properties:
Fields:
$ref: '#/components/schemas/Fields'
+ description: ''
required:
- Fields
additionalProperties: false
@@ -2429,11 +2835,11 @@ components:
minItems: 1
maxItems: 1
RuleTriggerEventSource:
- description: The event source that will trigger the rule.
+ description: The name of the event source.
type: object
properties:
EventSourceName:
- description: The name of event source.
+ description: The name of the event source.
type: string
enum:
- OnContactEvaluationSubmit
@@ -2448,7 +2854,7 @@ components:
- OnCaseCreate
- OnCaseUpdate
IntegrationAssociationArn:
- description: The Amazon Resource Name (ARN) for the AppIntegration association.
+ description: 'The Amazon Resource Name (ARN) of the integration association. ``IntegrationAssociationArn`` is required if ``TriggerEventSource`` is one of the following values: ``OnZendeskTicketCreate`` | ``OnZendeskTicketStatusUpdate`` | ``OnSalesforceCaseCreate``'
type: string
pattern: ^$|arn:aws[-a-z0-9]*:connect:[-a-z0-9]*:[0-9]{12}:instance/[-a-zA-Z0-9]*/integration-association/[-a-zA-Z0-9]*$
required:
@@ -2499,24 +2905,43 @@ components:
$ref: '#/components/schemas/EndAssociatedTasksAction'
minItems: 1
maxItems: 1
+ SubmitAutoEvaluationActions:
+ description: This action will submit an auto contact evaluation when a rule is triggered.
+ type: array
+ x-insertionOrder: false
+ uniqueItems: true
+ items:
+ $ref: '#/components/schemas/SubmitAutoEvaluationAction'
+ minItems: 1
+ maxItems: 1
Actions:
- description: The list of actions that will be executed when a rule is triggered.
+ description: A list of actions to be run when the rule is triggered.
type: object
properties:
AssignContactCategoryActions:
$ref: '#/components/schemas/AssignContactCategoryActions'
+ description: Information about the contact category action. The syntax can be empty, for example, ``{}``.
EventBridgeActions:
$ref: '#/components/schemas/EventBridgeActions'
+ description: Information about the EV action.
TaskActions:
$ref: '#/components/schemas/TaskActions'
+ description: 'Information about the task action. This field is required if ``TriggerEventSource`` is one of the following values: ``OnZendeskTicketCreate`` | ``OnZendeskTicketStatusUpdate`` | ``OnSalesforceCaseCreate``'
SendNotificationActions:
$ref: '#/components/schemas/SendNotificationActions'
+ description: Information about the send notification action.
CreateCaseActions:
$ref: '#/components/schemas/CreateCaseActions'
+ description: ''
UpdateCaseActions:
$ref: '#/components/schemas/UpdateCaseActions'
+ description: ''
EndAssociatedTasksActions:
$ref: '#/components/schemas/EndAssociatedTasksActions'
+ description: ''
+ SubmitAutoEvaluationActions:
+ $ref: '#/components/schemas/SubmitAutoEvaluationActions'
+ description: ''
additionalProperties: false
Rule:
type: object
@@ -2526,7 +2951,7 @@ components:
type: string
pattern: ^[a-zA-Z0-9._-]{1,200}$
RuleArn:
- description: The Amazon Resource Name (ARN) of the rule.
+ description: ''
type: string
pattern: ^arn:aws[-a-z0-9]*:connect:[-a-z0-9]*:[0-9]{12}:instance/[-a-zA-Z0-9]*/rule/[-a-zA-Z0-9]*$
InstanceArn:
@@ -2534,22 +2959,24 @@ components:
type: string
pattern: ^arn:aws[-a-z0-9]*:connect:[-a-z0-9]*:[0-9]{12}:instance/[-a-zA-Z0-9]*$
TriggerEventSource:
- description: The event source that triggers the rule.
+ description: The event source to trigger the rule.
$ref: '#/components/schemas/RuleTriggerEventSource'
Function:
- description: The conditions of a rule.
+ description: The conditions of the rule.
type: string
Actions:
- description: The list of actions that will be executed when a rule is triggered.
+ description: A list of actions to be run when the rule is triggered.
$ref: '#/components/schemas/Actions'
PublishStatus:
- description: The publish status of a rule, either draft or published.
+ description: |-
+ The publish status of the rule.
+ *Allowed values*: ``DRAFT`` | ``PUBLISHED``
type: string
enum:
- DRAFT
- PUBLISHED
Tags:
- description: One or more tags.
+ description: 'The tags used to organize, track, or control access for this resource. For example, { "tags": {"key1":"value1", "key2":"value2"} }.'
type: array
maxItems: 50
uniqueItems: true
@@ -2564,7 +2991,7 @@ components:
- Actions
- PublishStatus
x-stackql-resource-name: rule
- description: Resource Type definition for AWS:Connect::Rule
+ description: Creates a rule for the specified CON instance.
x-type-name: AWS::Connect::Rule
x-stackql-primary-identifier:
- RuleArn
@@ -2828,6 +3255,8 @@ components:
- BOOLEAN
- SINGLE_SELECT
- EMAIL
+ - EXPIRY_DURATION
+ - SELF_ASSIGN
FieldIdentifier:
description: the identifier (name) for the task template field
type: object
@@ -2932,8 +3361,12 @@ components:
description: The identifier of the contact flow.
type: string
pattern: ^$|arn:aws[-a-z0-9]*:connect:[-a-z0-9]*:[0-9]{12}:instance/[-a-zA-Z0-9]*/contact-flow/[-a-zA-Z0-9]*$
- Constraints:
- description: The constraints for the task template
+ SelfAssignContactFlowArn:
+ description: The identifier of the contact flow.
+ type: string
+ pattern: ^$|arn:aws[-a-z0-9]*:connect:[-a-z0-9]*:[0-9]{12}:instance/[-a-zA-Z0-9]*/contact-flow/[-a-zA-Z0-9]*$
+ Constraints:
+ description: The constraints for the task template
type: object
additionalProperties: false
properties:
@@ -3361,6 +3794,134 @@ components:
- connect:UntagResource
list:
- connect:ListUserHierarchyGroups
+ Name:
+ description: The name of the hierarchy level.
+ type: string
+ HierarchyLevelArn:
+ description: The Amazon Resource Name (ARN) of the hierarchy level.
+ type: string
+ pattern: ^arn:aws[-a-z0-9]*:connect:[-a-z0-9]*:[0-9]{12}:instance/[-a-zA-Z0-9]*/agent-group-level/[-0-9]*$
+ HierarchyLevelId:
+ description: The identifier of the hierarchy level.
+ type: string
+ LevelOne:
+ description: Information about level one.
+ type: object
+ additionalProperties: false
+ properties:
+ HierarchyLevelArn:
+ $ref: '#/components/schemas/HierarchyLevelArn'
+ HierarchyLevelId:
+ $ref: '#/components/schemas/HierarchyLevelId'
+ Name:
+ $ref: '#/components/schemas/Name'
+ required:
+ - Name
+ LevelTwo:
+ description: Information about level two.
+ type: object
+ additionalProperties: false
+ properties:
+ HierarchyLevelArn:
+ $ref: '#/components/schemas/HierarchyLevelArn'
+ HierarchyLevelId:
+ $ref: '#/components/schemas/HierarchyLevelId'
+ Name:
+ $ref: '#/components/schemas/Name'
+ required:
+ - Name
+ LevelThree:
+ description: Information about level three.
+ type: object
+ additionalProperties: false
+ properties:
+ HierarchyLevelArn:
+ $ref: '#/components/schemas/HierarchyLevelArn'
+ HierarchyLevelId:
+ $ref: '#/components/schemas/HierarchyLevelId'
+ Name:
+ $ref: '#/components/schemas/Name'
+ required:
+ - Name
+ LevelFour:
+ description: Information about level four.
+ type: object
+ additionalProperties: false
+ properties:
+ HierarchyLevelArn:
+ $ref: '#/components/schemas/HierarchyLevelArn'
+ HierarchyLevelId:
+ $ref: '#/components/schemas/HierarchyLevelId'
+ Name:
+ $ref: '#/components/schemas/Name'
+ required:
+ - Name
+ LevelFive:
+ description: Information about level five.
+ type: object
+ additionalProperties: false
+ properties:
+ HierarchyLevelArn:
+ $ref: '#/components/schemas/HierarchyLevelArn'
+ HierarchyLevelId:
+ $ref: '#/components/schemas/HierarchyLevelId'
+ Name:
+ $ref: '#/components/schemas/Name'
+ required:
+ - Name
+ UserHierarchyStructure:
+ type: object
+ properties:
+ InstanceArn:
+ description: The identifier of the Amazon Connect instance.
+ type: string
+ pattern: ^arn:aws[-a-z0-9]*:connect:[-a-z0-9]*:[0-9]{12}:instance/[-a-zA-Z0-9]*$
+ UserHierarchyStructureArn:
+ description: The identifier of the User Hierarchy Structure.
+ type: string
+ pattern: ^arn:aws[-a-z0-9]*:connect:[-a-z0-9]*:[0-9]{12}:instance/[-a-zA-Z0-9]*/user-hierarchy-structure
+ UserHierarchyStructure:
+ description: Information about the hierarchy structure.
+ type: object
+ additionalProperties: false
+ properties:
+ LevelOne:
+ $ref: '#/components/schemas/LevelOne'
+ LevelTwo:
+ $ref: '#/components/schemas/LevelTwo'
+ LevelThree:
+ $ref: '#/components/schemas/LevelThree'
+ LevelFour:
+ $ref: '#/components/schemas/LevelFour'
+ LevelFive:
+ $ref: '#/components/schemas/LevelFive'
+ required:
+ - InstanceArn
+ x-stackql-resource-name: user_hierarchy_structure
+ description: Resource Type definition for AWS::Connect::UserHierarchyStructure
+ x-type-name: AWS::Connect::UserHierarchyStructure
+ x-stackql-primary-identifier:
+ - UserHierarchyStructureArn
+ x-create-only-properties:
+ - InstanceArn
+ x-read-only-properties:
+ - UserHierarchyStructureArn
+ x-required-properties:
+ - InstanceArn
+ x-tagging:
+ taggable: false
+ tagOnCreate: false
+ tagUpdatable: false
+ cloudFormationSystemTags: false
+ x-required-permissions:
+ create:
+ - connect:UpdateUserHierarchyStructure
+ read:
+ - connect:DescribeUserHierarchyStructure
+ delete:
+ - connect:UpdateUserHierarchyStructure
+ update:
+ - connect:UpdateUserHierarchyStructure
View:
type: object
properties:
@@ -3499,7 +4060,6 @@ components:
- ViewVersionArn
x-create-only-properties:
- ViewArn
- - VersionDescription
- ViewContentSha256
x-read-only-properties:
- ViewVersionArn
@@ -3521,6 +4081,77 @@ components:
update: []
delete:
- connect:DeleteViewVersion
+ CreateAgentStatusRequest:
+ properties:
+ ClientToken:
+ type: string
+ RoleArn:
+ type: string
+ TypeName:
+ type: string
+ TypeVersionId:
+ type: string
+ DesiredState:
+ type: object
+ properties:
+ InstanceArn:
+ description: The identifier of the Amazon Connect instance.
+ type: string
+ pattern: ^arn:aws[-a-z0-9]*:connect:[-a-z0-9]*:[0-9]{12}:instance/[-a-zA-Z0-9]*$
+ AgentStatusArn:
+ description: The Amazon Resource Name (ARN) of the agent status.
+ type: string
+ pattern: ^arn:aws[-a-z0-9]*:connect:[-a-z0-9]*:[0-9]{12}:instance/[-a-zA-Z0-9]*/agent-state/[-a-zA-Z0-9]*$
+ Description:
+ description: The description of the status.
+ type: string
+ minLength: 1
+ maxLength: 250
+ Name:
+ description: The name of the status.
+ type: string
+ minLength: 1
+ maxLength: 127
+ DisplayOrder:
+ description: The display order of the status.
+ type: integer
+ minimum: 1
+ maximum: 50
+ State:
+ type: string
+ description: The state of the status.
+ enum:
+ - ENABLED
+ - DISABLED
+ Type:
+ type: string
+ description: The type of agent status.
+ enum:
+ - ROUTABLE
+ - CUSTOM
+ - OFFLINE
+ ResetOrderNumber:
+ type: boolean
+ description: A number indicating the reset order of the agent status.
+ Tags:
+ type: array
+ maxItems: 50
+ uniqueItems: true
+ x-insertionOrder: false
+ description: An array of key-value pairs to apply to this resource.
+ items:
+ $ref: '#/components/schemas/Tag'
+ LastModifiedRegion:
+ description: Last modified region.
+ type: string
+ pattern: '[a-z]{2}(-[a-z]+){1,2}(-[0-9])?'
+ LastModifiedTime:
+ description: Last modified time.
+ type: number
+ x-stackQL-stringOnly: true
+ x-title: CreateAgentStatusRequest
+ type: object
+ required: []
CreateApprovedOriginRequest:
properties:
ClientToken:
@@ -3600,6 +4231,7 @@ components:
- OUTBOUND_WHISPER
- AGENT_TRANSFER
- QUEUE_TRANSFER
+ - CAMPAIGN
Tags:
description: One or more tags.
type: array
@@ -3673,6 +4305,59 @@ components:
x-title: CreateContactFlowModuleRequest
type: object
required: []
+ CreateEmailAddressRequest:
+ properties:
+ ClientToken:
+ type: string
+ RoleArn:
+ type: string
+ TypeName:
+ type: string
+ TypeVersionId:
+ type: string
+ DesiredState:
+ type: object
+ properties:
+ InstanceArn:
+ description: The identifier of the Amazon Connect instance.
+ type: string
+ pattern: ^arn:(aws|aws-us-gov):connect:[a-z]{2}-[a-z]+-[0-9]{1}:[0-9]{1,20}:instance/[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}$
+ minLength: 1
+ maxLength: 250
+ EmailAddressArn:
+ description: The identifier of the email address.
+ type: string
+ pattern: ^arn:(aws|aws-us-gov):connect:[a-z]{2}-[a-z]+-[0-9]{1}:[0-9]{1,20}:instance/[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}/email-address/[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}$
+ Description:
+ description: A description for the email address.
+ type: string
+ pattern: (^[\S].*[\S]$)|(^[\S]$)
+ minLength: 1
+ maxLength: 250
+ EmailAddress:
+ description: Email address to be created for this instance
+ type: string
+ pattern: ([^\s@]+@[^\s@]+\.[^\s@]+)
+ minLength: 1
+ maxLength: 255
+ DisplayName:
+ description: The display name for the email address.
+ type: string
+ pattern: (^[\S].*[\S]$)|(^[\S]$)
+ minLength: 0
+ maxLength: 256
+ Tags:
+ type: array
+ maxItems: 50
+ uniqueItems: true
+ x-insertionOrder: false
+ description: One or more tags.
+ items:
+ $ref: '#/components/schemas/Tag'
+ x-stackQL-stringOnly: true
+ x-title: CreateEmailAddressRequest
+ type: object
+ required: []
CreateEvaluationFormRequest:
properties:
ClientToken:
@@ -3687,24 +4372,29 @@ components:
type: object
properties:
Title:
- description: The title of the evaluation form.
+ description: A title of the evaluation form.
type: string
minLength: 1
maxLength: 128
Description:
- description: The description of the evaluation form.
+ description: |-
+ The description of the evaluation form.
+ *Length Constraints*: Minimum length of 0. Maximum length of 1024.
type: string
maxLength: 1024
EvaluationFormArn:
- description: The Amazon Resource Name (ARN) for the evaluation form.
+ description: ''
type: string
pattern: ^arn:aws[-a-z0-9]*:connect:[-a-z0-9]*:[0-9]{12}:instance/[-a-zA-Z0-9]*/evaluation-form/[-a-zA-Z0-9]*$
InstanceArn:
- description: The Amazon Resource Name (ARN) of the instance.
+ description: The identifier of the Amazon Connect instance.
type: string
pattern: ^arn:aws[-a-z0-9]*:connect:[-a-z0-9]*:[0-9]{12}:instance/[-a-zA-Z0-9]*$
Items:
- description: The list of evaluation form items.
+ description: |-
+ Items that are part of the evaluation form. The total number of sections and questions must not exceed 100 each. Questions must be contained in a section.
+ *Minimum size*: 1
+ *Maximum size*: 100
type: array
x-insertionOrder: true
minItems: 1
@@ -3712,17 +4402,19 @@ components:
items:
$ref: '#/components/schemas/EvaluationFormBaseItem'
ScoringStrategy:
- description: The scoring strategy.
+ description: A scoring strategy of the evaluation form.
$ref: '#/components/schemas/ScoringStrategy'
Status:
- description: The status of the evaluation form.
+ description: |-
+ The status of the evaluation form.
+ *Allowed values*: ``DRAFT`` | ``ACTIVE``
type: string
default: DRAFT
enum:
- DRAFT
- ACTIVE
Tags:
- description: One or more tags.
+ description: 'The tags used to organize, track, or control access for this resource. For example, { "tags": {"key1":"value1", "key2":"value2"} }.'
type: array
maxItems: 50
uniqueItems: true
@@ -3783,6 +4475,13 @@ components:
x-insertionOrder: false
items:
$ref: '#/components/schemas/Tag'
+ HoursOfOperationOverrides:
+ description: One or more hours of operation overrides assigned to an hour of operation.
+ type: array
+ maxItems: 50
+ x-insertionOrder: false
+ items:
+ $ref: '#/components/schemas/HoursOfOperationOverride'
x-stackQL-stringOnly: true
x-title: CreateHoursOfOperationRequest
type: object
@@ -4040,6 +4739,9 @@ components:
OutboundCallerConfig:
description: The outbound caller ID name, number, and outbound whisper flow.
$ref: '#/components/schemas/OutboundCallerConfig'
+ OutboundEmailConfig:
+ description: The outbound email address ID.
+ $ref: '#/components/schemas/OutboundEmailConfig'
QueueArn:
description: The Amazon Resource Name (ARN) for the queue.
type: string
@@ -4054,7 +4756,6 @@ components:
description: The quick connects available to agents who are working the queue.
type: array
minItems: 1
- maxItems: 50
x-insertionOrder: false
items:
$ref: '#/components/schemas/QuickConnectArn'
@@ -4213,7 +4914,7 @@ components:
type: string
pattern: ^[a-zA-Z0-9._-]{1,200}$
RuleArn:
- description: The Amazon Resource Name (ARN) of the rule.
+ description: ''
type: string
pattern: ^arn:aws[-a-z0-9]*:connect:[-a-z0-9]*:[0-9]{12}:instance/[-a-zA-Z0-9]*/rule/[-a-zA-Z0-9]*$
InstanceArn:
@@ -4221,22 +4922,24 @@ components:
type: string
pattern: ^arn:aws[-a-z0-9]*:connect:[-a-z0-9]*:[0-9]{12}:instance/[-a-zA-Z0-9]*$
TriggerEventSource:
- description: The event source that triggers the rule.
+ description: The event source to trigger the rule.
$ref: '#/components/schemas/RuleTriggerEventSource'
Function:
- description: The conditions of a rule.
+ description: The conditions of the rule.
type: string
Actions:
- description: The list of actions that will be executed when a rule is triggered.
+ description: A list of actions to be run when the rule is triggered.
$ref: '#/components/schemas/Actions'
PublishStatus:
- description: The publish status of a rule, either draft or published.
+ description: |-
+ The publish status of the rule.
+ *Allowed values*: ``DRAFT`` | ``PUBLISHED``
type: string
enum:
- DRAFT
- PUBLISHED
Tags:
- description: One or more tags.
+ description: 'The tags used to organize, track, or control access for this resource. For example, { "tags": {"key1":"value1", "key2":"value2"} }.'
type: array
maxItems: 50
uniqueItems: true
@@ -4402,6 +5105,10 @@ components:
description: The identifier of the contact flow.
type: string
pattern: ^$|arn:aws[-a-z0-9]*:connect:[-a-z0-9]*:[0-9]{12}:instance/[-a-zA-Z0-9]*/contact-flow/[-a-zA-Z0-9]*$
+ SelfAssignContactFlowArn:
+ description: The identifier of the contact flow.
+ type: string
+ pattern: ^$|arn:aws[-a-z0-9]*:connect:[-a-z0-9]*:[0-9]{12}:instance/[-a-zA-Z0-9]*/contact-flow/[-a-zA-Z0-9]*$
Constraints:
description: The constraints for the task template
type: object
@@ -4616,6 +5323,46 @@ components:
x-title: CreateUserHierarchyGroupRequest
type: object
required: []
+ CreateUserHierarchyStructureRequest:
+ properties:
+ ClientToken:
+ type: string
+ RoleArn:
+ type: string
+ TypeName:
+ type: string
+ TypeVersionId:
+ type: string
+ DesiredState:
+ type: object
+ properties:
+ InstanceArn:
+ description: The identifier of the Amazon Connect instance.
+ type: string
+ pattern: ^arn:aws[-a-z0-9]*:connect:[-a-z0-9]*:[0-9]{12}:instance/[-a-zA-Z0-9]*$
+ UserHierarchyStructureArn:
+ description: The identifier of the User Hierarchy Structure.
+ type: string
+ pattern: ^arn:aws[-a-z0-9]*:connect:[-a-z0-9]*:[0-9]{12}:instance/[-a-zA-Z0-9]*/user-hierarchy-structure
+ UserHierarchyStructure:
+ description: Information about the hierarchy structure.
+ type: object
+ additionalProperties: false
+ properties:
+ LevelOne:
+ $ref: '#/components/schemas/LevelOne'
+ LevelTwo:
+ $ref: '#/components/schemas/LevelTwo'
+ LevelThree:
+ $ref: '#/components/schemas/LevelThree'
+ LevelFour:
+ $ref: '#/components/schemas/LevelFour'
+ LevelFive:
+ $ref: '#/components/schemas/LevelFive'
+ x-stackQL-stringOnly: true
+ x-title: CreateUserHierarchyStructureRequest
+ type: object
+ required: []
CreateViewRequest:
properties:
ClientToken:
@@ -4740,14 +5487,13 @@ components:
description: Amazon Signature authorization v4
x-amazon-apigateway-authtype: awsSigv4
x-stackQL-resources:
- approved_origins:
- name: approved_origins
- id: aws.connect.approved_origins
- x-cfn-schema-name: ApprovedOrigin
- x-cfn-type-name: AWS::Connect::ApprovedOrigin
+ agent_statuses:
+ name: agent_statuses
+ id: aws.connect.agent_statuses
+ x-cfn-schema-name: AgentStatus
+ x-cfn-type-name: AWS::Connect::AgentStatus
x-identifiers:
- - InstanceId
- - Origin
+ - AgentStatusArn
x-type: cloud_control
methods:
create_resource:
@@ -4755,34 +5501,34 @@ components:
requestBodyTranslate:
algorithm: naive_DesiredState
operation:
- $ref: '#/paths/~1?Action=CreateResource&Version=2021-09-30&__ApprovedOrigin&__detailTransformed=true/post'
+ $ref: '#/paths/~1?Action=CreateResource&Version=2021-09-30&__AgentStatus&__detailTransformed=true/post'
request:
mediaType: application/x-amz-json-1.0
base: |-
{
- "TypeName": "AWS::Connect::ApprovedOrigin"
+ "TypeName": "AWS::Connect::AgentStatus"
}
response:
mediaType: application/json
openAPIDocKey: '200'
- delete_resource:
+ update_resource:
operation:
- $ref: '#/paths/~1?Action=DeleteResource&Version=2021-09-30/post'
+ $ref: '#/paths/~1?Action=UpdateResource&Version=2021-09-30/post'
request:
mediaType: application/x-amz-json-1.0
base: |-
{
- "TypeName": "AWS::Connect::ApprovedOrigin"
+ "TypeName": "AWS::Connect::AgentStatus"
}
response:
mediaType: application/json
openAPIDocKey: '200'
sqlVerbs:
insert:
- - $ref: '#/components/x-stackQL-resources/approved_origins/methods/create_resource'
- delete:
- - $ref: '#/components/x-stackQL-resources/approved_origins/methods/delete_resource'
- update: []
+ - $ref: '#/components/x-stackQL-resources/agent_statuses/methods/create_resource'
+ delete: []
+ update:
+ - $ref: '#/components/x-stackQL-resources/agent_statuses/methods/update_resource'
config:
views:
select:
@@ -4791,24 +5537,42 @@ components:
SELECT
region,
data__Identifier,
- JSON_EXTRACT(Properties, '$.Origin') as origin,
- JSON_EXTRACT(Properties, '$.InstanceId') as instance_id
- FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::Connect::ApprovedOrigin'
- AND data__Identifier = '|'
+ JSON_EXTRACT(Properties, '$.InstanceArn') as instance_arn,
+ JSON_EXTRACT(Properties, '$.AgentStatusArn') as agent_status_arn,
+ JSON_EXTRACT(Properties, '$.Description') as description,
+ JSON_EXTRACT(Properties, '$.Name') as name,
+ JSON_EXTRACT(Properties, '$.DisplayOrder') as display_order,
+ JSON_EXTRACT(Properties, '$.State') as state,
+ JSON_EXTRACT(Properties, '$.Type') as type,
+ JSON_EXTRACT(Properties, '$.ResetOrderNumber') as reset_order_number,
+ JSON_EXTRACT(Properties, '$.Tags') as tags,
+ JSON_EXTRACT(Properties, '$.LastModifiedRegion') as last_modified_region,
+ JSON_EXTRACT(Properties, '$.LastModifiedTime') as last_modified_time
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::Connect::AgentStatus'
+ AND data__Identifier = ''
AND region = 'us-east-1'
fallback:
predicate: sqlDialect == "sqlite3"
ddl: |-
SELECT
detail.region,
- JSON_EXTRACT(detail.Properties, '$.Origin') as origin,
- JSON_EXTRACT(detail.Properties, '$.InstanceId') as instance_id
+ JSON_EXTRACT(detail.Properties, '$.InstanceArn') as instance_arn,
+ JSON_EXTRACT(detail.Properties, '$.AgentStatusArn') as agent_status_arn,
+ JSON_EXTRACT(detail.Properties, '$.Description') as description,
+ JSON_EXTRACT(detail.Properties, '$.Name') as name,
+ JSON_EXTRACT(detail.Properties, '$.DisplayOrder') as display_order,
+ JSON_EXTRACT(detail.Properties, '$.State') as state,
+ JSON_EXTRACT(detail.Properties, '$.Type') as type,
+ JSON_EXTRACT(detail.Properties, '$.ResetOrderNumber') as reset_order_number,
+ JSON_EXTRACT(detail.Properties, '$.Tags') as tags,
+ JSON_EXTRACT(detail.Properties, '$.LastModifiedRegion') as last_modified_region,
+ JSON_EXTRACT(detail.Properties, '$.LastModifiedTime') as last_modified_time
FROM aws.cloud_control.resources listing
LEFT OUTER JOIN aws.cloud_control.resource detail
ON detail.data__Identifier = listing.Identifier
AND detail.region = listing.region
- WHERE listing.data__TypeName = 'AWS::Connect::ApprovedOrigin'
- AND detail.data__TypeName = 'AWS::Connect::ApprovedOrigin'
+ WHERE listing.data__TypeName = 'AWS::Connect::AgentStatus'
+ AND detail.data__TypeName = 'AWS::Connect::AgentStatus'
AND listing.region = 'us-east-1'
fallback:
predicate: sqlDialect == "postgres" && requiredParams == [ data__Identifier ]
@@ -4816,18 +5580,225 @@ components:
SELECT
region,
data__Identifier,
- json_extract_path_text(Properties, 'Origin') as origin,
- json_extract_path_text(Properties, 'InstanceId') as instance_id
- FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::Connect::ApprovedOrigin'
- AND data__Identifier = '|'
+ json_extract_path_text(Properties, 'InstanceArn') as instance_arn,
+ json_extract_path_text(Properties, 'AgentStatusArn') as agent_status_arn,
+ json_extract_path_text(Properties, 'Description') as description,
+ json_extract_path_text(Properties, 'Name') as name,
+ json_extract_path_text(Properties, 'DisplayOrder') as display_order,
+ json_extract_path_text(Properties, 'State') as state,
+ json_extract_path_text(Properties, 'Type') as type,
+ json_extract_path_text(Properties, 'ResetOrderNumber') as reset_order_number,
+ json_extract_path_text(Properties, 'Tags') as tags,
+ json_extract_path_text(Properties, 'LastModifiedRegion') as last_modified_region,
+ json_extract_path_text(Properties, 'LastModifiedTime') as last_modified_time
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::Connect::AgentStatus'
+ AND data__Identifier = ''
AND region = 'us-east-1'
fallback:
predicate: sqlDialect == "postgres"
ddl: |-
SELECT
detail.region,
- json_extract_path_text(detail.Properties, 'Origin') as origin,
- json_extract_path_text(detail.Properties, 'InstanceId') as instance_id
+ json_extract_path_text(detail.Properties, 'InstanceArn') as instance_arn,
+ json_extract_path_text(detail.Properties, 'AgentStatusArn') as agent_status_arn,
+ json_extract_path_text(detail.Properties, 'Description') as description,
+ json_extract_path_text(detail.Properties, 'Name') as name,
+ json_extract_path_text(detail.Properties, 'DisplayOrder') as display_order,
+ json_extract_path_text(detail.Properties, 'State') as state,
+ json_extract_path_text(detail.Properties, 'Type') as type,
+ json_extract_path_text(detail.Properties, 'ResetOrderNumber') as reset_order_number,
+ json_extract_path_text(detail.Properties, 'Tags') as tags,
+ json_extract_path_text(detail.Properties, 'LastModifiedRegion') as last_modified_region,
+ json_extract_path_text(detail.Properties, 'LastModifiedTime') as last_modified_time
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ WHERE listing.data__TypeName = 'AWS::Connect::AgentStatus'
+ AND detail.data__TypeName = 'AWS::Connect::AgentStatus'
+ AND listing.region = 'us-east-1'
+ agent_statuses_list_only:
+ name: agent_statuses_list_only
+ id: aws.connect.agent_statuses_list_only
+ x-cfn-schema-name: AgentStatus
+ x-cfn-type-name: AWS::Connect::AgentStatus
+ x-identifiers:
+ - AgentStatusArn
+ x-type: cloud_control_view
+ methods: {}
+ sqlVerbs:
+ insert: []
+ delete: []
+ update: []
+ config:
+ views:
+ select:
+ predicate: sqlDialect == "sqlite3"
+ ddl: |-
+ SELECT
+ region,
+ JSON_EXTRACT(Properties, '$.AgentStatusArn') as agent_status_arn
+ FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::Connect::AgentStatus'
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres"
+ ddl: |-
+ SELECT
+ region,
+ json_extract_path_text(Properties, 'AgentStatusArn') as agent_status_arn
+ FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::Connect::AgentStatus'
+ AND region = 'us-east-1'
+ agent_status_tags:
+ name: agent_status_tags
+ id: aws.connect.agent_status_tags
+ x-cfn-schema-name: AgentStatus
+ x-cfn-type-name: AWS::Connect::AgentStatus
+ x-type: cloud_control_view
+ methods: {}
+ sqlVerbs:
+ insert: []
+ delete: []
+ update: []
+ config:
+ views:
+ select:
+ predicate: sqlDialect == "sqlite3"
+ ddl: |-
+ SELECT
+ detail.region,
+ JSON_EXTRACT(json_each.value, '$.Key') as tag_key,
+ JSON_EXTRACT(json_each.value, '$.Value') as tag_value,
+ JSON_EXTRACT(detail.Properties, '$.InstanceArn') as instance_arn,
+ JSON_EXTRACT(detail.Properties, '$.AgentStatusArn') as agent_status_arn,
+ JSON_EXTRACT(detail.Properties, '$.Description') as description,
+ JSON_EXTRACT(detail.Properties, '$.Name') as name,
+ JSON_EXTRACT(detail.Properties, '$.DisplayOrder') as display_order,
+ JSON_EXTRACT(detail.Properties, '$.State') as state,
+ JSON_EXTRACT(detail.Properties, '$.Type') as type,
+ JSON_EXTRACT(detail.Properties, '$.ResetOrderNumber') as reset_order_number,
+ JSON_EXTRACT(detail.Properties, '$.LastModifiedRegion') as last_modified_region,
+ JSON_EXTRACT(detail.Properties, '$.LastModifiedTime') as last_modified_time
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ ,json_each(JSON_EXTRACT(detail.Properties, '$.Tags'))
+ WHERE listing.data__TypeName = 'AWS::Connect::AgentStatus'
+ AND detail.data__TypeName = 'AWS::Connect::AgentStatus'
+ AND listing.region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres"
+ ddl: |-
+ SELECT
+ detail.region,
+ json_extract_path_text(json_each.value, 'Key') as tag_key,
+ json_extract_path_text(json_each.value, 'Value') as tag_value,
+ json_extract_path_text(detail.Properties, 'InstanceArn') as instance_arn,
+ json_extract_path_text(detail.Properties, 'AgentStatusArn') as agent_status_arn,
+ json_extract_path_text(detail.Properties, 'Description') as description,
+ json_extract_path_text(detail.Properties, 'Name') as name,
+ json_extract_path_text(detail.Properties, 'DisplayOrder') as display_order,
+ json_extract_path_text(detail.Properties, 'State') as state,
+ json_extract_path_text(detail.Properties, 'Type') as type,
+ json_extract_path_text(detail.Properties, 'ResetOrderNumber') as reset_order_number,
+ json_extract_path_text(detail.Properties, 'LastModifiedRegion') as last_modified_region,
+ json_extract_path_text(detail.Properties, 'LastModifiedTime') as last_modified_time
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ ,json_array_elements_text(json_extract_path_text(detail.Properties, 'Tags'))
+ WHERE listing.data__TypeName = 'AWS::Connect::AgentStatus'
+ AND detail.data__TypeName = 'AWS::Connect::AgentStatus'
+ AND listing.region = 'us-east-1'
+ approved_origins:
+ name: approved_origins
+ id: aws.connect.approved_origins
+ x-cfn-schema-name: ApprovedOrigin
+ x-cfn-type-name: AWS::Connect::ApprovedOrigin
+ x-identifiers:
+ - InstanceId
+ - Origin
+ x-type: cloud_control
+ methods:
+ create_resource:
+ config:
+ requestBodyTranslate:
+ algorithm: naive_DesiredState
+ operation:
+ $ref: '#/paths/~1?Action=CreateResource&Version=2021-09-30&__ApprovedOrigin&__detailTransformed=true/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::Connect::ApprovedOrigin"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ delete_resource:
+ operation:
+ $ref: '#/paths/~1?Action=DeleteResource&Version=2021-09-30/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::Connect::ApprovedOrigin"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ sqlVerbs:
+ insert:
+ - $ref: '#/components/x-stackQL-resources/approved_origins/methods/create_resource'
+ delete:
+ - $ref: '#/components/x-stackQL-resources/approved_origins/methods/delete_resource'
+ update: []
+ config:
+ views:
+ select:
+ predicate: sqlDialect == "sqlite3" && requiredParams == [ data__Identifier ]
+ ddl: |-
+ SELECT
+ region,
+ data__Identifier,
+ JSON_EXTRACT(Properties, '$.Origin') as origin,
+ JSON_EXTRACT(Properties, '$.InstanceId') as instance_id
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::Connect::ApprovedOrigin'
+ AND data__Identifier = '|'
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "sqlite3"
+ ddl: |-
+ SELECT
+ detail.region,
+ JSON_EXTRACT(detail.Properties, '$.Origin') as origin,
+ JSON_EXTRACT(detail.Properties, '$.InstanceId') as instance_id
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ WHERE listing.data__TypeName = 'AWS::Connect::ApprovedOrigin'
+ AND detail.data__TypeName = 'AWS::Connect::ApprovedOrigin'
+ AND listing.region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres" && requiredParams == [ data__Identifier ]
+ ddl: |-
+ SELECT
+ region,
+ data__Identifier,
+ json_extract_path_text(Properties, 'Origin') as origin,
+ json_extract_path_text(Properties, 'InstanceId') as instance_id
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::Connect::ApprovedOrigin'
+ AND data__Identifier = '|'
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres"
+ ddl: |-
+ SELECT
+ detail.region,
+ json_extract_path_text(detail.Properties, 'Origin') as origin,
+ json_extract_path_text(detail.Properties, 'InstanceId') as instance_id
FROM aws.cloud_control.resources listing
LEFT OUTER JOIN aws.cloud_control.resource detail
ON detail.data__Identifier = listing.Identifier
@@ -5094,7 +6065,226 @@ components:
x-cfn-schema-name: ContactFlowModule
x-cfn-type-name: AWS::Connect::ContactFlowModule
x-identifiers:
- - ContactFlowModuleArn
+ - ContactFlowModuleArn
+ x-type: cloud_control
+ methods:
+ create_resource:
+ config:
+ requestBodyTranslate:
+ algorithm: naive_DesiredState
+ operation:
+ $ref: '#/paths/~1?Action=CreateResource&Version=2021-09-30&__ContactFlowModule&__detailTransformed=true/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::Connect::ContactFlowModule"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ update_resource:
+ operation:
+ $ref: '#/paths/~1?Action=UpdateResource&Version=2021-09-30/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::Connect::ContactFlowModule"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ delete_resource:
+ operation:
+ $ref: '#/paths/~1?Action=DeleteResource&Version=2021-09-30/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::Connect::ContactFlowModule"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ sqlVerbs:
+ insert:
+ - $ref: '#/components/x-stackQL-resources/contact_flow_modules/methods/create_resource'
+ delete:
+ - $ref: '#/components/x-stackQL-resources/contact_flow_modules/methods/delete_resource'
+ update:
+ - $ref: '#/components/x-stackQL-resources/contact_flow_modules/methods/update_resource'
+ config:
+ views:
+ select:
+ predicate: sqlDialect == "sqlite3" && requiredParams == [ data__Identifier ]
+ ddl: |-
+ SELECT
+ region,
+ data__Identifier,
+ JSON_EXTRACT(Properties, '$.InstanceArn') as instance_arn,
+ JSON_EXTRACT(Properties, '$.ContactFlowModuleArn') as contact_flow_module_arn,
+ JSON_EXTRACT(Properties, '$.Name') as name,
+ JSON_EXTRACT(Properties, '$.Content') as content,
+ JSON_EXTRACT(Properties, '$.Description') as description,
+ JSON_EXTRACT(Properties, '$.State') as state,
+ JSON_EXTRACT(Properties, '$.Status') as status,
+ JSON_EXTRACT(Properties, '$.Tags') as tags
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::Connect::ContactFlowModule'
+ AND data__Identifier = ''
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "sqlite3"
+ ddl: |-
+ SELECT
+ detail.region,
+ JSON_EXTRACT(detail.Properties, '$.InstanceArn') as instance_arn,
+ JSON_EXTRACT(detail.Properties, '$.ContactFlowModuleArn') as contact_flow_module_arn,
+ JSON_EXTRACT(detail.Properties, '$.Name') as name,
+ JSON_EXTRACT(detail.Properties, '$.Content') as content,
+ JSON_EXTRACT(detail.Properties, '$.Description') as description,
+ JSON_EXTRACT(detail.Properties, '$.State') as state,
+ JSON_EXTRACT(detail.Properties, '$.Status') as status,
+ JSON_EXTRACT(detail.Properties, '$.Tags') as tags
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ WHERE listing.data__TypeName = 'AWS::Connect::ContactFlowModule'
+ AND detail.data__TypeName = 'AWS::Connect::ContactFlowModule'
+ AND listing.region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres" && requiredParams == [ data__Identifier ]
+ ddl: |-
+ SELECT
+ region,
+ data__Identifier,
+ json_extract_path_text(Properties, 'InstanceArn') as instance_arn,
+ json_extract_path_text(Properties, 'ContactFlowModuleArn') as contact_flow_module_arn,
+ json_extract_path_text(Properties, 'Name') as name,
+ json_extract_path_text(Properties, 'Content') as content,
+ json_extract_path_text(Properties, 'Description') as description,
+ json_extract_path_text(Properties, 'State') as state,
+ json_extract_path_text(Properties, 'Status') as status,
+ json_extract_path_text(Properties, 'Tags') as tags
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::Connect::ContactFlowModule'
+ AND data__Identifier = ''
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres"
+ ddl: |-
+ SELECT
+ detail.region,
+ json_extract_path_text(detail.Properties, 'InstanceArn') as instance_arn,
+ json_extract_path_text(detail.Properties, 'ContactFlowModuleArn') as contact_flow_module_arn,
+ json_extract_path_text(detail.Properties, 'Name') as name,
+ json_extract_path_text(detail.Properties, 'Content') as content,
+ json_extract_path_text(detail.Properties, 'Description') as description,
+ json_extract_path_text(detail.Properties, 'State') as state,
+ json_extract_path_text(detail.Properties, 'Status') as status,
+ json_extract_path_text(detail.Properties, 'Tags') as tags
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ WHERE listing.data__TypeName = 'AWS::Connect::ContactFlowModule'
+ AND detail.data__TypeName = 'AWS::Connect::ContactFlowModule'
+ AND listing.region = 'us-east-1'
+ contact_flow_modules_list_only:
+ name: contact_flow_modules_list_only
+ id: aws.connect.contact_flow_modules_list_only
+ x-cfn-schema-name: ContactFlowModule
+ x-cfn-type-name: AWS::Connect::ContactFlowModule
+ x-identifiers:
+ - ContactFlowModuleArn
+ x-type: cloud_control_view
+ methods: {}
+ sqlVerbs:
+ insert: []
+ delete: []
+ update: []
+ config:
+ views:
+ select:
+ predicate: sqlDialect == "sqlite3"
+ ddl: |-
+ SELECT
+ region,
+ JSON_EXTRACT(Properties, '$.ContactFlowModuleArn') as contact_flow_module_arn
+ FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::Connect::ContactFlowModule'
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres"
+ ddl: |-
+ SELECT
+ region,
+ json_extract_path_text(Properties, 'ContactFlowModuleArn') as contact_flow_module_arn
+ FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::Connect::ContactFlowModule'
+ AND region = 'us-east-1'
+ contact_flow_module_tags:
+ name: contact_flow_module_tags
+ id: aws.connect.contact_flow_module_tags
+ x-cfn-schema-name: ContactFlowModule
+ x-cfn-type-name: AWS::Connect::ContactFlowModule
+ x-type: cloud_control_view
+ methods: {}
+ sqlVerbs:
+ insert: []
+ delete: []
+ update: []
+ config:
+ views:
+ select:
+ predicate: sqlDialect == "sqlite3"
+ ddl: |-
+ SELECT
+ detail.region,
+ JSON_EXTRACT(json_each.value, '$.Key') as tag_key,
+ JSON_EXTRACT(json_each.value, '$.Value') as tag_value,
+ JSON_EXTRACT(detail.Properties, '$.InstanceArn') as instance_arn,
+ JSON_EXTRACT(detail.Properties, '$.ContactFlowModuleArn') as contact_flow_module_arn,
+ JSON_EXTRACT(detail.Properties, '$.Name') as name,
+ JSON_EXTRACT(detail.Properties, '$.Content') as content,
+ JSON_EXTRACT(detail.Properties, '$.Description') as description,
+ JSON_EXTRACT(detail.Properties, '$.State') as state,
+ JSON_EXTRACT(detail.Properties, '$.Status') as status
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ ,json_each(JSON_EXTRACT(detail.Properties, '$.Tags'))
+ WHERE listing.data__TypeName = 'AWS::Connect::ContactFlowModule'
+ AND detail.data__TypeName = 'AWS::Connect::ContactFlowModule'
+ AND listing.region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres"
+ ddl: |-
+ SELECT
+ detail.region,
+ json_extract_path_text(json_each.value, 'Key') as tag_key,
+ json_extract_path_text(json_each.value, 'Value') as tag_value,
+ json_extract_path_text(detail.Properties, 'InstanceArn') as instance_arn,
+ json_extract_path_text(detail.Properties, 'ContactFlowModuleArn') as contact_flow_module_arn,
+ json_extract_path_text(detail.Properties, 'Name') as name,
+ json_extract_path_text(detail.Properties, 'Content') as content,
+ json_extract_path_text(detail.Properties, 'Description') as description,
+ json_extract_path_text(detail.Properties, 'State') as state,
+ json_extract_path_text(detail.Properties, 'Status') as status
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ ,json_array_elements_text(json_extract_path_text(detail.Properties, 'Tags'))
+ WHERE listing.data__TypeName = 'AWS::Connect::ContactFlowModule'
+ AND detail.data__TypeName = 'AWS::Connect::ContactFlowModule'
+ AND listing.region = 'us-east-1'
+ email_addresses:
+ name: email_addresses
+ id: aws.connect.email_addresses
+ x-cfn-schema-name: EmailAddress
+ x-cfn-type-name: AWS::Connect::EmailAddress
+ x-identifiers:
+ - EmailAddressArn
x-type: cloud_control
methods:
create_resource:
@@ -5102,12 +6292,12 @@ components:
requestBodyTranslate:
algorithm: naive_DesiredState
operation:
- $ref: '#/paths/~1?Action=CreateResource&Version=2021-09-30&__ContactFlowModule&__detailTransformed=true/post'
+ $ref: '#/paths/~1?Action=CreateResource&Version=2021-09-30&__EmailAddress&__detailTransformed=true/post'
request:
mediaType: application/x-amz-json-1.0
base: |-
{
- "TypeName": "AWS::Connect::ContactFlowModule"
+ "TypeName": "AWS::Connect::EmailAddress"
}
response:
mediaType: application/json
@@ -5119,7 +6309,7 @@ components:
mediaType: application/x-amz-json-1.0
base: |-
{
- "TypeName": "AWS::Connect::ContactFlowModule"
+ "TypeName": "AWS::Connect::EmailAddress"
}
response:
mediaType: application/json
@@ -5131,18 +6321,18 @@ components:
mediaType: application/x-amz-json-1.0
base: |-
{
- "TypeName": "AWS::Connect::ContactFlowModule"
+ "TypeName": "AWS::Connect::EmailAddress"
}
response:
mediaType: application/json
openAPIDocKey: '200'
sqlVerbs:
insert:
- - $ref: '#/components/x-stackQL-resources/contact_flow_modules/methods/create_resource'
+ - $ref: '#/components/x-stackQL-resources/email_addresses/methods/create_resource'
delete:
- - $ref: '#/components/x-stackQL-resources/contact_flow_modules/methods/delete_resource'
+ - $ref: '#/components/x-stackQL-resources/email_addresses/methods/delete_resource'
update:
- - $ref: '#/components/x-stackQL-resources/contact_flow_modules/methods/update_resource'
+ - $ref: '#/components/x-stackQL-resources/email_addresses/methods/update_resource'
config:
views:
select:
@@ -5152,15 +6342,13 @@ components:
region,
data__Identifier,
JSON_EXTRACT(Properties, '$.InstanceArn') as instance_arn,
- JSON_EXTRACT(Properties, '$.ContactFlowModuleArn') as contact_flow_module_arn,
- JSON_EXTRACT(Properties, '$.Name') as name,
- JSON_EXTRACT(Properties, '$.Content') as content,
+ JSON_EXTRACT(Properties, '$.EmailAddressArn') as email_address_arn,
JSON_EXTRACT(Properties, '$.Description') as description,
- JSON_EXTRACT(Properties, '$.State') as state,
- JSON_EXTRACT(Properties, '$.Status') as status,
+ JSON_EXTRACT(Properties, '$.EmailAddress') as email_address,
+ JSON_EXTRACT(Properties, '$.DisplayName') as display_name,
JSON_EXTRACT(Properties, '$.Tags') as tags
- FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::Connect::ContactFlowModule'
- AND data__Identifier = ''
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::Connect::EmailAddress'
+ AND data__Identifier = ''
AND region = 'us-east-1'
fallback:
predicate: sqlDialect == "sqlite3"
@@ -5168,19 +6356,17 @@ components:
SELECT
detail.region,
JSON_EXTRACT(detail.Properties, '$.InstanceArn') as instance_arn,
- JSON_EXTRACT(detail.Properties, '$.ContactFlowModuleArn') as contact_flow_module_arn,
- JSON_EXTRACT(detail.Properties, '$.Name') as name,
- JSON_EXTRACT(detail.Properties, '$.Content') as content,
+ JSON_EXTRACT(detail.Properties, '$.EmailAddressArn') as email_address_arn,
JSON_EXTRACT(detail.Properties, '$.Description') as description,
- JSON_EXTRACT(detail.Properties, '$.State') as state,
- JSON_EXTRACT(detail.Properties, '$.Status') as status,
+ JSON_EXTRACT(detail.Properties, '$.EmailAddress') as email_address,
+ JSON_EXTRACT(detail.Properties, '$.DisplayName') as display_name,
JSON_EXTRACT(detail.Properties, '$.Tags') as tags
FROM aws.cloud_control.resources listing
LEFT OUTER JOIN aws.cloud_control.resource detail
ON detail.data__Identifier = listing.Identifier
AND detail.region = listing.region
- WHERE listing.data__TypeName = 'AWS::Connect::ContactFlowModule'
- AND detail.data__TypeName = 'AWS::Connect::ContactFlowModule'
+ WHERE listing.data__TypeName = 'AWS::Connect::EmailAddress'
+ AND detail.data__TypeName = 'AWS::Connect::EmailAddress'
AND listing.region = 'us-east-1'
fallback:
predicate: sqlDialect == "postgres" && requiredParams == [ data__Identifier ]
@@ -5189,15 +6375,13 @@ components:
region,
data__Identifier,
json_extract_path_text(Properties, 'InstanceArn') as instance_arn,
- json_extract_path_text(Properties, 'ContactFlowModuleArn') as contact_flow_module_arn,
- json_extract_path_text(Properties, 'Name') as name,
- json_extract_path_text(Properties, 'Content') as content,
+ json_extract_path_text(Properties, 'EmailAddressArn') as email_address_arn,
json_extract_path_text(Properties, 'Description') as description,
- json_extract_path_text(Properties, 'State') as state,
- json_extract_path_text(Properties, 'Status') as status,
+ json_extract_path_text(Properties, 'EmailAddress') as email_address,
+ json_extract_path_text(Properties, 'DisplayName') as display_name,
json_extract_path_text(Properties, 'Tags') as tags
- FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::Connect::ContactFlowModule'
- AND data__Identifier = ''
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::Connect::EmailAddress'
+ AND data__Identifier = ''
AND region = 'us-east-1'
fallback:
predicate: sqlDialect == "postgres"
@@ -5205,27 +6389,25 @@ components:
SELECT
detail.region,
json_extract_path_text(detail.Properties, 'InstanceArn') as instance_arn,
- json_extract_path_text(detail.Properties, 'ContactFlowModuleArn') as contact_flow_module_arn,
- json_extract_path_text(detail.Properties, 'Name') as name,
- json_extract_path_text(detail.Properties, 'Content') as content,
+ json_extract_path_text(detail.Properties, 'EmailAddressArn') as email_address_arn,
json_extract_path_text(detail.Properties, 'Description') as description,
- json_extract_path_text(detail.Properties, 'State') as state,
- json_extract_path_text(detail.Properties, 'Status') as status,
+ json_extract_path_text(detail.Properties, 'EmailAddress') as email_address,
+ json_extract_path_text(detail.Properties, 'DisplayName') as display_name,
json_extract_path_text(detail.Properties, 'Tags') as tags
FROM aws.cloud_control.resources listing
LEFT OUTER JOIN aws.cloud_control.resource detail
ON detail.data__Identifier = listing.Identifier
AND detail.region = listing.region
- WHERE listing.data__TypeName = 'AWS::Connect::ContactFlowModule'
- AND detail.data__TypeName = 'AWS::Connect::ContactFlowModule'
+ WHERE listing.data__TypeName = 'AWS::Connect::EmailAddress'
+ AND detail.data__TypeName = 'AWS::Connect::EmailAddress'
AND listing.region = 'us-east-1'
- contact_flow_modules_list_only:
- name: contact_flow_modules_list_only
- id: aws.connect.contact_flow_modules_list_only
- x-cfn-schema-name: ContactFlowModule
- x-cfn-type-name: AWS::Connect::ContactFlowModule
+ email_addresses_list_only:
+ name: email_addresses_list_only
+ id: aws.connect.email_addresses_list_only
+ x-cfn-schema-name: EmailAddress
+ x-cfn-type-name: AWS::Connect::EmailAddress
x-identifiers:
- - ContactFlowModuleArn
+ - EmailAddressArn
x-type: cloud_control_view
methods: {}
sqlVerbs:
@@ -5239,22 +6421,22 @@ components:
ddl: |-
SELECT
region,
- JSON_EXTRACT(Properties, '$.ContactFlowModuleArn') as contact_flow_module_arn
- FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::Connect::ContactFlowModule'
+ JSON_EXTRACT(Properties, '$.EmailAddressArn') as email_address_arn
+ FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::Connect::EmailAddress'
AND region = 'us-east-1'
fallback:
predicate: sqlDialect == "postgres"
ddl: |-
SELECT
region,
- json_extract_path_text(Properties, 'ContactFlowModuleArn') as contact_flow_module_arn
- FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::Connect::ContactFlowModule'
+ json_extract_path_text(Properties, 'EmailAddressArn') as email_address_arn
+ FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::Connect::EmailAddress'
AND region = 'us-east-1'
- contact_flow_module_tags:
- name: contact_flow_module_tags
- id: aws.connect.contact_flow_module_tags
- x-cfn-schema-name: ContactFlowModule
- x-cfn-type-name: AWS::Connect::ContactFlowModule
+ email_address_tags:
+ name: email_address_tags
+ id: aws.connect.email_address_tags
+ x-cfn-schema-name: EmailAddress
+ x-cfn-type-name: AWS::Connect::EmailAddress
x-type: cloud_control_view
methods: {}
sqlVerbs:
@@ -5271,19 +6453,17 @@ components:
JSON_EXTRACT(json_each.value, '$.Key') as tag_key,
JSON_EXTRACT(json_each.value, '$.Value') as tag_value,
JSON_EXTRACT(detail.Properties, '$.InstanceArn') as instance_arn,
- JSON_EXTRACT(detail.Properties, '$.ContactFlowModuleArn') as contact_flow_module_arn,
- JSON_EXTRACT(detail.Properties, '$.Name') as name,
- JSON_EXTRACT(detail.Properties, '$.Content') as content,
+ JSON_EXTRACT(detail.Properties, '$.EmailAddressArn') as email_address_arn,
JSON_EXTRACT(detail.Properties, '$.Description') as description,
- JSON_EXTRACT(detail.Properties, '$.State') as state,
- JSON_EXTRACT(detail.Properties, '$.Status') as status
+ JSON_EXTRACT(detail.Properties, '$.EmailAddress') as email_address,
+ JSON_EXTRACT(detail.Properties, '$.DisplayName') as display_name
FROM aws.cloud_control.resources listing
LEFT OUTER JOIN aws.cloud_control.resource detail
ON detail.data__Identifier = listing.Identifier
AND detail.region = listing.region
,json_each(JSON_EXTRACT(detail.Properties, '$.Tags'))
- WHERE listing.data__TypeName = 'AWS::Connect::ContactFlowModule'
- AND detail.data__TypeName = 'AWS::Connect::ContactFlowModule'
+ WHERE listing.data__TypeName = 'AWS::Connect::EmailAddress'
+ AND detail.data__TypeName = 'AWS::Connect::EmailAddress'
AND listing.region = 'us-east-1'
fallback:
predicate: sqlDialect == "postgres"
@@ -5293,19 +6473,17 @@ components:
json_extract_path_text(json_each.value, 'Key') as tag_key,
json_extract_path_text(json_each.value, 'Value') as tag_value,
json_extract_path_text(detail.Properties, 'InstanceArn') as instance_arn,
- json_extract_path_text(detail.Properties, 'ContactFlowModuleArn') as contact_flow_module_arn,
- json_extract_path_text(detail.Properties, 'Name') as name,
- json_extract_path_text(detail.Properties, 'Content') as content,
+ json_extract_path_text(detail.Properties, 'EmailAddressArn') as email_address_arn,
json_extract_path_text(detail.Properties, 'Description') as description,
- json_extract_path_text(detail.Properties, 'State') as state,
- json_extract_path_text(detail.Properties, 'Status') as status
+ json_extract_path_text(detail.Properties, 'EmailAddress') as email_address,
+ json_extract_path_text(detail.Properties, 'DisplayName') as display_name
FROM aws.cloud_control.resources listing
LEFT OUTER JOIN aws.cloud_control.resource detail
ON detail.data__Identifier = listing.Identifier
AND detail.region = listing.region
,json_array_elements_text(json_extract_path_text(detail.Properties, 'Tags'))
- WHERE listing.data__TypeName = 'AWS::Connect::ContactFlowModule'
- AND detail.data__TypeName = 'AWS::Connect::ContactFlowModule'
+ WHERE listing.data__TypeName = 'AWS::Connect::EmailAddress'
+ AND detail.data__TypeName = 'AWS::Connect::EmailAddress'
AND listing.region = 'us-east-1'
evaluation_forms:
name: evaluation_forms
@@ -5595,7 +6773,8 @@ components:
JSON_EXTRACT(Properties, '$.TimeZone') as time_zone,
JSON_EXTRACT(Properties, '$.Config') as config,
JSON_EXTRACT(Properties, '$.HoursOfOperationArn') as hours_of_operation_arn,
- JSON_EXTRACT(Properties, '$.Tags') as tags
+ JSON_EXTRACT(Properties, '$.Tags') as tags,
+ JSON_EXTRACT(Properties, '$.HoursOfOperationOverrides') as hours_of_operation_overrides
FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::Connect::HoursOfOperation'
AND data__Identifier = ''
AND region = 'us-east-1'
@@ -5610,7 +6789,8 @@ components:
JSON_EXTRACT(detail.Properties, '$.TimeZone') as time_zone,
JSON_EXTRACT(detail.Properties, '$.Config') as config,
JSON_EXTRACT(detail.Properties, '$.HoursOfOperationArn') as hours_of_operation_arn,
- JSON_EXTRACT(detail.Properties, '$.Tags') as tags
+ JSON_EXTRACT(detail.Properties, '$.Tags') as tags,
+ JSON_EXTRACT(detail.Properties, '$.HoursOfOperationOverrides') as hours_of_operation_overrides
FROM aws.cloud_control.resources listing
LEFT OUTER JOIN aws.cloud_control.resource detail
ON detail.data__Identifier = listing.Identifier
@@ -5630,7 +6810,8 @@ components:
json_extract_path_text(Properties, 'TimeZone') as time_zone,
json_extract_path_text(Properties, 'Config') as config,
json_extract_path_text(Properties, 'HoursOfOperationArn') as hours_of_operation_arn,
- json_extract_path_text(Properties, 'Tags') as tags
+ json_extract_path_text(Properties, 'Tags') as tags,
+ json_extract_path_text(Properties, 'HoursOfOperationOverrides') as hours_of_operation_overrides
FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::Connect::HoursOfOperation'
AND data__Identifier = ''
AND region = 'us-east-1'
@@ -5645,7 +6826,8 @@ components:
json_extract_path_text(detail.Properties, 'TimeZone') as time_zone,
json_extract_path_text(detail.Properties, 'Config') as config,
json_extract_path_text(detail.Properties, 'HoursOfOperationArn') as hours_of_operation_arn,
- json_extract_path_text(detail.Properties, 'Tags') as tags
+ json_extract_path_text(detail.Properties, 'Tags') as tags,
+ json_extract_path_text(detail.Properties, 'HoursOfOperationOverrides') as hours_of_operation_overrides
FROM aws.cloud_control.resources listing
LEFT OUTER JOIN aws.cloud_control.resource detail
ON detail.data__Identifier = listing.Identifier
@@ -5709,7 +6891,8 @@ components:
JSON_EXTRACT(detail.Properties, '$.Description') as description,
JSON_EXTRACT(detail.Properties, '$.TimeZone') as time_zone,
JSON_EXTRACT(detail.Properties, '$.Config') as config,
- JSON_EXTRACT(detail.Properties, '$.HoursOfOperationArn') as hours_of_operation_arn
+ JSON_EXTRACT(detail.Properties, '$.HoursOfOperationArn') as hours_of_operation_arn,
+ JSON_EXTRACT(detail.Properties, '$.HoursOfOperationOverrides') as hours_of_operation_overrides
FROM aws.cloud_control.resources listing
LEFT OUTER JOIN aws.cloud_control.resource detail
ON detail.data__Identifier = listing.Identifier
@@ -5730,7 +6913,8 @@ components:
json_extract_path_text(detail.Properties, 'Description') as description,
json_extract_path_text(detail.Properties, 'TimeZone') as time_zone,
json_extract_path_text(detail.Properties, 'Config') as config,
- json_extract_path_text(detail.Properties, 'HoursOfOperationArn') as hours_of_operation_arn
+ json_extract_path_text(detail.Properties, 'HoursOfOperationArn') as hours_of_operation_arn,
+ json_extract_path_text(detail.Properties, 'HoursOfOperationOverrides') as hours_of_operation_overrides
FROM aws.cloud_control.resources listing
LEFT OUTER JOIN aws.cloud_control.resource detail
ON detail.data__Identifier = listing.Identifier
@@ -6711,6 +7895,7 @@ components:
JSON_EXTRACT(Properties, '$.MaxContacts') as max_contacts,
JSON_EXTRACT(Properties, '$.Name') as name,
JSON_EXTRACT(Properties, '$.OutboundCallerConfig') as outbound_caller_config,
+ JSON_EXTRACT(Properties, '$.OutboundEmailConfig') as outbound_email_config,
JSON_EXTRACT(Properties, '$.QueueArn') as queue_arn,
JSON_EXTRACT(Properties, '$.Status') as status,
JSON_EXTRACT(Properties, '$.QuickConnectArns') as quick_connect_arns,
@@ -6730,6 +7915,7 @@ components:
JSON_EXTRACT(detail.Properties, '$.MaxContacts') as max_contacts,
JSON_EXTRACT(detail.Properties, '$.Name') as name,
JSON_EXTRACT(detail.Properties, '$.OutboundCallerConfig') as outbound_caller_config,
+ JSON_EXTRACT(detail.Properties, '$.OutboundEmailConfig') as outbound_email_config,
JSON_EXTRACT(detail.Properties, '$.QueueArn') as queue_arn,
JSON_EXTRACT(detail.Properties, '$.Status') as status,
JSON_EXTRACT(detail.Properties, '$.QuickConnectArns') as quick_connect_arns,
@@ -6754,6 +7940,7 @@ components:
json_extract_path_text(Properties, 'MaxContacts') as max_contacts,
json_extract_path_text(Properties, 'Name') as name,
json_extract_path_text(Properties, 'OutboundCallerConfig') as outbound_caller_config,
+ json_extract_path_text(Properties, 'OutboundEmailConfig') as outbound_email_config,
json_extract_path_text(Properties, 'QueueArn') as queue_arn,
json_extract_path_text(Properties, 'Status') as status,
json_extract_path_text(Properties, 'QuickConnectArns') as quick_connect_arns,
@@ -6773,6 +7960,7 @@ components:
json_extract_path_text(detail.Properties, 'MaxContacts') as max_contacts,
json_extract_path_text(detail.Properties, 'Name') as name,
json_extract_path_text(detail.Properties, 'OutboundCallerConfig') as outbound_caller_config,
+ json_extract_path_text(detail.Properties, 'OutboundEmailConfig') as outbound_email_config,
json_extract_path_text(detail.Properties, 'QueueArn') as queue_arn,
json_extract_path_text(detail.Properties, 'Status') as status,
json_extract_path_text(detail.Properties, 'QuickConnectArns') as quick_connect_arns,
@@ -6842,6 +8030,7 @@ components:
JSON_EXTRACT(detail.Properties, '$.MaxContacts') as max_contacts,
JSON_EXTRACT(detail.Properties, '$.Name') as name,
JSON_EXTRACT(detail.Properties, '$.OutboundCallerConfig') as outbound_caller_config,
+ JSON_EXTRACT(detail.Properties, '$.OutboundEmailConfig') as outbound_email_config,
JSON_EXTRACT(detail.Properties, '$.QueueArn') as queue_arn,
JSON_EXTRACT(detail.Properties, '$.Status') as status,
JSON_EXTRACT(detail.Properties, '$.QuickConnectArns') as quick_connect_arns,
@@ -6867,6 +8056,7 @@ components:
json_extract_path_text(detail.Properties, 'MaxContacts') as max_contacts,
json_extract_path_text(detail.Properties, 'Name') as name,
json_extract_path_text(detail.Properties, 'OutboundCallerConfig') as outbound_caller_config,
+ json_extract_path_text(detail.Properties, 'OutboundEmailConfig') as outbound_email_config,
json_extract_path_text(detail.Properties, 'QueueArn') as queue_arn,
json_extract_path_text(detail.Properties, 'Status') as status,
json_extract_path_text(detail.Properties, 'QuickConnectArns') as quick_connect_arns,
@@ -7858,6 +9048,7 @@ components:
JSON_EXTRACT(Properties, '$.Name') as name,
JSON_EXTRACT(Properties, '$.Description') as description,
JSON_EXTRACT(Properties, '$.ContactFlowArn') as contact_flow_arn,
+ JSON_EXTRACT(Properties, '$.SelfAssignContactFlowArn') as self_assign_contact_flow_arn,
JSON_EXTRACT(Properties, '$.Constraints') as constraints,
JSON_EXTRACT(Properties, '$.Defaults') as defaults,
JSON_EXTRACT(Properties, '$.Fields') as fields,
@@ -7877,6 +9068,7 @@ components:
JSON_EXTRACT(detail.Properties, '$.Name') as name,
JSON_EXTRACT(detail.Properties, '$.Description') as description,
JSON_EXTRACT(detail.Properties, '$.ContactFlowArn') as contact_flow_arn,
+ JSON_EXTRACT(detail.Properties, '$.SelfAssignContactFlowArn') as self_assign_contact_flow_arn,
JSON_EXTRACT(detail.Properties, '$.Constraints') as constraints,
JSON_EXTRACT(detail.Properties, '$.Defaults') as defaults,
JSON_EXTRACT(detail.Properties, '$.Fields') as fields,
@@ -7901,6 +9093,7 @@ components:
json_extract_path_text(Properties, 'Name') as name,
json_extract_path_text(Properties, 'Description') as description,
json_extract_path_text(Properties, 'ContactFlowArn') as contact_flow_arn,
+ json_extract_path_text(Properties, 'SelfAssignContactFlowArn') as self_assign_contact_flow_arn,
json_extract_path_text(Properties, 'Constraints') as constraints,
json_extract_path_text(Properties, 'Defaults') as defaults,
json_extract_path_text(Properties, 'Fields') as fields,
@@ -7920,6 +9113,7 @@ components:
json_extract_path_text(detail.Properties, 'Name') as name,
json_extract_path_text(detail.Properties, 'Description') as description,
json_extract_path_text(detail.Properties, 'ContactFlowArn') as contact_flow_arn,
+ json_extract_path_text(detail.Properties, 'SelfAssignContactFlowArn') as self_assign_contact_flow_arn,
json_extract_path_text(detail.Properties, 'Constraints') as constraints,
json_extract_path_text(detail.Properties, 'Defaults') as defaults,
json_extract_path_text(detail.Properties, 'Fields') as fields,
@@ -7989,6 +9183,7 @@ components:
JSON_EXTRACT(detail.Properties, '$.Name') as name,
JSON_EXTRACT(detail.Properties, '$.Description') as description,
JSON_EXTRACT(detail.Properties, '$.ContactFlowArn') as contact_flow_arn,
+ JSON_EXTRACT(detail.Properties, '$.SelfAssignContactFlowArn') as self_assign_contact_flow_arn,
JSON_EXTRACT(detail.Properties, '$.Constraints') as constraints,
JSON_EXTRACT(detail.Properties, '$.Defaults') as defaults,
JSON_EXTRACT(detail.Properties, '$.Fields') as fields,
@@ -8014,6 +9209,7 @@ components:
json_extract_path_text(detail.Properties, 'Name') as name,
json_extract_path_text(detail.Properties, 'Description') as description,
json_extract_path_text(detail.Properties, 'ContactFlowArn') as contact_flow_arn,
+ json_extract_path_text(detail.Properties, 'SelfAssignContactFlowArn') as self_assign_contact_flow_arn,
json_extract_path_text(detail.Properties, 'Constraints') as constraints,
json_extract_path_text(detail.Properties, 'Defaults') as defaults,
json_extract_path_text(detail.Properties, 'Fields') as fields,
@@ -8684,6 +9880,87 @@ components:
WHERE listing.data__TypeName = 'AWS::Connect::UserHierarchyGroup'
AND detail.data__TypeName = 'AWS::Connect::UserHierarchyGroup'
AND listing.region = 'us-east-1'
+ user_hierarchy_structures:
+ name: user_hierarchy_structures
+ id: aws.connect.user_hierarchy_structures
+ x-cfn-schema-name: UserHierarchyStructure
+ x-cfn-type-name: AWS::Connect::UserHierarchyStructure
+ x-identifiers:
+ - UserHierarchyStructureArn
+ x-type: cloud_control
+ methods:
+ create_resource:
+ config:
+ requestBodyTranslate:
+ algorithm: naive_DesiredState
+ operation:
+ $ref: '#/paths/~1?Action=CreateResource&Version=2021-09-30&__UserHierarchyStructure&__detailTransformed=true/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::Connect::UserHierarchyStructure"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ update_resource:
+ operation:
+ $ref: '#/paths/~1?Action=UpdateResource&Version=2021-09-30/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::Connect::UserHierarchyStructure"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ delete_resource:
+ operation:
+ $ref: '#/paths/~1?Action=DeleteResource&Version=2021-09-30/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::Connect::UserHierarchyStructure"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ sqlVerbs:
+ insert:
+ - $ref: '#/components/x-stackQL-resources/user_hierarchy_structures/methods/create_resource'
+ delete:
+ - $ref: '#/components/x-stackQL-resources/user_hierarchy_structures/methods/delete_resource'
+ update:
+ - $ref: '#/components/x-stackQL-resources/user_hierarchy_structures/methods/update_resource'
+ config:
+ views:
+ select:
+ predicate: sqlDialect == "sqlite3" && requiredParams == [ data__Identifier ]
+ ddl: |-
+ SELECT
+ region,
+ data__Identifier,
+ JSON_EXTRACT(Properties, '$.InstanceArn') as instance_arn,
+ JSON_EXTRACT(Properties, '$.UserHierarchyStructureArn') as user_hierarchy_structure_arn,
+ JSON_EXTRACT(Properties, '$.UserHierarchyStructure') as user_hierarchy_structure
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::Connect::UserHierarchyStructure'
+ AND data__Identifier = ''
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres" && requiredParams == [ data__Identifier ]
+ ddl: |-
+ SELECT
+ region,
+ data__Identifier,
+ json_extract_path_text(Properties, 'InstanceArn') as instance_arn,
+ json_extract_path_text(Properties, 'UserHierarchyStructureArn') as user_hierarchy_structure_arn,
+ json_extract_path_text(Properties, 'UserHierarchyStructure') as user_hierarchy_structure
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::Connect::UserHierarchyStructure'
+ AND data__Identifier = ''
+ AND region = 'us-east-1'
views:
name: views
id: aws.connect.views
@@ -9189,6 +10466,48 @@ paths:
schema:
$ref: '#/components/x-cloud-control-schemas/UpdateResourceOutput'
description: Success
+ /?Action=CreateResource&Version=2021-09-30&__AgentStatus&__detailTransformed=true:
+ parameters:
+ - $ref: '#/components/parameters/X-Amz-Content-Sha256'
+ - $ref: '#/components/parameters/X-Amz-Date'
+ - $ref: '#/components/parameters/X-Amz-Algorithm'
+ - $ref: '#/components/parameters/X-Amz-Credential'
+ - $ref: '#/components/parameters/X-Amz-Security-Token'
+ - $ref: '#/components/parameters/X-Amz-Signature'
+ - $ref: '#/components/parameters/X-Amz-SignedHeaders'
+ post:
+ operationId: CreateAgentStatus
+ parameters:
+ - description: Action Header
+ in: header
+ name: X-Amz-Target
+ required: false
+ schema:
+ default: CloudApiService.CreateResource
+ enum:
+ - CloudApiService.CreateResource
+ type: string
+ - in: header
+ name: Content-Type
+ required: false
+ schema:
+ default: application/x-amz-json-1.0
+ enum:
+ - application/x-amz-json-1.0
+ type: string
+ requestBody:
+ content:
+ application/x-amz-json-1.0:
+ schema:
+ $ref: '#/components/schemas/CreateAgentStatusRequest'
+ required: true
+ responses:
+ '200':
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/x-cloud-control-schemas/ProgressEvent'
+ description: Success
/?Action=CreateResource&Version=2021-09-30&__ApprovedOrigin&__detailTransformed=true:
parameters:
- $ref: '#/components/parameters/X-Amz-Content-Sha256'
@@ -9315,6 +10634,48 @@ paths:
schema:
$ref: '#/components/x-cloud-control-schemas/ProgressEvent'
description: Success
+ /?Action=CreateResource&Version=2021-09-30&__EmailAddress&__detailTransformed=true:
+ parameters:
+ - $ref: '#/components/parameters/X-Amz-Content-Sha256'
+ - $ref: '#/components/parameters/X-Amz-Date'
+ - $ref: '#/components/parameters/X-Amz-Algorithm'
+ - $ref: '#/components/parameters/X-Amz-Credential'
+ - $ref: '#/components/parameters/X-Amz-Security-Token'
+ - $ref: '#/components/parameters/X-Amz-Signature'
+ - $ref: '#/components/parameters/X-Amz-SignedHeaders'
+ post:
+ operationId: CreateEmailAddress
+ parameters:
+ - description: Action Header
+ in: header
+ name: X-Amz-Target
+ required: false
+ schema:
+ default: CloudApiService.CreateResource
+ enum:
+ - CloudApiService.CreateResource
+ type: string
+ - in: header
+ name: Content-Type
+ required: false
+ schema:
+ default: application/x-amz-json-1.0
+ enum:
+ - application/x-amz-json-1.0
+ type: string
+ requestBody:
+ content:
+ application/x-amz-json-1.0:
+ schema:
+ $ref: '#/components/schemas/CreateEmailAddressRequest'
+ required: true
+ responses:
+ '200':
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/x-cloud-control-schemas/ProgressEvent'
+ description: Success
/?Action=CreateResource&Version=2021-09-30&__EvaluationForm&__detailTransformed=true:
parameters:
- $ref: '#/components/parameters/X-Amz-Content-Sha256'
@@ -10029,6 +11390,48 @@ paths:
schema:
$ref: '#/components/x-cloud-control-schemas/ProgressEvent'
description: Success
+ /?Action=CreateResource&Version=2021-09-30&__UserHierarchyStructure&__detailTransformed=true:
+ parameters:
+ - $ref: '#/components/parameters/X-Amz-Content-Sha256'
+ - $ref: '#/components/parameters/X-Amz-Date'
+ - $ref: '#/components/parameters/X-Amz-Algorithm'
+ - $ref: '#/components/parameters/X-Amz-Credential'
+ - $ref: '#/components/parameters/X-Amz-Security-Token'
+ - $ref: '#/components/parameters/X-Amz-Signature'
+ - $ref: '#/components/parameters/X-Amz-SignedHeaders'
+ post:
+ operationId: CreateUserHierarchyStructure
+ parameters:
+ - description: Action Header
+ in: header
+ name: X-Amz-Target
+ required: false
+ schema:
+ default: CloudApiService.CreateResource
+ enum:
+ - CloudApiService.CreateResource
+ type: string
+ - in: header
+ name: Content-Type
+ required: false
+ schema:
+ default: application/x-amz-json-1.0
+ enum:
+ - application/x-amz-json-1.0
+ type: string
+ requestBody:
+ content:
+ application/x-amz-json-1.0:
+ schema:
+ $ref: '#/components/schemas/CreateUserHierarchyStructureRequest'
+ required: true
+ responses:
+ '200':
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/x-cloud-control-schemas/ProgressEvent'
+ description: Success
/?Action=CreateResource&Version=2021-09-30&__View&__detailTransformed=true:
parameters:
- $ref: '#/components/parameters/X-Amz-Content-Sha256'
diff --git a/providers/src/aws/v00.00.00000/services/connectcampaigns.yaml b/providers/src/aws/v00.00.00000/services/connectcampaigns.yaml
index 63d90c4f..d7ee01bd 100644
--- a/providers/src/aws/v00.00.00000/services/connectcampaigns.yaml
+++ b/providers/src/aws/v00.00.00000/services/connectcampaigns.yaml
@@ -560,6 +560,9 @@ components:
tagUpdatable: true
cloudFormationSystemTags: false
tagProperty: /properties/Tags
+ permissions:
+ - connect-campaigns:UntagResource
+ - connect-campaigns:TagResource
x-required-permissions:
create:
- connect-campaigns:CreateCampaign
diff --git a/providers/src/aws/v00.00.00000/services/connectcampaignsv2.yaml b/providers/src/aws/v00.00.00000/services/connectcampaignsv2.yaml
new file mode 100644
index 00000000..3ada9b89
--- /dev/null
+++ b/providers/src/aws/v00.00.00000/services/connectcampaignsv2.yaml
@@ -0,0 +1,1431 @@
+openapi: 3.0.0
+info:
+ title: ConnectCampaignsV2
+ version: 2.0.0
+ x-serviceName: cloudcontrolapi
+servers:
+ - url: https://cloudcontrolapi.{region}.amazonaws.com
+ variables:
+ region:
+ description: The AWS region
+ enum:
+ - us-east-1
+ - us-east-2
+ - us-west-1
+ - us-west-2
+ - us-gov-west-1
+ - us-gov-east-1
+ - ca-central-1
+ - eu-north-1
+ - eu-west-1
+ - eu-west-2
+ - eu-west-3
+ - eu-central-1
+ - eu-south-1
+ - af-south-1
+ - ap-northeast-1
+ - ap-northeast-2
+ - ap-northeast-3
+ - ap-southeast-1
+ - ap-southeast-2
+ - ap-east-1
+ - ap-south-1
+ - sa-east-1
+ - me-south-1
+ default: us-east-1
+ description: The CloudControlApi multi-region endpoint
+ - url: https://cloudcontrolapi.{region}.amazonaws.com.cn
+ variables:
+ region:
+ description: The AWS region
+ enum:
+ - cn-north-1
+ - cn-northwest-1
+ default: cn-north-1
+ description: The CloudControlApi endpoint for China (Beijing) and China (Ningxia)
+components:
+ parameters:
+ X-Amz-Content-Sha256:
+ name: X-Amz-Content-Sha256
+ in: header
+ schema:
+ type: string
+ required: false
+ X-Amz-Date:
+ name: X-Amz-Date
+ in: header
+ schema:
+ type: string
+ required: false
+ X-Amz-Algorithm:
+ name: X-Amz-Algorithm
+ in: header
+ schema:
+ type: string
+ required: false
+ X-Amz-Credential:
+ name: X-Amz-Credential
+ in: header
+ schema:
+ type: string
+ required: false
+ X-Amz-Security-Token:
+ name: X-Amz-Security-Token
+ in: header
+ schema:
+ type: string
+ required: false
+ X-Amz-Signature:
+ name: X-Amz-Signature
+ in: header
+ schema:
+ type: string
+ required: false
+ X-Amz-SignedHeaders:
+ name: X-Amz-SignedHeaders
+ in: header
+ schema:
+ type: string
+ required: false
+ x-cloud-control-schemas:
+ AlreadyExistsException: {}
+ CancelResourceRequestInput:
+ properties:
+ RequestToken:
+ $ref: '#/components/x-cloud-control-schemas/RequestToken'
+ required:
+ - RequestToken
+ title: CancelResourceRequestInput
+ type: object
+ CancelResourceRequestOutput:
+ properties:
+ ProgressEvent:
+ $ref: '#/components/x-cloud-control-schemas/ProgressEvent'
+ type: object
+ ClientToken:
+ maxLength: 128
+ minLength: 1
+ pattern: '[-A-Za-z0-9+/=]+'
+ type: string
+ ClientTokenConflictException: {}
+ ConcurrentModificationException: {}
+ ConcurrentOperationException: {}
+ CreateResourceInput:
+ properties:
+ ClientToken:
+ type: string
+ DesiredState:
+ allOf:
+ - $ref: '#/components/x-cloud-control-schemas/Properties'
+ - description: >-
+ Structured data format representing the desired state of the resource, consisting of that resource's properties and their desired values.
Cloud Control API currently supports JSON as a structured data format.
<p>Specify the desired state as one of the following:</p> <ul> <li> <p>A JSON blob</p> </li> <li> <p>A local path containing the desired state in JSON data format</p>
+ </li> </ul> <p>For more information, see <a href="https://docs.aws.amazon.com/cloudcontrolapi/latest/userguide/resource-operations-create.html#resource-operations-create-desiredstate">Composing the desired state of the resource</a> in the <i>Amazon Web Services Cloud Control API User Guide</i>.</p> <p>For more information about the properties of a specific resource, refer to the related topic for the resource in the
+ <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-template-resource-type-ref.html">Resource and property types reference</a> in the <i>CloudFormation Users Guide</i>.</p>
+ RoleArn:
+ type: string
+ TypeName:
+ type: string
+ TypeVersionId:
+ type: string
+ required:
+ - DesiredState
+ title: CreateResourceInput
+ type: object
+ CreateResourceOutput:
+ properties:
+ ProgressEvent:
+ $ref: '#/components/x-cloud-control-schemas/ProgressEvent'
+ type: object
+ DeleteResourceInput:
+ properties:
+ ClientToken:
+ type: string
+ Identifier:
+ $ref: '#/components/x-cloud-control-schemas/Identifier'
+ RoleArn:
+ type: string
+ TypeName:
+ type: string
+ TypeVersionId:
+ type: string
+ required:
+ - Identifier
+ title: DeleteResourceInput
+ type: object
+ DeleteResourceOutput:
+ properties:
+ ProgressEvent:
+ $ref: '#/components/x-cloud-control-schemas/ProgressEvent'
+ type: object
+ GeneralServiceException: {}
+ GetResourceInput:
+ properties:
+ TypeName:
+ $ref: '#/components/x-cloud-control-schemas/TypeName'
+ Identifier:
+ $ref: '#/components/x-cloud-control-schemas/Identifier'
+ TypeVersionId:
+ $ref: '#/components/x-cloud-control-schemas/TypeVersionId'
+ RoleArn:
+ $ref: '#/components/x-cloud-control-schemas/RoleArn'
+ required:
+ - TypeName
+ - Identifier
+ title: GetResourceInput
+ type: object
+ GetResourceOutput:
+ properties:
+ ResourceDescription:
+ $ref: '#/components/x-cloud-control-schemas/ResourceDescription'
+ TypeName:
+ type: string
+ type: object
+ GetResourceRequestStatusInput:
+ properties:
+ RequestToken:
+ $ref: '#/components/x-cloud-control-schemas/RequestToken'
+ required:
+ - RequestToken
+ title: GetResourceRequestStatusInput
+ type: object
+ GetResourceRequestStatusOutput:
+ properties:
+ ProgressEvent:
+ $ref: '#/components/x-cloud-control-schemas/ProgressEvent'
+ type: object
+ HandlerErrorCode:
+ enum:
+ - NotUpdatable
+ - InvalidRequest
+ - AccessDenied
+ - InvalidCredentials
+ - AlreadyExists
+ - NotFound
+ - ResourceConflict
+ - Throttling
+ - ServiceLimitExceeded
+ - NotStabilized
+ - GeneralServiceException
+ - ServiceInternalError
+ - ServiceTimeout
+ - NetworkFailure
+ - InternalFailure
+ type: string
+ HandlerFailureException: {}
+ HandlerInternalFailureException: {}
+ HandlerNextToken:
+ maxLength: 2048
+ minLength: 1
+ pattern: .+
+ type: string
+ Identifier:
+ maxLength: 1024
+ minLength: 1
+ pattern: .+
+ type: string
+ InvalidCredentialsException: {}
+ InvalidRequestException: {}
+ MaxResults:
+ maximum: 100
+ minimum: 1
+ type: integer
+ NetworkFailureException: {}
+ NextToken:
+ maxLength: 2048
+ minLength: 1
+ pattern: '[-A-Za-z0-9+/=]+'
+ type: string
+ NotStabilizedException: {}
+ NotUpdatableException: {}
+ Operation:
+ enum:
+ - CREATE
+ - DELETE
+ - UPDATE
+ type: string
+ OperationStatus:
+ enum:
+ - PENDING
+ - IN_PROGRESS
+ - SUCCESS
+ - FAILED
+ - CANCEL_IN_PROGRESS
+ - CANCEL_COMPLETE
+ type: string
+ OperationStatuses:
+ items:
+ $ref: '#/components/x-cloud-control-schemas/OperationStatus'
+ type: array
+ Operations:
+ items:
+ $ref: '#/components/x-cloud-control-schemas/Operation'
+ type: array
+ PatchDocument:
+ format: password
+ maxLength: 65536
+ minLength: 1
+ pattern: '[\s\S]*'
+ type: string
+ PrivateTypeException: {}
+ ProgressEvent:
+ example:
+ ErrorCode: string
+ EventTime: number
+ Identifier: string
+ Operation: string
+ OperationStatus: string
+ RequestToken: string
+ ResourceModel: string
+ RetryAfter: number
+ StatusMessage: string
+ TypeName: string
+ properties:
+ ErrorCode:
+ type: string
+ EventTime:
+ type: number
+ Identifier:
+ type: string
+ Operation:
+ type: string
+ OperationStatus:
+ type: string
+ RequestToken:
+ type: string
+ ResourceModel:
+ type: string
+ RetryAfter:
+ type: number
+ StatusMessage:
+ type: string
+ TypeName:
+ type: string
+ type: object
+ Properties:
+ format: password
+ maxLength: 65536
+ minLength: 1
+ pattern: '[\s\S]*'
+ type: string
+ RequestToken:
+ maxLength: 128
+ minLength: 1
+ pattern: '[-A-Za-z0-9+/=]+'
+ type: string
+ RequestTokenNotFoundException: {}
+ ResourceConflictException: {}
+ ResourceDescription:
+ description: Represents information about a provisioned resource.
+ properties:
+ Identifier:
+ type: string
+ Properties:
+ type: string
+ type: object
+ ResourceDescriptions:
+ items:
+ $ref: '#/components/x-cloud-control-schemas/ResourceDescription'
+ type: array
+ ResourceNotFoundException: {}
+ ResourceRequestStatusFilter:
+ description: The filter criteria to use in determining the requests returned.
+ properties:
+ undefined:
+ allOf:
+ - $ref: '#/components/x-cloud-control-schemas/OperationStatuses'
+ - description: >-
+ The operation statuses to include in the filter.
-
PENDING: The operation has been requested, but not yet initiated.
-
IN_PROGRESS: The operation is in progress.
-
SUCCESS: The operation completed.
-
FAILED: The operation failed.
-
CANCEL_IN_PROGRESS: The operation is in the process of being canceled.
-
+ CANCEL_COMPLETE: The operation has been canceled.
+ type: object
+ ResourceRequestStatusSummaries:
+ items:
+ $ref: '#/components/x-cloud-control-schemas/ProgressEvent'
+ type: array
+ RoleArn:
+ maxLength: 2048
+ minLength: 20
+ pattern: arn:.+:iam::[0-9]{12}:role/.+
+ type: string
+ ServiceInternalErrorException: {}
+ ServiceLimitExceededException: {}
+ StatusMessage:
+ maxLength: 1024
+ minLength: 0
+ pattern: '[\s\S]*'
+ type: string
+ ThrottlingException: {}
+ Timestamp:
+ format: date-time
+ type: string
+ TypeName:
+ maxLength: 196
+ minLength: 10
+ pattern: '[A-Za-z0-9]{2,64}::[A-Za-z0-9]{2,64}::[A-Za-z0-9]{2,64}'
+ type: string
+ TypeNotFoundException: {}
+ TypeVersionId:
+ maxLength: 128
+ minLength: 1
+ pattern: '[A-Za-z0-9-]+'
+ type: string
+ UnsupportedActionException: {}
+ UpdateResourceInput:
+ properties:
+ undefined:
+ allOf:
+ - $ref: '#/components/x-cloud-control-schemas/PatchDocument'
+ required:
+ - Identifier
+ - PatchDocument
+ title: UpdateResourceInput
+ type: object
+ UpdateResourceOutput:
+ properties:
+ ProgressEvent:
+ $ref: '#/components/x-cloud-control-schemas/ProgressEvent'
+ type: object
+ schemas:
+ CampaignName:
+ type: string
+ maxLength: 127
+ minLength: 1
+ description: Campaign name
+ InstanceId:
+ type: string
+ maxLength: 256
+ minLength: 0
+ description: Amazon Connect Instance Id
+ pattern: ^[a-zA-Z0-9_\-.]*$
+ Capacity:
+ type: number
+ maximum: 1
+ minimum: 0.01
+ description: Allocates outbound capacity for the specific channel of this campaign between multiple active campaigns
+ QueueId:
+ type: string
+ maxLength: 500
+ description: The queue for the call
+ ContactFlowId:
+ type: string
+ maxLength: 500
+ description: The identifier of the contact flow for the outbound call
+ SourcePhoneNumber:
+ type: string
+ maxLength: 100
+ description: The phone number associated with the Amazon Connect instance, in E.164 format. If you do not specify a source phone number, you must specify a queue.
+ Arn:
+ type: string
+ maxLength: 500
+ minLength: 20
+ description: Arn
+ pattern: ^arn:.*$
+ EmailAddress:
+ type: string
+ maxLength: 255
+ minLength: 1
+ description: Email address used for Email messages
+ pattern: ^[\w-\.\+]+@([\w-]+\.)+[\w-]{2,4}$
+ SourceEmailAddressDisplayName:
+ type: string
+ maxLength: 127
+ minLength: 1
+ description: The name of the source email address display name
+ BandwidthAllocation:
+ type: number
+ maximum: 1
+ minimum: 0
+ description: The bandwidth allocation of a queue resource.
+ TimeStamp:
+ type: string
+ description: Timestamp with no UTC offset or timezone
+ maxLength: 100
+ TimeZone:
+ type: string
+ description: Time Zone Id in the IANA format
+ Iso8601Duration:
+ type: string
+ description: Time duration in ISO 8601 format
+ maxLength: 50
+ minLength: 0
+ pattern: ^[a-zA-Z0-9.]*$
+ Iso8601Date:
+ type: string
+ description: Date in ISO 8601 format, e.g. 2024-01-01
+ pattern: ^\d{4}-\d{2}-\d{2}$
+ Iso8601Time:
+ type: string
+ description: Time in ISO 8601 format, e.g. T23:11
+ pattern: ^T\d{2}:\d{2}$
+ DayOfWeek:
+ type: string
+ description: Day of week
+ enum:
+ - MONDAY
+ - TUESDAY
+ - WEDNESDAY
+ - THURSDAY
+ - FRIDAY
+ - SATURDAY
+ - SUNDAY
+ PredictiveConfig:
+ type: object
+ description: Predictive config
+ properties:
+ BandwidthAllocation:
+ $ref: '#/components/schemas/BandwidthAllocation'
+ required:
+ - BandwidthAllocation
+ additionalProperties: false
+ ProgressiveConfig:
+ type: object
+ description: Progressive config
+ properties:
+ BandwidthAllocation:
+ $ref: '#/components/schemas/BandwidthAllocation'
+ required:
+ - BandwidthAllocation
+ additionalProperties: false
+ AgentlessConfig:
+ type: object
+ description: Agentless config
+ required: []
+ additionalProperties: false
+ TelephonyOutboundMode:
+ type: object
+ description: Telephony Outbound Mode
+ properties:
+ ProgressiveConfig:
+ $ref: '#/components/schemas/ProgressiveConfig'
+ PredictiveConfig:
+ $ref: '#/components/schemas/PredictiveConfig'
+ AgentlessConfig:
+ $ref: '#/components/schemas/AgentlessConfig'
+ oneOf:
+ - required:
+ - ProgressiveConfig
+ - required:
+ - PredictiveConfig
+ - required:
+ - AgentlessConfig
+ additionalProperties: false
+ AnswerMachineDetectionConfig:
+ type: object
+ description: The configuration used for answering machine detection during outbound calls
+ properties:
+ EnableAnswerMachineDetection:
+ type: boolean
+ description: Flag to decided whether outbound calls should have answering machine detection enabled or not
+ AwaitAnswerMachinePrompt:
+ type: boolean
+ description: Enables detection of prompts (e.g., beep after after a voicemail greeting)
+ required:
+ - EnableAnswerMachineDetection
+ additionalProperties: false
+ TelephonyOutboundConfig:
+ type: object
+ description: Default Telephone Outbound config
+ properties:
+ ConnectContactFlowId:
+ $ref: '#/components/schemas/ContactFlowId'
+ ConnectSourcePhoneNumber:
+ $ref: '#/components/schemas/SourcePhoneNumber'
+ AnswerMachineDetectionConfig:
+ $ref: '#/components/schemas/AnswerMachineDetectionConfig'
+ required:
+ - ConnectContactFlowId
+ additionalProperties: false
+ TelephonyChannelSubtypeConfig:
+ type: object
+ description: Telephony Channel Subtype config
+ properties:
+ Capacity:
+ $ref: '#/components/schemas/Capacity'
+ ConnectQueueId:
+ $ref: '#/components/schemas/QueueId'
+ OutboundMode:
+ $ref: '#/components/schemas/TelephonyOutboundMode'
+ DefaultOutboundConfig:
+ $ref: '#/components/schemas/TelephonyOutboundConfig'
+ required:
+ - OutboundMode
+ - DefaultOutboundConfig
+ additionalProperties: false
+ SmsOutboundMode:
+ type: object
+ description: SMS Outbound Mode
+ properties:
+ AgentlessConfig:
+ $ref: '#/components/schemas/AgentlessConfig'
+ additionalProperties: false
+ SmsOutboundConfig:
+ type: object
+ description: Default SMS outbound config
+ properties:
+ ConnectSourcePhoneNumberArn:
+ $ref: '#/components/schemas/Arn'
+ WisdomTemplateArn:
+ $ref: '#/components/schemas/Arn'
+ required:
+ - ConnectSourcePhoneNumberArn
+ - WisdomTemplateArn
+ additionalProperties: false
+ SmsChannelSubtypeConfig:
+ type: object
+ description: SMS Channel Subtype config
+ properties:
+ Capacity:
+ $ref: '#/components/schemas/Capacity'
+ OutboundMode:
+ $ref: '#/components/schemas/SmsOutboundMode'
+ DefaultOutboundConfig:
+ $ref: '#/components/schemas/SmsOutboundConfig'
+ required:
+ - OutboundMode
+ - DefaultOutboundConfig
+ additionalProperties: false
+ EmailOutboundMode:
+ type: object
+ description: Email Outbound Mode
+ properties:
+ AgentlessConfig:
+ $ref: '#/components/schemas/AgentlessConfig'
+ additionalProperties: false
+ EmailOutboundConfig:
+ type: object
+ description: Default SMS outbound config
+ properties:
+ ConnectSourceEmailAddress:
+ $ref: '#/components/schemas/EmailAddress'
+ SourceEmailAddressDisplayName:
+ $ref: '#/components/schemas/SourceEmailAddressDisplayName'
+ WisdomTemplateArn:
+ $ref: '#/components/schemas/Arn'
+ required:
+ - ConnectSourceEmailAddress
+ - WisdomTemplateArn
+ additionalProperties: false
+ EmailChannelSubtypeConfig:
+ type: object
+ description: Email Channel Subtype config
+ properties:
+ Capacity:
+ $ref: '#/components/schemas/Capacity'
+ OutboundMode:
+ $ref: '#/components/schemas/EmailOutboundMode'
+ DefaultOutboundConfig:
+ $ref: '#/components/schemas/EmailOutboundConfig'
+ required:
+ - OutboundMode
+ - DefaultOutboundConfig
+ additionalProperties: false
+ ChannelSubtypeConfig:
+ type: object
+ description: The possible types of channel subtype config parameters
+ properties:
+ Telephony:
+ $ref: '#/components/schemas/TelephonyChannelSubtypeConfig'
+ Sms:
+ $ref: '#/components/schemas/SmsChannelSubtypeConfig'
+ Email:
+ $ref: '#/components/schemas/EmailChannelSubtypeConfig'
+ anyOf:
+ - required:
+ - Telephony
+ - required:
+ - Sms
+ - required:
+ - Email
+ additionalProperties: false
+ Source:
+ type: object
+ description: The possible source of the campaign
+ properties:
+ CustomerProfilesSegmentArn:
+ $ref: '#/components/schemas/Arn'
+ EventTrigger:
+ $ref: '#/components/schemas/EventTrigger'
+ oneOf:
+ - required:
+ - CustomerProfilesSegmentArn
+ - required:
+ - EventTrigger
+ additionalProperties: false
+ EventTrigger:
+ type: object
+ description: The event trigger of the campaign
+ properties:
+ CustomerProfilesDomainArn:
+ $ref: '#/components/schemas/Arn'
+ additionalProperties: false
+ TimeRange:
+ type: object
+ description: Time range in 24 hour format
+ properties:
+ StartTime:
+ $ref: '#/components/schemas/Iso8601Time'
+ EndTime:
+ $ref: '#/components/schemas/Iso8601Time'
+ required:
+ - StartTime
+ - EndTime
+ additionalProperties: false
+ TimeRangeList:
+ type: array
+ description: List of time range
+ items:
+ $ref: '#/components/schemas/TimeRange'
+ x-insertionOrder: false
+ DailyHour:
+ type: object
+ description: Daily Hour
+ properties:
+ Key:
+ $ref: '#/components/schemas/DayOfWeek'
+ Value:
+ $ref: '#/components/schemas/TimeRangeList'
+ additionalProperties: false
+ DailyHours:
+ type: array
+ uniqueItems: true
+ x-insertionOrder: false
+ description: Daily Hours map
+ items:
+ $ref: '#/components/schemas/DailyHour'
+ OpenHours:
+ type: object
+ description: Open Hours config
+ properties:
+ DailyHours:
+ $ref: '#/components/schemas/DailyHours'
+ required:
+ - DailyHours
+ additionalProperties: false
+ RestrictedPeriod:
+ type: object
+ description: Restricted period
+ properties:
+ Name:
+ type: string
+ maxLength: 127
+ description: The name of a restricted period
+ StartDate:
+ $ref: '#/components/schemas/Iso8601Date'
+ EndDate:
+ $ref: '#/components/schemas/Iso8601Date'
+ required:
+ - StartDate
+ - EndDate
+ additionalProperties: false
+ RestrictedPeriodList:
+ type: array
+ description: List of restricted period
+ items:
+ $ref: '#/components/schemas/RestrictedPeriod'
+ x-insertionOrder: false
+ RestrictedPeriods:
+ type: object
+ description: Restricted period config
+ properties:
+ RestrictedPeriodList:
+ $ref: '#/components/schemas/RestrictedPeriodList'
+ oneOf:
+ - required:
+ - RestrictedPeriodList
+ additionalProperties: false
+ TimeWindow:
+ type: object
+ description: Time window config
+ properties:
+ OpenHours:
+ $ref: '#/components/schemas/OpenHours'
+ RestrictedPeriods:
+ $ref: '#/components/schemas/RestrictedPeriods'
+ required:
+ - OpenHours
+ additionalProperties: false
+ Schedule:
+ type: object
+ description: Campaign schedule
+ properties:
+ StartTime:
+ $ref: '#/components/schemas/TimeStamp'
+ EndTime:
+ $ref: '#/components/schemas/TimeStamp'
+ RefreshFrequency:
+ $ref: '#/components/schemas/Iso8601Duration'
+ required:
+ - StartTime
+ - EndTime
+ additionalProperties: false
+ LocalTimeZoneDetectionType:
+ type: string
+ description: Local TimeZone Detection method
+ enum:
+ - ZIP_CODE
+ - AREA_CODE
+ LocalTimeZoneDetection:
+ type: array
+ description: Local TimeZone Detection method list
+ items:
+ $ref: '#/components/schemas/LocalTimeZoneDetectionType'
+ x-insertionOrder: false
+ LocalTimeZoneConfig:
+ type: object
+ description: Local time zone config
+ properties:
+ DefaultTimeZone:
+ $ref: '#/components/schemas/TimeZone'
+ LocalTimeZoneDetection:
+ $ref: '#/components/schemas/LocalTimeZoneDetection'
+ additionalProperties: false
+ CommunicationTimeConfig:
+ type: object
+ description: Campaign communication time config
+ properties:
+ LocalTimeZoneConfig:
+ $ref: '#/components/schemas/LocalTimeZoneConfig'
+ Telephony:
+ $ref: '#/components/schemas/TimeWindow'
+ Sms:
+ $ref: '#/components/schemas/TimeWindow'
+ Email:
+ $ref: '#/components/schemas/TimeWindow'
+ required:
+ - LocalTimeZoneConfig
+ additionalProperties: false
+ CommunicationLimitTimeUnit:
+ type: string
+ description: The communication limit time unit
+ enum:
+ - DAY
+ CommunicationLimit:
+ type: object
+ description: Communication Limit
+ properties:
+ MaxCountPerRecipient:
+ type: integer
+ minimum: 1
+ Frequency:
+ type: integer
+ minimum: 1
+ Unit:
+ $ref: '#/components/schemas/CommunicationLimitTimeUnit'
+ required:
+ - MaxCountPerRecipient
+ - Frequency
+ - Unit
+ additionalProperties: false
+ CommunicationLimitList:
+ type: array
+ description: List of communication limit
+ items:
+ $ref: '#/components/schemas/CommunicationLimit'
+ x-insertionOrder: false
+ CommunicationLimits:
+ type: object
+ description: Communication limits
+ properties:
+ CommunicationLimitList:
+ $ref: '#/components/schemas/CommunicationLimitList'
+ additionalProperties: false
+ CommunicationLimitsConfig:
+ type: object
+ description: Communication limits config
+ properties:
+ AllChannelsSubtypes:
+ $ref: '#/components/schemas/CommunicationLimits'
+ additionalProperties: false
+ Tag:
+ type: object
+ properties:
+ Key:
+ type: string
+ description: The key name of the tag.
+ Value:
+ type: string
+ description: The value for the tag.
+ required:
+ - Key
+ - Value
+ additionalProperties: false
+ Campaign:
+ type: object
+ properties:
+ Arn:
+ type: string
+ maxLength: 256
+ minLength: 0
+ description: Amazon Connect Campaign Arn
+ pattern: ^arn:aws[-a-z0-9]*:connect-campaigns:[-a-z0-9]*:[0-9]{12}:campaign/[-a-zA-Z0-9]*$
+ Name:
+ $ref: '#/components/schemas/CampaignName'
+ ConnectInstanceId:
+ $ref: '#/components/schemas/InstanceId'
+ ChannelSubtypeConfig:
+ $ref: '#/components/schemas/ChannelSubtypeConfig'
+ Source:
+ $ref: '#/components/schemas/Source'
+ ConnectCampaignFlowArn:
+ $ref: '#/components/schemas/Arn'
+ Schedule:
+ $ref: '#/components/schemas/Schedule'
+ CommunicationTimeConfig:
+ $ref: '#/components/schemas/CommunicationTimeConfig'
+ CommunicationLimitsOverride:
+ $ref: '#/components/schemas/CommunicationLimitsConfig'
+ Tags:
+ type: array
+ maxItems: 50
+ uniqueItems: true
+ x-insertionOrder: false
+ description: One or more tags.
+ items:
+ $ref: '#/components/schemas/Tag'
+ required:
+ - Name
+ - ConnectInstanceId
+ - ChannelSubtypeConfig
+ x-stackql-resource-name: campaign
+ description: Definition of AWS::ConnectCampaignsV2::Campaign Resource Type
+ x-type-name: AWS::ConnectCampaignsV2::Campaign
+ x-stackql-primary-identifier:
+ - Arn
+ x-create-only-properties:
+ - ConnectInstanceId
+ x-read-only-properties:
+ - Arn
+ x-required-properties:
+ - Name
+ - ConnectInstanceId
+ - ChannelSubtypeConfig
+ x-tagging:
+ taggable: true
+ tagOnCreate: true
+ tagUpdatable: true
+ cloudFormationSystemTags: false
+ tagProperty: /properties/Tags
+ permissions:
+ - connect-campaigns:UntagResource
+ - connect-campaigns:TagResource
+ x-required-permissions:
+ create:
+ - connect-campaigns:CreateCampaign
+ - connect-campaigns:DescribeCampaign
+ - connect-campaigns:TagResource
+ - connect:DescribeContactFlow
+ - connect:DescribeEmailAddress
+ - connect:DescribeInstance
+ - connect:DescribePhoneNumber
+ - connect:DescribeQueue
+ - profile:GetSegmentDefinition
+ - wisdom:GetMessageTemplate
+ read:
+ - connect-campaigns:DescribeCampaign
+ delete:
+ - connect-campaigns:DeleteCampaign
+ - connect-campaigns:DeleteCampaignChannelSubtypeConfig
+ - connect-campaigns:DeleteCampaignCommunicationLimits
+ - connect-campaigns:DeleteCampaignCommunicationTime
+ list:
+ - connect-campaigns:ListCampaigns
+ update:
+ - connect-campaigns:DeleteCampaignChannelSubtypeConfig
+ - connect-campaigns:DeleteCampaignCommunicationLimits
+ - connect-campaigns:DeleteCampaignCommunicationTime
+ - connect-campaigns:UpdateCampaignChannelSubtypeConfig
+ - connect-campaigns:UpdateCampaignCommunicationLimits
+ - connect-campaigns:UpdateCampaignCommunicationTime
+ - connect-campaigns:UpdateCampaignName
+ - connect-campaigns:UpdateCampaignFlowAssociation
+ - connect-campaigns:UpdateCampaignSchedule
+ - connect-campaigns:UpdateCampaignSource
+ - connect-campaigns:TagResource
+ - connect-campaigns:UntagResource
+ - connect-campaigns:DescribeCampaign
+ - connect:DescribeContactFlow
+ - connect:DescribeEmailAddress
+ - connect:DescribePhoneNumber
+ - connect:DescribeQueue
+ - profile:GetSegmentDefinition
+ - wisdom:GetMessageTemplate
+ CreateCampaignRequest:
+ properties:
+ ClientToken:
+ type: string
+ RoleArn:
+ type: string
+ TypeName:
+ type: string
+ TypeVersionId:
+ type: string
+ DesiredState:
+ type: object
+ properties:
+ Arn:
+ type: string
+ maxLength: 256
+ minLength: 0
+ description: Amazon Connect Campaign Arn
+ pattern: ^arn:aws[-a-z0-9]*:connect-campaigns:[-a-z0-9]*:[0-9]{12}:campaign/[-a-zA-Z0-9]*$
+ Name:
+ $ref: '#/components/schemas/CampaignName'
+ ConnectInstanceId:
+ $ref: '#/components/schemas/InstanceId'
+ ChannelSubtypeConfig:
+ $ref: '#/components/schemas/ChannelSubtypeConfig'
+ Source:
+ $ref: '#/components/schemas/Source'
+ ConnectCampaignFlowArn:
+ $ref: '#/components/schemas/Arn'
+ Schedule:
+ $ref: '#/components/schemas/Schedule'
+ CommunicationTimeConfig:
+ $ref: '#/components/schemas/CommunicationTimeConfig'
+ CommunicationLimitsOverride:
+ $ref: '#/components/schemas/CommunicationLimitsConfig'
+ Tags:
+ type: array
+ maxItems: 50
+ uniqueItems: true
+ x-insertionOrder: false
+ description: One or more tags.
+ items:
+ $ref: '#/components/schemas/Tag'
+ x-stackQL-stringOnly: true
+ x-title: CreateCampaignRequest
+ type: object
+ required: []
+ securitySchemes:
+ hmac:
+ type: apiKey
+ name: Authorization
+ in: header
+ description: Amazon Signature authorization v4
+ x-amazon-apigateway-authtype: awsSigv4
+ x-stackQL-resources:
+ campaigns:
+ name: campaigns
+ id: aws.connectcampaignsv2.campaigns
+ x-cfn-schema-name: Campaign
+ x-cfn-type-name: AWS::ConnectCampaignsV2::Campaign
+ x-identifiers:
+ - Arn
+ x-type: cloud_control
+ methods:
+ create_resource:
+ config:
+ requestBodyTranslate:
+ algorithm: naive_DesiredState
+ operation:
+ $ref: '#/paths/~1?Action=CreateResource&Version=2021-09-30&__Campaign&__detailTransformed=true/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::ConnectCampaignsV2::Campaign"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ update_resource:
+ operation:
+ $ref: '#/paths/~1?Action=UpdateResource&Version=2021-09-30/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::ConnectCampaignsV2::Campaign"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ delete_resource:
+ operation:
+ $ref: '#/paths/~1?Action=DeleteResource&Version=2021-09-30/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::ConnectCampaignsV2::Campaign"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ sqlVerbs:
+ insert:
+ - $ref: '#/components/x-stackQL-resources/campaigns/methods/create_resource'
+ delete:
+ - $ref: '#/components/x-stackQL-resources/campaigns/methods/delete_resource'
+ update:
+ - $ref: '#/components/x-stackQL-resources/campaigns/methods/update_resource'
+ config:
+ views:
+ select:
+ predicate: sqlDialect == "sqlite3" && requiredParams == [ data__Identifier ]
+ ddl: |-
+ SELECT
+ region,
+ data__Identifier,
+ JSON_EXTRACT(Properties, '$.Arn') as arn,
+ JSON_EXTRACT(Properties, '$.Name') as name,
+ JSON_EXTRACT(Properties, '$.ConnectInstanceId') as connect_instance_id,
+ JSON_EXTRACT(Properties, '$.ChannelSubtypeConfig') as channel_subtype_config,
+ JSON_EXTRACT(Properties, '$.Source') as source,
+ JSON_EXTRACT(Properties, '$.ConnectCampaignFlowArn') as connect_campaign_flow_arn,
+ JSON_EXTRACT(Properties, '$.Schedule') as schedule,
+ JSON_EXTRACT(Properties, '$.CommunicationTimeConfig') as communication_time_config,
+ JSON_EXTRACT(Properties, '$.CommunicationLimitsOverride') as communication_limits_override,
+ JSON_EXTRACT(Properties, '$.Tags') as tags
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::ConnectCampaignsV2::Campaign'
+ AND data__Identifier = ''
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "sqlite3"
+ ddl: |-
+ SELECT
+ detail.region,
+ JSON_EXTRACT(detail.Properties, '$.Arn') as arn,
+ JSON_EXTRACT(detail.Properties, '$.Name') as name,
+ JSON_EXTRACT(detail.Properties, '$.ConnectInstanceId') as connect_instance_id,
+ JSON_EXTRACT(detail.Properties, '$.ChannelSubtypeConfig') as channel_subtype_config,
+ JSON_EXTRACT(detail.Properties, '$.Source') as source,
+ JSON_EXTRACT(detail.Properties, '$.ConnectCampaignFlowArn') as connect_campaign_flow_arn,
+ JSON_EXTRACT(detail.Properties, '$.Schedule') as schedule,
+ JSON_EXTRACT(detail.Properties, '$.CommunicationTimeConfig') as communication_time_config,
+ JSON_EXTRACT(detail.Properties, '$.CommunicationLimitsOverride') as communication_limits_override,
+ JSON_EXTRACT(detail.Properties, '$.Tags') as tags
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ WHERE listing.data__TypeName = 'AWS::ConnectCampaignsV2::Campaign'
+ AND detail.data__TypeName = 'AWS::ConnectCampaignsV2::Campaign'
+ AND listing.region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres" && requiredParams == [ data__Identifier ]
+ ddl: |-
+ SELECT
+ region,
+ data__Identifier,
+ json_extract_path_text(Properties, 'Arn') as arn,
+ json_extract_path_text(Properties, 'Name') as name,
+ json_extract_path_text(Properties, 'ConnectInstanceId') as connect_instance_id,
+ json_extract_path_text(Properties, 'ChannelSubtypeConfig') as channel_subtype_config,
+ json_extract_path_text(Properties, 'Source') as source,
+ json_extract_path_text(Properties, 'ConnectCampaignFlowArn') as connect_campaign_flow_arn,
+ json_extract_path_text(Properties, 'Schedule') as schedule,
+ json_extract_path_text(Properties, 'CommunicationTimeConfig') as communication_time_config,
+ json_extract_path_text(Properties, 'CommunicationLimitsOverride') as communication_limits_override,
+ json_extract_path_text(Properties, 'Tags') as tags
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::ConnectCampaignsV2::Campaign'
+ AND data__Identifier = ''
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres"
+ ddl: |-
+ SELECT
+ detail.region,
+ json_extract_path_text(detail.Properties, 'Arn') as arn,
+ json_extract_path_text(detail.Properties, 'Name') as name,
+ json_extract_path_text(detail.Properties, 'ConnectInstanceId') as connect_instance_id,
+ json_extract_path_text(detail.Properties, 'ChannelSubtypeConfig') as channel_subtype_config,
+ json_extract_path_text(detail.Properties, 'Source') as source,
+ json_extract_path_text(detail.Properties, 'ConnectCampaignFlowArn') as connect_campaign_flow_arn,
+ json_extract_path_text(detail.Properties, 'Schedule') as schedule,
+ json_extract_path_text(detail.Properties, 'CommunicationTimeConfig') as communication_time_config,
+ json_extract_path_text(detail.Properties, 'CommunicationLimitsOverride') as communication_limits_override,
+ json_extract_path_text(detail.Properties, 'Tags') as tags
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ WHERE listing.data__TypeName = 'AWS::ConnectCampaignsV2::Campaign'
+ AND detail.data__TypeName = 'AWS::ConnectCampaignsV2::Campaign'
+ AND listing.region = 'us-east-1'
+ campaigns_list_only:
+ name: campaigns_list_only
+ id: aws.connectcampaignsv2.campaigns_list_only
+ x-cfn-schema-name: Campaign
+ x-cfn-type-name: AWS::ConnectCampaignsV2::Campaign
+ x-identifiers:
+ - Arn
+ x-type: cloud_control_view
+ methods: {}
+ sqlVerbs:
+ insert: []
+ delete: []
+ update: []
+ config:
+ views:
+ select:
+ predicate: sqlDialect == "sqlite3"
+ ddl: |-
+ SELECT
+ region,
+ JSON_EXTRACT(Properties, '$.Arn') as arn
+ FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::ConnectCampaignsV2::Campaign'
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres"
+ ddl: |-
+ SELECT
+ region,
+ json_extract_path_text(Properties, 'Arn') as arn
+ FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::ConnectCampaignsV2::Campaign'
+ AND region = 'us-east-1'
+ campaign_tags:
+ name: campaign_tags
+ id: aws.connectcampaignsv2.campaign_tags
+ x-cfn-schema-name: Campaign
+ x-cfn-type-name: AWS::ConnectCampaignsV2::Campaign
+ x-type: cloud_control_view
+ methods: {}
+ sqlVerbs:
+ insert: []
+ delete: []
+ update: []
+ config:
+ views:
+ select:
+ predicate: sqlDialect == "sqlite3"
+ ddl: |-
+ SELECT
+ detail.region,
+ JSON_EXTRACT(json_each.value, '$.Key') as tag_key,
+ JSON_EXTRACT(json_each.value, '$.Value') as tag_value,
+ JSON_EXTRACT(detail.Properties, '$.Arn') as arn,
+ JSON_EXTRACT(detail.Properties, '$.Name') as name,
+ JSON_EXTRACT(detail.Properties, '$.ConnectInstanceId') as connect_instance_id,
+ JSON_EXTRACT(detail.Properties, '$.ChannelSubtypeConfig') as channel_subtype_config,
+ JSON_EXTRACT(detail.Properties, '$.Source') as source,
+ JSON_EXTRACT(detail.Properties, '$.ConnectCampaignFlowArn') as connect_campaign_flow_arn,
+ JSON_EXTRACT(detail.Properties, '$.Schedule') as schedule,
+ JSON_EXTRACT(detail.Properties, '$.CommunicationTimeConfig') as communication_time_config,
+ JSON_EXTRACT(detail.Properties, '$.CommunicationLimitsOverride') as communication_limits_override
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ ,json_each(JSON_EXTRACT(detail.Properties, '$.Tags'))
+ WHERE listing.data__TypeName = 'AWS::ConnectCampaignsV2::Campaign'
+ AND detail.data__TypeName = 'AWS::ConnectCampaignsV2::Campaign'
+ AND listing.region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres"
+ ddl: |-
+ SELECT
+ detail.region,
+ json_extract_path_text(json_each.value, 'Key') as tag_key,
+ json_extract_path_text(json_each.value, 'Value') as tag_value,
+ json_extract_path_text(detail.Properties, 'Arn') as arn,
+ json_extract_path_text(detail.Properties, 'Name') as name,
+ json_extract_path_text(detail.Properties, 'ConnectInstanceId') as connect_instance_id,
+ json_extract_path_text(detail.Properties, 'ChannelSubtypeConfig') as channel_subtype_config,
+ json_extract_path_text(detail.Properties, 'Source') as source,
+ json_extract_path_text(detail.Properties, 'ConnectCampaignFlowArn') as connect_campaign_flow_arn,
+ json_extract_path_text(detail.Properties, 'Schedule') as schedule,
+ json_extract_path_text(detail.Properties, 'CommunicationTimeConfig') as communication_time_config,
+ json_extract_path_text(detail.Properties, 'CommunicationLimitsOverride') as communication_limits_override
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ ,json_array_elements_text(json_extract_path_text(detail.Properties, 'Tags'))
+ WHERE listing.data__TypeName = 'AWS::ConnectCampaignsV2::Campaign'
+ AND detail.data__TypeName = 'AWS::ConnectCampaignsV2::Campaign'
+ AND listing.region = 'us-east-1'
+paths:
+ /?Action=CreateResource&Version=2021-09-30:
+ parameters:
+ - $ref: '#/components/parameters/X-Amz-Content-Sha256'
+ - $ref: '#/components/parameters/X-Amz-Date'
+ - $ref: '#/components/parameters/X-Amz-Algorithm'
+ - $ref: '#/components/parameters/X-Amz-Credential'
+ - $ref: '#/components/parameters/X-Amz-Security-Token'
+ - $ref: '#/components/parameters/X-Amz-Signature'
+ - $ref: '#/components/parameters/X-Amz-SignedHeaders'
+ post:
+ operationId: CreateResource
+ parameters:
+ - description: Action Header
+ in: header
+ name: X-Amz-Target
+ required: false
+ schema:
+ default: CloudApiService.CreateResource
+ enum:
+ - CloudApiService.CreateResource
+ type: string
+ - in: header
+ name: Content-Type
+ required: false
+ schema:
+ default: application/x-amz-json-1.0
+ enum:
+ - application/x-amz-json-1.0
+ type: string
+ requestBody:
+ content:
+ application/x-amz-json-1.0:
+ schema:
+ $ref: '#/components/x-cloud-control-schemas/CreateResourceInput'
+ required: true
+ responses:
+ '200':
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/x-cloud-control-schemas/ProgressEvent'
+ description: Success
+ /?Action=DeleteResource&Version=2021-09-30:
+ parameters:
+ - $ref: '#/components/parameters/X-Amz-Content-Sha256'
+ - $ref: '#/components/parameters/X-Amz-Date'
+ - $ref: '#/components/parameters/X-Amz-Algorithm'
+ - $ref: '#/components/parameters/X-Amz-Credential'
+ - $ref: '#/components/parameters/X-Amz-Security-Token'
+ - $ref: '#/components/parameters/X-Amz-Signature'
+ - $ref: '#/components/parameters/X-Amz-SignedHeaders'
+ post:
+ operationId: DeleteResource
+ parameters:
+ - description: Action Header
+ in: header
+ name: X-Amz-Target
+ required: false
+ schema:
+ default: CloudApiService.DeleteResource
+ enum:
+ - CloudApiService.DeleteResource
+ type: string
+ - in: header
+ name: Content-Type
+ required: false
+ schema:
+ default: application/x-amz-json-1.0
+ enum:
+ - application/x-amz-json-1.0
+ type: string
+ requestBody:
+ content:
+ application/x-amz-json-1.0:
+ schema:
+ $ref: '#/components/x-cloud-control-schemas/DeleteResourceInput'
+ required: true
+ responses:
+ '200':
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/x-cloud-control-schemas/DeleteResourceOutput'
+ description: Success
+ /?Action=UpdateResource&Version=2021-09-30:
+ parameters:
+ - $ref: '#/components/parameters/X-Amz-Content-Sha256'
+ - $ref: '#/components/parameters/X-Amz-Date'
+ - $ref: '#/components/parameters/X-Amz-Algorithm'
+ - $ref: '#/components/parameters/X-Amz-Credential'
+ - $ref: '#/components/parameters/X-Amz-Security-Token'
+ - $ref: '#/components/parameters/X-Amz-Signature'
+ - $ref: '#/components/parameters/X-Amz-SignedHeaders'
+ post:
+ operationId: UpdateResource
+ parameters:
+ - description: Action Header
+ in: header
+ name: X-Amz-Target
+ required: false
+ schema:
+ default: CloudApiService.UpdateResource
+ enum:
+ - CloudApiService.UpdateResource
+ type: string
+ - in: header
+ name: Content-Type
+ required: false
+ schema:
+ default: application/x-amz-json-1.0
+ enum:
+ - application/x-amz-json-1.0
+ type: string
+ requestBody:
+ content:
+ application/x-amz-json-1.0:
+ schema:
+ properties:
+ ClientName:
+ type: string
+ Identifier:
+ $ref: '#/components/x-cloud-control-schemas/Identifier'
+ PatchDocument:
+ type: string
+ RoleArn:
+ $ref: '#/components/x-cloud-control-schemas/RoleArn'
+ TypeName:
+ $ref: '#/components/x-cloud-control-schemas/TypeName'
+ TypeVersionId:
+ $ref: '#/components/x-cloud-control-schemas/TypeVersionId'
+ required:
+ - Identifier
+ - PatchDocument
+ type: object
+ required: true
+ responses:
+ '200':
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/x-cloud-control-schemas/UpdateResourceOutput'
+ description: Success
+ /?Action=CreateResource&Version=2021-09-30&__Campaign&__detailTransformed=true:
+ parameters:
+ - $ref: '#/components/parameters/X-Amz-Content-Sha256'
+ - $ref: '#/components/parameters/X-Amz-Date'
+ - $ref: '#/components/parameters/X-Amz-Algorithm'
+ - $ref: '#/components/parameters/X-Amz-Credential'
+ - $ref: '#/components/parameters/X-Amz-Security-Token'
+ - $ref: '#/components/parameters/X-Amz-Signature'
+ - $ref: '#/components/parameters/X-Amz-SignedHeaders'
+ post:
+ operationId: CreateCampaign
+ parameters:
+ - description: Action Header
+ in: header
+ name: X-Amz-Target
+ required: false
+ schema:
+ default: CloudApiService.CreateResource
+ enum:
+ - CloudApiService.CreateResource
+ type: string
+ - in: header
+ name: Content-Type
+ required: false
+ schema:
+ default: application/x-amz-json-1.0
+ enum:
+ - application/x-amz-json-1.0
+ type: string
+ requestBody:
+ content:
+ application/x-amz-json-1.0:
+ schema:
+ $ref: '#/components/schemas/CreateCampaignRequest'
+ required: true
+ responses:
+ '200':
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/x-cloud-control-schemas/ProgressEvent'
+ description: Success
+x-stackQL-config:
+ requestTranslate:
+ algorithm: drop_double_underscore_params
+ pagination:
+ requestToken:
+ key: NextToken
+ location: body
+ responseToken:
+ key: NextToken
+ location: body
diff --git a/providers/src/aws/v00.00.00000/services/controltower.yaml b/providers/src/aws/v00.00.00000/services/controltower.yaml
index f6081060..3e76f625 100644
--- a/providers/src/aws/v00.00.00000/services/controltower.yaml
+++ b/providers/src/aws/v00.00.00000/services/controltower.yaml
@@ -396,17 +396,17 @@ components:
$ref: '#/components/schemas/AnyType'
additionalProperties: false
Tag:
+ additionalProperties: false
type: object
properties:
- Key:
+ Value:
+ minLength: 0
type: string
maxLength: 256
+ Key:
minLength: 1
- Value:
type: string
maxLength: 256
- minLength: 0
- additionalProperties: false
AnyType:
anyOf:
- type: string
@@ -639,6 +639,10 @@ components:
tagUpdatable: true
cloudFormationSystemTags: true
tagProperty: /properties/Tags
+ permissions:
+ - controltower:UntagResource
+ - controltower:TagResource
+ - controltower:ListTagsForResource
x-required-permissions:
create:
- controltower:ListEnabledControls
@@ -668,6 +672,8 @@ components:
- organizations:ListTargetsForPolicy
- organizations:DescribePolicy
delete:
+ - controltower:ListEnabledControls
+ - controltower:GetEnabledControl
- controltower:GetControlOperation
- controltower:DisableControl
- organizations:UpdatePolicy
@@ -684,42 +690,42 @@ components:
- controltower:ListTagsForResource
list:
- controltower:ListEnabledControls
- LandingZoneDriftStatus:
- type: string
- enum:
- - DRIFTED
- - IN_SYNC
LandingZoneStatus:
type: string
enum:
- ACTIVE
- PROCESSING
- FAILED
+ LandingZoneDriftStatus:
+ type: string
+ enum:
+ - DRIFTED
+ - IN_SYNC
LandingZone:
type: object
properties:
- LandingZoneIdentifier:
- type: string
- Arn:
- type: string
- maxLength: 2048
- minLength: 20
- pattern: ^arn:aws[0-9a-zA-Z_\-:\/]+$
Status:
$ref: '#/components/schemas/LandingZoneStatus'
LatestAvailableVersion:
+ minLength: 3
+ pattern: \d+.\d+
type: string
maxLength: 10
+ Version:
minLength: 3
pattern: \d+.\d+
+ type: string
+ maxLength: 10
DriftStatus:
$ref: '#/components/schemas/LandingZoneDriftStatus'
+ Arn:
+ minLength: 20
+ pattern: ^arn:aws[0-9a-zA-Z_\-:\/]+$
+ type: string
+ maxLength: 2048
Manifest: {}
- Version:
+ LandingZoneIdentifier:
type: string
- maxLength: 10
- minLength: 3
- pattern: \d+.\d+
Tags:
type: array
items:
@@ -742,12 +748,19 @@ components:
- Manifest
- Version
x-tagging:
+ permissions:
+ - controltower:UntagResource
+ - controltower:TagResource
+ - controltower:ListTagsForResource
taggable: true
tagOnCreate: true
tagUpdatable: true
- cloudFormationSystemTags: true
tagProperty: /properties/Tags
+ cloudFormationSystemTags: true
x-required-permissions:
+ read:
+ - controltower:GetLandingZone
+ - controltower:ListTagsForResource
create:
- controltower:CreateLandingZone
- controltower:GetLandingZoneOperation
@@ -780,9 +793,6 @@ components:
- sso:ListDirectoryAssociations
- sso:StartPeregrine
- sso:RegisterRegion
- read:
- - controltower:GetLandingZone
- - controltower:ListTagsForResource
update:
- controltower:UpdateLandingZone
- controltower:GetLandingZoneOperation
@@ -816,6 +826,8 @@ components:
- sso:ListDirectoryAssociations
- sso:StartPeregrine
- sso:RegisterRegion
+ list:
+ - controltower:ListLandingZones
delete:
- controltower:DeleteLandingZone
- controltower:GetLandingZone
@@ -839,8 +851,6 @@ components:
- iam:DeleteRolePolicy
- iam:DetachRolePolicy
- iam:DeleteRole
- list:
- - controltower:ListLandingZones
CreateEnabledBaselineRequest:
properties:
ClientToken:
@@ -943,28 +953,28 @@ components:
DesiredState:
type: object
properties:
- LandingZoneIdentifier:
- type: string
- Arn:
- type: string
- maxLength: 2048
- minLength: 20
- pattern: ^arn:aws[0-9a-zA-Z_\-:\/]+$
Status:
$ref: '#/components/schemas/LandingZoneStatus'
LatestAvailableVersion:
+ minLength: 3
+ pattern: \d+.\d+
type: string
maxLength: 10
+ Version:
minLength: 3
pattern: \d+.\d+
+ type: string
+ maxLength: 10
DriftStatus:
$ref: '#/components/schemas/LandingZoneDriftStatus'
+ Arn:
+ minLength: 20
+ pattern: ^arn:aws[0-9a-zA-Z_\-:\/]+$
+ type: string
+ maxLength: 2048
Manifest: {}
- Version:
+ LandingZoneIdentifier:
type: string
- maxLength: 10
- minLength: 3
- pattern: \d+.\d+
Tags:
type: array
items:
@@ -1450,13 +1460,13 @@ components:
SELECT
region,
data__Identifier,
- JSON_EXTRACT(Properties, '$.LandingZoneIdentifier') as landing_zone_identifier,
- JSON_EXTRACT(Properties, '$.Arn') as arn,
JSON_EXTRACT(Properties, '$.Status') as status,
JSON_EXTRACT(Properties, '$.LatestAvailableVersion') as latest_available_version,
+ JSON_EXTRACT(Properties, '$.Version') as version,
JSON_EXTRACT(Properties, '$.DriftStatus') as drift_status,
+ JSON_EXTRACT(Properties, '$.Arn') as arn,
JSON_EXTRACT(Properties, '$.Manifest') as manifest,
- JSON_EXTRACT(Properties, '$.Version') as version,
+ JSON_EXTRACT(Properties, '$.LandingZoneIdentifier') as landing_zone_identifier,
JSON_EXTRACT(Properties, '$.Tags') as tags
FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::ControlTower::LandingZone'
AND data__Identifier = ''
@@ -1466,13 +1476,13 @@ components:
ddl: |-
SELECT
detail.region,
- JSON_EXTRACT(detail.Properties, '$.LandingZoneIdentifier') as landing_zone_identifier,
- JSON_EXTRACT(detail.Properties, '$.Arn') as arn,
JSON_EXTRACT(detail.Properties, '$.Status') as status,
JSON_EXTRACT(detail.Properties, '$.LatestAvailableVersion') as latest_available_version,
+ JSON_EXTRACT(detail.Properties, '$.Version') as version,
JSON_EXTRACT(detail.Properties, '$.DriftStatus') as drift_status,
+ JSON_EXTRACT(detail.Properties, '$.Arn') as arn,
JSON_EXTRACT(detail.Properties, '$.Manifest') as manifest,
- JSON_EXTRACT(detail.Properties, '$.Version') as version,
+ JSON_EXTRACT(detail.Properties, '$.LandingZoneIdentifier') as landing_zone_identifier,
JSON_EXTRACT(detail.Properties, '$.Tags') as tags
FROM aws.cloud_control.resources listing
LEFT OUTER JOIN aws.cloud_control.resource detail
@@ -1487,13 +1497,13 @@ components:
SELECT
region,
data__Identifier,
- json_extract_path_text(Properties, 'LandingZoneIdentifier') as landing_zone_identifier,
- json_extract_path_text(Properties, 'Arn') as arn,
json_extract_path_text(Properties, 'Status') as status,
json_extract_path_text(Properties, 'LatestAvailableVersion') as latest_available_version,
+ json_extract_path_text(Properties, 'Version') as version,
json_extract_path_text(Properties, 'DriftStatus') as drift_status,
+ json_extract_path_text(Properties, 'Arn') as arn,
json_extract_path_text(Properties, 'Manifest') as manifest,
- json_extract_path_text(Properties, 'Version') as version,
+ json_extract_path_text(Properties, 'LandingZoneIdentifier') as landing_zone_identifier,
json_extract_path_text(Properties, 'Tags') as tags
FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::ControlTower::LandingZone'
AND data__Identifier = ''
@@ -1503,13 +1513,13 @@ components:
ddl: |-
SELECT
detail.region,
- json_extract_path_text(detail.Properties, 'LandingZoneIdentifier') as landing_zone_identifier,
- json_extract_path_text(detail.Properties, 'Arn') as arn,
json_extract_path_text(detail.Properties, 'Status') as status,
json_extract_path_text(detail.Properties, 'LatestAvailableVersion') as latest_available_version,
+ json_extract_path_text(detail.Properties, 'Version') as version,
json_extract_path_text(detail.Properties, 'DriftStatus') as drift_status,
+ json_extract_path_text(detail.Properties, 'Arn') as arn,
json_extract_path_text(detail.Properties, 'Manifest') as manifest,
- json_extract_path_text(detail.Properties, 'Version') as version,
+ json_extract_path_text(detail.Properties, 'LandingZoneIdentifier') as landing_zone_identifier,
json_extract_path_text(detail.Properties, 'Tags') as tags
FROM aws.cloud_control.resources listing
LEFT OUTER JOIN aws.cloud_control.resource detail
@@ -1569,13 +1579,13 @@ components:
detail.region,
JSON_EXTRACT(json_each.value, '$.Key') as tag_key,
JSON_EXTRACT(json_each.value, '$.Value') as tag_value,
- JSON_EXTRACT(detail.Properties, '$.LandingZoneIdentifier') as landing_zone_identifier,
- JSON_EXTRACT(detail.Properties, '$.Arn') as arn,
JSON_EXTRACT(detail.Properties, '$.Status') as status,
JSON_EXTRACT(detail.Properties, '$.LatestAvailableVersion') as latest_available_version,
+ JSON_EXTRACT(detail.Properties, '$.Version') as version,
JSON_EXTRACT(detail.Properties, '$.DriftStatus') as drift_status,
+ JSON_EXTRACT(detail.Properties, '$.Arn') as arn,
JSON_EXTRACT(detail.Properties, '$.Manifest') as manifest,
- JSON_EXTRACT(detail.Properties, '$.Version') as version
+ JSON_EXTRACT(detail.Properties, '$.LandingZoneIdentifier') as landing_zone_identifier
FROM aws.cloud_control.resources listing
LEFT OUTER JOIN aws.cloud_control.resource detail
ON detail.data__Identifier = listing.Identifier
@@ -1591,13 +1601,13 @@ components:
detail.region,
json_extract_path_text(json_each.value, 'Key') as tag_key,
json_extract_path_text(json_each.value, 'Value') as tag_value,
- json_extract_path_text(detail.Properties, 'LandingZoneIdentifier') as landing_zone_identifier,
- json_extract_path_text(detail.Properties, 'Arn') as arn,
json_extract_path_text(detail.Properties, 'Status') as status,
json_extract_path_text(detail.Properties, 'LatestAvailableVersion') as latest_available_version,
+ json_extract_path_text(detail.Properties, 'Version') as version,
json_extract_path_text(detail.Properties, 'DriftStatus') as drift_status,
+ json_extract_path_text(detail.Properties, 'Arn') as arn,
json_extract_path_text(detail.Properties, 'Manifest') as manifest,
- json_extract_path_text(detail.Properties, 'Version') as version
+ json_extract_path_text(detail.Properties, 'LandingZoneIdentifier') as landing_zone_identifier
FROM aws.cloud_control.resources listing
LEFT OUTER JOIN aws.cloud_control.resource detail
ON detail.data__Identifier = listing.Identifier
diff --git a/providers/src/aws/v00.00.00000/services/customerprofiles.yaml b/providers/src/aws/v00.00.00000/services/customerprofiles.yaml
index 7427385d..ca136a78 100644
--- a/providers/src/aws/v00.00.00000/services/customerprofiles.yaml
+++ b/providers/src/aws/v00.00.00000/services/customerprofiles.yaml
@@ -404,7 +404,7 @@ components:
minLength: 1
maxLength: 255
Description:
- description: The description of the calculated attribute.
+ description: The description of the event trigger.
type: string
minLength: 1
maxLength: 1000
@@ -525,21 +525,24 @@ components:
- AVERAGE
- MAX_OCCURRENCE
Tag:
+ description: A key-value pair to associate with a resource.
type: object
properties:
Key:
type: string
pattern: ^(?!aws:)[a-zA-Z+-=._:/]+$
+ description: 'The key name of the tag. You can specify a value that is 1 to 128 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -.'
minLength: 1
maxLength: 128
Value:
type: string
+ description: 'The value for the tag. You can specify a value that is 0 to 256 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -.'
minLength: 0
maxLength: 256
- additionalProperties: false
required:
- Key
- Value
+ additionalProperties: false
Tags:
description: An array of key-value pairs to apply to this resource.
type: array
@@ -602,6 +605,10 @@ components:
tagUpdatable: true
cloudFormationSystemTags: true
tagProperty: /properties/Tags
+ permissions:
+ - profile:TagResource
+ - profile:UntagResource
+ - profile:ListTagsForResource
x-required-permissions:
create:
- profile:CreateCalculatedAttributeDefinition
@@ -926,6 +933,10 @@ components:
tagUpdatable: true
cloudFormationSystemTags: true
tagProperty: /properties/Tags
+ permissions:
+ - profile:TagResource
+ - profile:UntagResource
+ - profile:ListTagsForResource
x-required-permissions:
create:
- profile:CreateDomain
@@ -1033,6 +1044,10 @@ components:
tagUpdatable: true
cloudFormationSystemTags: true
tagProperty: /properties/Tags
+ permissions:
+ - profile:TagResource
+ - profile:UntagResource
+ - profile:ListTagsForResource
x-required-permissions:
create:
- profile:CreateEventStream
@@ -1052,6 +1067,246 @@ components:
- iam:DeleteRolePolicy
list:
- profile:ListEventStreams
+ EventTriggerName:
+ description: The unique name of the event trigger.
+ type: string
+ pattern: ^[a-zA-Z0-9_-]+$
+ minLength: 1
+ maxLength: 64
+ ObjectTypeName:
+ description: The unique name of the object type.
+ type: string
+ pattern: ^[a-zA-Z_][a-zA-Z_0-9-]*$
+ minLength: 1
+ maxLength: 255
+ EventTriggerConditions:
+ description: A list of conditions that determine when an event should trigger the destination.
+ type: array
+ items:
+ $ref: '#/components/schemas/EventTriggerCondition'
+ x-insertionOrder: false
+ minItems: 1
+ maxItems: 5
+ EventTriggerCondition:
+ description: Specifies the circumstances under which the event should trigger the destination.
+ type: object
+ properties:
+ EventTriggerDimensions:
+ $ref: '#/components/schemas/EventTriggerDimensions'
+ LogicalOperator:
+ $ref: '#/components/schemas/EventTriggerLogicalOperator'
+ required:
+ - EventTriggerDimensions
+ - LogicalOperator
+ additionalProperties: false
+ EventTriggerDimensions:
+ description: A list of dimensions to be evaluated for the event.
+ type: array
+ items:
+ $ref: '#/components/schemas/EventTriggerDimension'
+ x-insertionOrder: false
+ minItems: 1
+ maxItems: 10
+ EventTriggerDimension:
+ description: A specific event dimension to be assessed.
+ type: object
+ properties:
+ ObjectAttributes:
+ $ref: '#/components/schemas/ObjectAttributes'
+ required:
+ - ObjectAttributes
+ additionalProperties: false
+ EventTriggerLogicalOperator:
+ description: The operator used to combine multiple dimensions.
+ type: string
+ enum:
+ - ANY
+ - ALL
+ - NONE
+ ObjectAttributes:
+ description: A list of object attributes to be evaluated.
+ type: array
+ items:
+ $ref: '#/components/schemas/ObjectAttribute'
+ x-insertionOrder: false
+ minItems: 1
+ maxItems: 10
+ ObjectAttribute:
+ description: The criteria that a specific object attribute must meet to trigger the destination.
+ type: object
+ properties:
+ Source:
+ description: An attribute contained within a source object.
+ type: string
+ minLength: 1
+ maxLength: 1000
+ FieldName:
+ description: A field defined within an object type.
+ type: string
+ pattern: ^[a-zA-Z0-9_.-]+$
+ minLength: 1
+ maxLength: 64
+ ComparisonOperator:
+ description: The operator used to compare an attribute against a list of values.
+ type: string
+ enum:
+ - INCLUSIVE
+ - EXCLUSIVE
+ - CONTAINS
+ - BEGINS_WITH
+ - ENDS_WITH
+ - GREATER_THAN
+ - LESS_THAN
+ - GREATER_THAN_OR_EQUAL
+ - LESS_THAN_OR_EQUAL
+ - EQUAL
+ - BEFORE
+ - AFTER
+ - 'ON'
+ - BETWEEN
+ - NOT_BETWEEN
+ Values:
+ description: A list of attribute values used for comparison.
+ type: array
+ items:
+ type: string
+ minLength: 1
+ maxLength: 255
+ x-insertionOrder: false
+ minItems: 1
+ maxItems: 10
+ required:
+ - ComparisonOperator
+ - Values
+ additionalProperties: false
+ EventTriggerLimits:
+ description: Defines limits controlling whether an event triggers the destination, based on ingestion latency and the number of invocations per profile over specific time periods.
+ type: object
+ properties:
+ EventExpiration:
+ $ref: '#/components/schemas/EventExpiration'
+ Periods:
+ $ref: '#/components/schemas/Periods'
+ additionalProperties: false
+ EventExpiration:
+ description: Specifies that an event will only trigger the destination if it is processed within a certain latency period.
+ type: integer
+ format: int64
+ Periods:
+ description: A list of time periods during which the limits apply.
+ type: array
+ items:
+ $ref: '#/components/schemas/Period'
+ x-insertionOrder: false
+ minItems: 1
+ maxItems: 4
+ Period:
+ description: Defines a limit and the time period during which it is enforced.
+ type: object
+ properties:
+ Unit:
+ description: The unit of time.
+ type: string
+ enum:
+ - HOURS
+ - DAYS
+ - WEEKS
+ - MONTHS
+ Value:
+ description: The amount of time of the specified unit.
+ type: integer
+ minimum: 1
+ maximum: 24
+ MaxInvocationsPerProfile:
+ description: The maximum allowed number of destination invocations per profile.
+ type: integer
+ minimum: 1
+ maximum: 1000
+ Unlimited:
+ description: If set to true, there is no limit on the number of destination invocations per profile. The default is false.
+ type: boolean
+ required:
+ - Unit
+ - Value
+ additionalProperties: false
+ SegmentFilter:
+ description: The destination is triggered only for profiles that meet the criteria of a segment definition.
+ type: string
+ pattern: ^[a-zA-Z0-9_-]+$
+ minLength: 1
+ maxLength: 64
+ EventTrigger:
+ type: object
+ properties:
+ DomainName:
+ $ref: '#/components/schemas/DomainName'
+ EventTriggerName:
+ $ref: '#/components/schemas/EventTriggerName'
+ ObjectTypeName:
+ $ref: '#/components/schemas/ObjectTypeName'
+ Description:
+ $ref: '#/components/schemas/Description'
+ EventTriggerConditions:
+ $ref: '#/components/schemas/EventTriggerConditions'
+ EventTriggerLimits:
+ $ref: '#/components/schemas/EventTriggerLimits'
+ SegmentFilter:
+ $ref: '#/components/schemas/SegmentFilter'
+ CreatedAt:
+ description: The timestamp of when the event trigger was created.
+ type: string
+ LastUpdatedAt:
+ description: The timestamp of when the event trigger was most recently updated.
+ type: string
+ Tags:
+ $ref: '#/components/schemas/Tags'
+ required:
+ - DomainName
+ - EventTriggerName
+ - ObjectTypeName
+ - EventTriggerConditions
+ x-stackql-resource-name: event_trigger
+ description: An event trigger resource of Amazon Connect Customer Profiles
+ x-type-name: AWS::CustomerProfiles::EventTrigger
+ x-stackql-primary-identifier:
+ - DomainName
+ - EventTriggerName
+ x-create-only-properties:
+ - DomainName
+ - EventTriggerName
+ x-read-only-properties:
+ - CreatedAt
+ - LastUpdatedAt
+ x-required-properties:
+ - DomainName
+ - EventTriggerName
+ - ObjectTypeName
+ - EventTriggerConditions
+ x-tagging:
+ taggable: true
+ tagOnCreate: true
+ tagUpdatable: true
+ cloudFormationSystemTags: true
+ tagProperty: /properties/Tags
+ permissions:
+ - profile:TagResource
+ - profile:UntagResource
+ - profile:ListTagsForResource
+ x-required-permissions:
+ create:
+ - profile:CreateEventTrigger
+ - profile:TagResource
+ read:
+ - profile:GetEventTrigger
+ update:
+ - profile:GetEventTrigger
+ - profile:UpdateEventTrigger
+ - profile:UntagResource
+ - profile:TagResource
+ delete:
+ - profile:DeleteEventTrigger
+ list:
+ - profile:ListEventTriggers
Object:
type: string
maxLength: 512
@@ -1506,6 +1761,17 @@ components:
type: array
items:
$ref: '#/components/schemas/ObjectTypeMapping'
+ EventTriggerNames:
+ description: A list of unique names for active event triggers associated with the integration.
+ type: array
+ items:
+ type: string
+ pattern: ^[a-zA-Z0-9_-]+$
+ minLength: 1
+ maxLength: 64
+ x-insertionOrder: false
+ minItems: 1
+ maxItems: 1
required:
- DomainName
x-stackql-resource-name: integration
@@ -1530,6 +1796,10 @@ components:
tagUpdatable: true
cloudFormationSystemTags: true
tagProperty: /properties/Tags
+ permissions:
+ - profile:TagResource
+ - profile:UntagResource
+ - profile:ListTagsForResource
x-required-permissions:
create:
- profile:GetIntegration
@@ -1743,6 +2013,10 @@ components:
tagUpdatable: true
cloudFormationSystemTags: true
tagProperty: /properties/Tags
+ permissions:
+ - profile:TagResource
+ - profile:UntagResource
+ - profile:ListTagsForResource
x-required-permissions:
create:
- profile:GetProfileObjectType
@@ -1759,115 +2033,510 @@ components:
- profile:DeleteProfileObjectType
list:
- profile:ListProfileObjectTypes
- CreateCalculatedAttributeDefinitionRequest:
+ ConditionOverrides:
+ description: Overrides the condition block within the original calculated attribute definition.
+ type: object
properties:
- ClientToken:
- type: string
- RoleArn:
- type: string
- TypeName:
- type: string
- TypeVersionId:
- type: string
- DesiredState:
- type: object
- properties:
- DomainName:
- $ref: '#/components/schemas/DomainName'
- CalculatedAttributeName:
- $ref: '#/components/schemas/CalculatedAttributeName'
- DisplayName:
- $ref: '#/components/schemas/DisplayName'
- Description:
- $ref: '#/components/schemas/Description'
- AttributeDetails:
- $ref: '#/components/schemas/AttributeDetails'
- Conditions:
- $ref: '#/components/schemas/Conditions'
- Statistic:
- $ref: '#/components/schemas/Statistic'
- CreatedAt:
- description: The timestamp of when the calculated attribute definition was created.
- type: string
- LastUpdatedAt:
- description: The timestamp of when the calculated attribute definition was most recently edited.
- type: string
- Tags:
- $ref: '#/components/schemas/Tags'
- x-stackQL-stringOnly: true
- x-title: CreateCalculatedAttributeDefinitionRequest
+ Range:
+ $ref: '#/components/schemas/RangeOverride'
+ additionalProperties: false
+ RangeOverride:
+ description: Defines the range to be applied to the calculated attribute definition.
type: object
- required: []
- CreateDomainRequest:
properties:
- ClientToken:
- type: string
- RoleArn:
- type: string
- TypeName:
- type: string
- TypeVersionId:
+ Start:
+ description: The starting point for this overridden range.
+ type: integer
+ minimum: 1
+ maximum: 366
+ End:
+ description: The ending point for this overridden range.
+ type: integer
+ minimum: 0
+ maximum: 366
+ Unit:
+ description: The unit to be applied to the range.
type: string
- DesiredState:
- type: object
- properties:
- DomainName:
- description: The unique name of the domain.
- type: string
- pattern: ^[a-zA-Z0-9_-]+$
- minLength: 1
- maxLength: 64
- DeadLetterQueueUrl:
- description: The URL of the SQS dead letter queue
- type: string
- minLength: 0
- maxLength: 255
- DefaultEncryptionKey:
- description: The default encryption key
- type: string
- minLength: 0
- maxLength: 255
- DefaultExpirationDays:
- description: The default number of days until the data within the domain expires.
- type: integer
- minimum: 1
- maximum: 1098
- Matching:
- $ref: '#/components/schemas/Matching'
- RuleBasedMatching:
- $ref: '#/components/schemas/RuleBasedMatching'
- Stats:
- $ref: '#/components/schemas/DomainStats'
- Tags:
- description: The tags (keys and values) associated with the domain
- type: array
- items:
- $ref: '#/components/schemas/Tag'
- minItems: 0
- maxItems: 50
- CreatedAt:
- description: The time of this integration got created
- type: string
- LastUpdatedAt:
- description: The time of this integration got last updated at
- type: string
- x-stackQL-stringOnly: true
- x-title: CreateDomainRequest
+ enum:
+ - DAYS
+ required:
+ - Start
+ - Unit
+ additionalProperties: false
+ AddressDimension:
+ description: The address based criteria for the segment.
type: object
- required: []
- CreateEventStreamRequest:
properties:
- ClientToken:
- type: string
- RoleArn:
- type: string
- TypeName:
- type: string
- TypeVersionId:
- type: string
- DesiredState:
- type: object
- properties:
+ City:
+ $ref: '#/components/schemas/ProfileDimension'
+ Country:
+ $ref: '#/components/schemas/ProfileDimension'
+ County:
+ $ref: '#/components/schemas/ProfileDimension'
+ PostalCode:
+ $ref: '#/components/schemas/ProfileDimension'
+ Province:
+ $ref: '#/components/schemas/ProfileDimension'
+ State:
+ $ref: '#/components/schemas/ProfileDimension'
+ additionalProperties: false
+ AttributeDimension:
+ description: Specifies attribute based criteria for a segment.
+ type: object
+ properties:
+ DimensionType:
+ $ref: '#/components/schemas/AttributeDimensionType'
+ Values:
+ type: array
+ items:
+ type: string
+ maxLength: 255
+ minLength: 1
+ x-insertionOrder: false
+ minItems: 1
+ maxItems: 50
+ required:
+ - DimensionType
+ - Values
+ additionalProperties: false
+ AttributeDimensionType:
+ description: The type of segment dimension to use.
+ type: string
+ enum:
+ - INCLUSIVE
+ - EXCLUSIVE
+ - CONTAINS
+ - BEGINS_WITH
+ - ENDS_WITH
+ - BEFORE
+ - AFTER
+ - BETWEEN
+ - NOT_BETWEEN
+ - 'ON'
+ - GREATER_THAN
+ - LESS_THAN
+ - GREATER_THAN_OR_EQUAL
+ - LESS_THAN_OR_EQUAL
+ - EQUAL
+ CalculatedAttributeDimension:
+ description: Specifies calculated attribute based criteria for a segment.
+ type: object
+ properties:
+ DimensionType:
+ $ref: '#/components/schemas/AttributeDimensionType'
+ Values:
+ type: array
+ items:
+ type: string
+ minLength: 1
+ maxLength: 255
+ x-insertionOrder: false
+ minItems: 1
+ maxItems: 50
+ ConditionOverrides:
+ $ref: '#/components/schemas/ConditionOverrides'
+ required:
+ - DimensionType
+ - Values
+ additionalProperties: false
+ CustomAttributes:
+ description: One or more custom attributes to use as criteria for the segment.
+ type: object
+ x-patternProperties:
+ ^[a-zA-Z_][a-zA-Z_0-9-]*$:
+ $ref: '#/components/schemas/AttributeDimension'
+ additionalProperties: false
+ CalculatedCustomAttributes:
+ description: One or more calculated attributes to use as criteria for the segment.
+ type: object
+ x-patternProperties:
+ ^[a-zA-Z_][a-zA-Z_0-9-]*$:
+ $ref: '#/components/schemas/CalculatedAttributeDimension'
+ additionalProperties: false
+ DateDimension:
+ description: Specifies date based criteria for a segment.
+ type: object
+ properties:
+ DimensionType:
+ $ref: '#/components/schemas/DateDimensionType'
+ Values:
+ type: array
+ items:
+ type: string
+ x-insertionOrder: false
+ minItems: 1
+ maxItems: 50
+ required:
+ - DimensionType
+ - Values
+ additionalProperties: false
+ DateDimensionType:
+ description: The type of segment dimension to use for a date dimension.
+ type: string
+ enum:
+ - BEFORE
+ - AFTER
+ - BETWEEN
+ - NOT_BETWEEN
+ - 'ON'
+ Dimension:
+ description: The criteria that define the dimensions for the segment.
+ oneOf:
+ - type: object
+ title: ProfileAttributes
+ properties:
+ ProfileAttributes:
+ $ref: '#/components/schemas/ProfileAttributes'
+ required:
+ - ProfileAttributes
+ additionalProperties: false
+ - type: object
+ title: CalculatedAttributes
+ properties:
+ CalculatedAttributes:
+ $ref: '#/components/schemas/CalculatedCustomAttributes'
+ additionalProperties: false
+ ExtraLengthValueProfileDimension:
+ description: Specifies criteria for a segment using extended-length string values.
+ type: object
+ properties:
+ DimensionType:
+ $ref: '#/components/schemas/StringDimensionType'
+ Values:
+ type: array
+ items:
+ type: string
+ maxLength: 1000
+ minLength: 1
+ x-insertionOrder: false
+ minItems: 1
+ maxItems: 50
+ required:
+ - DimensionType
+ - Values
+ additionalProperties: false
+ Group:
+ description: An array that defines the set of segment criteria to evaluate when handling segment groups for the segment.
+ type: object
+ properties:
+ Dimensions:
+ type: array
+ items:
+ $ref: '#/components/schemas/Dimension'
+ SourceSegments:
+ type: array
+ items:
+ $ref: '#/components/schemas/SourceSegment'
+ SourceType:
+ $ref: '#/components/schemas/IncludeOptions'
+ Type:
+ $ref: '#/components/schemas/IncludeOptions'
+ additionalProperties: false
+ IncludeOptions:
+ description: Specifies the operator on how to handle multiple groups within the same segment.
+ type: string
+ enum:
+ - ALL
+ - ANY
+ - NONE
+ ProfileAttributes:
+ description: Specifies the dimension settings within profile attributes for a segment.
+ type: object
+ properties:
+ AccountNumber:
+ $ref: '#/components/schemas/ProfileDimension'
+ AdditionalInformation:
+ $ref: '#/components/schemas/ExtraLengthValueProfileDimension'
+ FirstName:
+ $ref: '#/components/schemas/ProfileDimension'
+ LastName:
+ $ref: '#/components/schemas/ProfileDimension'
+ MiddleName:
+ $ref: '#/components/schemas/ProfileDimension'
+ GenderString:
+ $ref: '#/components/schemas/ProfileDimension'
+ PartyTypeString:
+ $ref: '#/components/schemas/ProfileDimension'
+ BirthDate:
+ $ref: '#/components/schemas/DateDimension'
+ PhoneNumber:
+ $ref: '#/components/schemas/ProfileDimension'
+ BusinessName:
+ $ref: '#/components/schemas/ProfileDimension'
+ BusinessPhoneNumber:
+ $ref: '#/components/schemas/ProfileDimension'
+ HomePhoneNumber:
+ $ref: '#/components/schemas/ProfileDimension'
+ MobilePhoneNumber:
+ $ref: '#/components/schemas/ProfileDimension'
+ EmailAddress:
+ $ref: '#/components/schemas/ProfileDimension'
+ PersonalEmailAddress:
+ $ref: '#/components/schemas/ProfileDimension'
+ BusinessEmailAddress:
+ $ref: '#/components/schemas/ProfileDimension'
+ Address:
+ $ref: '#/components/schemas/AddressDimension'
+ ShippingAddress:
+ $ref: '#/components/schemas/AddressDimension'
+ MailingAddress:
+ $ref: '#/components/schemas/AddressDimension'
+ BillingAddress:
+ $ref: '#/components/schemas/AddressDimension'
+ Attributes:
+ $ref: '#/components/schemas/CustomAttributes'
+ additionalProperties: false
+ ProfileDimension:
+ description: Specifies profile based criteria for a segment.
+ type: object
+ properties:
+ DimensionType:
+ $ref: '#/components/schemas/StringDimensionType'
+ Values:
+ type: array
+ items:
+ type: string
+ maxLength: 255
+ minLength: 1
+ x-insertionOrder: false
+ minItems: 1
+ maxItems: 50
+ required:
+ - DimensionType
+ - Values
+ additionalProperties: false
+ SegmentGroup:
+ type: object
+ properties:
+ Groups:
+ type: array
+ items:
+ $ref: '#/components/schemas/Group'
+ Include:
+ $ref: '#/components/schemas/IncludeOptions'
+ additionalProperties: false
+ SourceSegment:
+ description: The base segment to build the segment on.
+ type: object
+ properties:
+ SegmentDefinitionName:
+ type: string
+ maxLength: 64
+ minLength: 1
+ pattern: ^[a-zA-Z0-9_-]+$
+ additionalProperties: false
+ StringDimensionType:
+ description: The type of segment dimension to use for a string dimension.
+ type: string
+ enum:
+ - INCLUSIVE
+ - EXCLUSIVE
+ - CONTAINS
+ - BEGINS_WITH
+ - ENDS_WITH
+ SegmentDefinition:
+ type: object
+ properties:
+ CreatedAt:
+ description: The time of this segment definition got created.
+ type: string
+ format: date-time
+ Description:
+ description: The description of the segment definition.
+ type: string
+ maxLength: 1000
+ minLength: 1
+ DisplayName:
+ description: The display name of the segment definition.
+ type: string
+ maxLength: 255
+ minLength: 1
+ DomainName:
+ description: The unique name of the domain.
+ type: string
+ maxLength: 64
+ minLength: 1
+ pattern: ^[a-zA-Z0-9_-]+$
+ SegmentDefinitionName:
+ description: The unique name of the segment definition.
+ type: string
+ maxLength: 64
+ minLength: 1
+ pattern: ^[a-zA-Z0-9_-]+$
+ SegmentGroups:
+ description: An array that defines the set of segment criteria to evaluate when handling segment groups for the segment.
+ $ref: '#/components/schemas/SegmentGroup'
+ SegmentDefinitionArn:
+ description: The Amazon Resource Name (ARN) of the segment definition.
+ type: string
+ maxLength: 255
+ minLength: 1
+ Tags:
+ description: The tags used to organize, track, or control access for this resource.
+ type: array
+ uniqueItems: true
+ x-insertionOrder: false
+ items:
+ $ref: '#/components/schemas/Tag'
+ minItems: 0
+ maxItems: 50
+ required:
+ - DomainName
+ - DisplayName
+ - SegmentDefinitionName
+ - SegmentGroups
+ x-stackql-resource-name: segment_definition
+ description: A segment definition resource of Amazon Connect Customer Profiles
+ x-type-name: AWS::CustomerProfiles::SegmentDefinition
+ x-stackql-primary-identifier:
+ - DomainName
+ - SegmentDefinitionName
+ x-create-only-properties:
+ - DomainName
+ - SegmentDefinitionName
+ - DisplayName
+ - SegmentGroups
+ x-read-only-properties:
+ - CreatedAt
+ - SegmentDefinitionArn
+ x-required-properties:
+ - DomainName
+ - DisplayName
+ - SegmentDefinitionName
+ - SegmentGroups
+ x-tagging:
+ taggable: true
+ tagOnCreate: true
+ tagUpdatable: true
+ cloudFormationSystemTags: true
+ tagProperty: /properties/Tags
+ permissions:
+ - profile:TagResource
+ - profile:UntagResource
+ - profile:ListTagsForResource
+ x-required-permissions:
+ create:
+ - profile:CreateSegmentDefinition
+ - profile:TagResource
+ read:
+ - profile:GetSegmentDefinition
+ update:
+ - profile:GetSegmentDefinition
+ - profile:UntagResource
+ - profile:TagResource
+ delete:
+ - profile:DeleteSegmentDefinition
+ list:
+ - profile:ListSegmentDefinitions
+ CreateCalculatedAttributeDefinitionRequest:
+ properties:
+ ClientToken:
+ type: string
+ RoleArn:
+ type: string
+ TypeName:
+ type: string
+ TypeVersionId:
+ type: string
+ DesiredState:
+ type: object
+ properties:
+ DomainName:
+ $ref: '#/components/schemas/DomainName'
+ CalculatedAttributeName:
+ $ref: '#/components/schemas/CalculatedAttributeName'
+ DisplayName:
+ $ref: '#/components/schemas/DisplayName'
+ Description:
+ $ref: '#/components/schemas/Description'
+ AttributeDetails:
+ $ref: '#/components/schemas/AttributeDetails'
+ Conditions:
+ $ref: '#/components/schemas/Conditions'
+ Statistic:
+ $ref: '#/components/schemas/Statistic'
+ CreatedAt:
+ description: The timestamp of when the calculated attribute definition was created.
+ type: string
+ LastUpdatedAt:
+ description: The timestamp of when the calculated attribute definition was most recently edited.
+ type: string
+ Tags:
+ $ref: '#/components/schemas/Tags'
+ x-stackQL-stringOnly: true
+ x-title: CreateCalculatedAttributeDefinitionRequest
+ type: object
+ required: []
+ CreateDomainRequest:
+ properties:
+ ClientToken:
+ type: string
+ RoleArn:
+ type: string
+ TypeName:
+ type: string
+ TypeVersionId:
+ type: string
+ DesiredState:
+ type: object
+ properties:
+ DomainName:
+ description: The unique name of the domain.
+ type: string
+ pattern: ^[a-zA-Z0-9_-]+$
+ minLength: 1
+ maxLength: 64
+ DeadLetterQueueUrl:
+ description: The URL of the SQS dead letter queue
+ type: string
+ minLength: 0
+ maxLength: 255
+ DefaultEncryptionKey:
+ description: The default encryption key
+ type: string
+ minLength: 0
+ maxLength: 255
+ DefaultExpirationDays:
+ description: The default number of days until the data within the domain expires.
+ type: integer
+ minimum: 1
+ maximum: 1098
+ Matching:
+ $ref: '#/components/schemas/Matching'
+ RuleBasedMatching:
+ $ref: '#/components/schemas/RuleBasedMatching'
+ Stats:
+ $ref: '#/components/schemas/DomainStats'
+ Tags:
+ description: The tags (keys and values) associated with the domain
+ type: array
+ items:
+ $ref: '#/components/schemas/Tag'
+ minItems: 0
+ maxItems: 50
+ CreatedAt:
+ description: The time of this integration got created
+ type: string
+ LastUpdatedAt:
+ description: The time of this integration got last updated at
+ type: string
+ x-stackQL-stringOnly: true
+ x-title: CreateDomainRequest
+ type: object
+ required: []
+ CreateEventStreamRequest:
+ properties:
+ ClientToken:
+ type: string
+ RoleArn:
+ type: string
+ TypeName:
+ type: string
+ TypeVersionId:
+ type: string
+ DesiredState:
+ type: object
+ properties:
DomainName:
description: The unique name of the domain.
type: string
@@ -1921,6 +2590,45 @@ components:
x-title: CreateEventStreamRequest
type: object
required: []
+ CreateEventTriggerRequest:
+ properties:
+ ClientToken:
+ type: string
+ RoleArn:
+ type: string
+ TypeName:
+ type: string
+ TypeVersionId:
+ type: string
+ DesiredState:
+ type: object
+ properties:
+ DomainName:
+ $ref: '#/components/schemas/DomainName'
+ EventTriggerName:
+ $ref: '#/components/schemas/EventTriggerName'
+ ObjectTypeName:
+ $ref: '#/components/schemas/ObjectTypeName'
+ Description:
+ $ref: '#/components/schemas/Description'
+ EventTriggerConditions:
+ $ref: '#/components/schemas/EventTriggerConditions'
+ EventTriggerLimits:
+ $ref: '#/components/schemas/EventTriggerLimits'
+ SegmentFilter:
+ $ref: '#/components/schemas/SegmentFilter'
+ CreatedAt:
+ description: The timestamp of when the event trigger was created.
+ type: string
+ LastUpdatedAt:
+ description: The timestamp of when the event trigger was most recently updated.
+ type: string
+ Tags:
+ $ref: '#/components/schemas/Tags'
+ x-stackQL-stringOnly: true
+ x-title: CreateEventTriggerRequest
+ type: object
+ required: []
CreateIntegrationRequest:
properties:
ClientToken:
@@ -1971,6 +2679,17 @@ components:
type: array
items:
$ref: '#/components/schemas/ObjectTypeMapping'
+ EventTriggerNames:
+ description: A list of unique names for active event triggers associated with the integration.
+ type: array
+ items:
+ type: string
+ pattern: ^[a-zA-Z0-9_-]+$
+ minLength: 1
+ maxLength: 64
+ x-insertionOrder: false
+ minItems: 1
+ maxItems: 1
x-stackQL-stringOnly: true
x-title: CreateIntegrationRequest
type: object
@@ -2058,6 +2777,66 @@ components:
x-title: CreateObjectTypeRequest
type: object
required: []
+ CreateSegmentDefinitionRequest:
+ properties:
+ ClientToken:
+ type: string
+ RoleArn:
+ type: string
+ TypeName:
+ type: string
+ TypeVersionId:
+ type: string
+ DesiredState:
+ type: object
+ properties:
+ CreatedAt:
+ description: The time of this segment definition got created.
+ type: string
+ format: date-time
+ Description:
+ description: The description of the segment definition.
+ type: string
+ maxLength: 1000
+ minLength: 1
+ DisplayName:
+ description: The display name of the segment definition.
+ type: string
+ maxLength: 255
+ minLength: 1
+ DomainName:
+ description: The unique name of the domain.
+ type: string
+ maxLength: 64
+ minLength: 1
+ pattern: ^[a-zA-Z0-9_-]+$
+ SegmentDefinitionName:
+ description: The unique name of the segment definition.
+ type: string
+ maxLength: 64
+ minLength: 1
+ pattern: ^[a-zA-Z0-9_-]+$
+ SegmentGroups:
+ description: An array that defines the set of segment criteria to evaluate when handling segment groups for the segment.
+ $ref: '#/components/schemas/SegmentGroup'
+ SegmentDefinitionArn:
+ description: The Amazon Resource Name (ARN) of the segment definition.
+ type: string
+ maxLength: 255
+ minLength: 1
+ Tags:
+ description: The tags used to organize, track, or control access for this resource.
+ type: array
+ uniqueItems: true
+ x-insertionOrder: false
+ items:
+ $ref: '#/components/schemas/Tag'
+ minItems: 0
+ maxItems: 50
+ x-stackQL-stringOnly: true
+ x-title: CreateSegmentDefinitionRequest
+ type: object
+ required: []
securitySchemes:
hmac:
type: apiKey
@@ -2730,8 +3509,241 @@ components:
ON detail.data__Identifier = listing.Identifier
AND detail.region = listing.region
,json_each(JSON_EXTRACT(detail.Properties, '$.Tags'))
- WHERE listing.data__TypeName = 'AWS::CustomerProfiles::EventStream'
- AND detail.data__TypeName = 'AWS::CustomerProfiles::EventStream'
+ WHERE listing.data__TypeName = 'AWS::CustomerProfiles::EventStream'
+ AND detail.data__TypeName = 'AWS::CustomerProfiles::EventStream'
+ AND listing.region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres"
+ ddl: |-
+ SELECT
+ detail.region,
+ json_extract_path_text(json_each.value, 'Key') as tag_key,
+ json_extract_path_text(json_each.value, 'Value') as tag_value,
+ json_extract_path_text(detail.Properties, 'DomainName') as domain_name,
+ json_extract_path_text(detail.Properties, 'EventStreamName') as event_stream_name,
+ json_extract_path_text(detail.Properties, 'Uri') as uri,
+ json_extract_path_text(detail.Properties, 'EventStreamArn') as event_stream_arn,
+ json_extract_path_text(detail.Properties, 'CreatedAt') as created_at,
+ json_extract_path_text(detail.Properties, 'State') as state,
+ json_extract_path_text(detail.Properties, 'DestinationDetails') as destination_details
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ ,json_array_elements_text(json_extract_path_text(detail.Properties, 'Tags'))
+ WHERE listing.data__TypeName = 'AWS::CustomerProfiles::EventStream'
+ AND detail.data__TypeName = 'AWS::CustomerProfiles::EventStream'
+ AND listing.region = 'us-east-1'
+ event_triggers:
+ name: event_triggers
+ id: aws.customerprofiles.event_triggers
+ x-cfn-schema-name: EventTrigger
+ x-cfn-type-name: AWS::CustomerProfiles::EventTrigger
+ x-identifiers:
+ - DomainName
+ - EventTriggerName
+ x-type: cloud_control
+ methods:
+ create_resource:
+ config:
+ requestBodyTranslate:
+ algorithm: naive_DesiredState
+ operation:
+ $ref: '#/paths/~1?Action=CreateResource&Version=2021-09-30&__EventTrigger&__detailTransformed=true/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::CustomerProfiles::EventTrigger"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ update_resource:
+ operation:
+ $ref: '#/paths/~1?Action=UpdateResource&Version=2021-09-30/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::CustomerProfiles::EventTrigger"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ delete_resource:
+ operation:
+ $ref: '#/paths/~1?Action=DeleteResource&Version=2021-09-30/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::CustomerProfiles::EventTrigger"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ sqlVerbs:
+ insert:
+ - $ref: '#/components/x-stackQL-resources/event_triggers/methods/create_resource'
+ delete:
+ - $ref: '#/components/x-stackQL-resources/event_triggers/methods/delete_resource'
+ update:
+ - $ref: '#/components/x-stackQL-resources/event_triggers/methods/update_resource'
+ config:
+ views:
+ select:
+ predicate: sqlDialect == "sqlite3" && requiredParams == [ data__Identifier ]
+ ddl: |-
+ SELECT
+ region,
+ data__Identifier,
+ JSON_EXTRACT(Properties, '$.DomainName') as domain_name,
+ JSON_EXTRACT(Properties, '$.EventTriggerName') as event_trigger_name,
+ JSON_EXTRACT(Properties, '$.ObjectTypeName') as object_type_name,
+ JSON_EXTRACT(Properties, '$.Description') as description,
+ JSON_EXTRACT(Properties, '$.EventTriggerConditions') as event_trigger_conditions,
+ JSON_EXTRACT(Properties, '$.EventTriggerLimits') as event_trigger_limits,
+ JSON_EXTRACT(Properties, '$.SegmentFilter') as segment_filter,
+ JSON_EXTRACT(Properties, '$.CreatedAt') as created_at,
+ JSON_EXTRACT(Properties, '$.LastUpdatedAt') as last_updated_at,
+ JSON_EXTRACT(Properties, '$.Tags') as tags
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::CustomerProfiles::EventTrigger'
+ AND data__Identifier = '|'
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "sqlite3"
+ ddl: |-
+ SELECT
+ detail.region,
+ JSON_EXTRACT(detail.Properties, '$.DomainName') as domain_name,
+ JSON_EXTRACT(detail.Properties, '$.EventTriggerName') as event_trigger_name,
+ JSON_EXTRACT(detail.Properties, '$.ObjectTypeName') as object_type_name,
+ JSON_EXTRACT(detail.Properties, '$.Description') as description,
+ JSON_EXTRACT(detail.Properties, '$.EventTriggerConditions') as event_trigger_conditions,
+ JSON_EXTRACT(detail.Properties, '$.EventTriggerLimits') as event_trigger_limits,
+ JSON_EXTRACT(detail.Properties, '$.SegmentFilter') as segment_filter,
+ JSON_EXTRACT(detail.Properties, '$.CreatedAt') as created_at,
+ JSON_EXTRACT(detail.Properties, '$.LastUpdatedAt') as last_updated_at,
+ JSON_EXTRACT(detail.Properties, '$.Tags') as tags
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ WHERE listing.data__TypeName = 'AWS::CustomerProfiles::EventTrigger'
+ AND detail.data__TypeName = 'AWS::CustomerProfiles::EventTrigger'
+ AND listing.region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres" && requiredParams == [ data__Identifier ]
+ ddl: |-
+ SELECT
+ region,
+ data__Identifier,
+ json_extract_path_text(Properties, 'DomainName') as domain_name,
+ json_extract_path_text(Properties, 'EventTriggerName') as event_trigger_name,
+ json_extract_path_text(Properties, 'ObjectTypeName') as object_type_name,
+ json_extract_path_text(Properties, 'Description') as description,
+ json_extract_path_text(Properties, 'EventTriggerConditions') as event_trigger_conditions,
+ json_extract_path_text(Properties, 'EventTriggerLimits') as event_trigger_limits,
+ json_extract_path_text(Properties, 'SegmentFilter') as segment_filter,
+ json_extract_path_text(Properties, 'CreatedAt') as created_at,
+ json_extract_path_text(Properties, 'LastUpdatedAt') as last_updated_at,
+ json_extract_path_text(Properties, 'Tags') as tags
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::CustomerProfiles::EventTrigger'
+ AND data__Identifier = '|'
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres"
+ ddl: |-
+ SELECT
+ detail.region,
+ json_extract_path_text(detail.Properties, 'DomainName') as domain_name,
+ json_extract_path_text(detail.Properties, 'EventTriggerName') as event_trigger_name,
+ json_extract_path_text(detail.Properties, 'ObjectTypeName') as object_type_name,
+ json_extract_path_text(detail.Properties, 'Description') as description,
+ json_extract_path_text(detail.Properties, 'EventTriggerConditions') as event_trigger_conditions,
+ json_extract_path_text(detail.Properties, 'EventTriggerLimits') as event_trigger_limits,
+ json_extract_path_text(detail.Properties, 'SegmentFilter') as segment_filter,
+ json_extract_path_text(detail.Properties, 'CreatedAt') as created_at,
+ json_extract_path_text(detail.Properties, 'LastUpdatedAt') as last_updated_at,
+ json_extract_path_text(detail.Properties, 'Tags') as tags
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ WHERE listing.data__TypeName = 'AWS::CustomerProfiles::EventTrigger'
+ AND detail.data__TypeName = 'AWS::CustomerProfiles::EventTrigger'
+ AND listing.region = 'us-east-1'
+ event_triggers_list_only:
+ name: event_triggers_list_only
+ id: aws.customerprofiles.event_triggers_list_only
+ x-cfn-schema-name: EventTrigger
+ x-cfn-type-name: AWS::CustomerProfiles::EventTrigger
+ x-identifiers:
+ - DomainName
+ - EventTriggerName
+ x-type: cloud_control_view
+ methods: {}
+ sqlVerbs:
+ insert: []
+ delete: []
+ update: []
+ config:
+ views:
+ select:
+ predicate: sqlDialect == "sqlite3"
+ ddl: |-
+ SELECT
+ region,
+ JSON_EXTRACT(Properties, '$.DomainName') as domain_name,
+ JSON_EXTRACT(Properties, '$.EventTriggerName') as event_trigger_name
+ FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::CustomerProfiles::EventTrigger'
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres"
+ ddl: |-
+ SELECT
+ region,
+ json_extract_path_text(Properties, 'DomainName') as domain_name,
+ json_extract_path_text(Properties, 'EventTriggerName') as event_trigger_name
+ FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::CustomerProfiles::EventTrigger'
+ AND region = 'us-east-1'
+ event_trigger_tags:
+ name: event_trigger_tags
+ id: aws.customerprofiles.event_trigger_tags
+ x-cfn-schema-name: EventTrigger
+ x-cfn-type-name: AWS::CustomerProfiles::EventTrigger
+ x-type: cloud_control_view
+ methods: {}
+ sqlVerbs:
+ insert: []
+ delete: []
+ update: []
+ config:
+ views:
+ select:
+ predicate: sqlDialect == "sqlite3"
+ ddl: |-
+ SELECT
+ detail.region,
+ JSON_EXTRACT(json_each.value, '$.Key') as tag_key,
+ JSON_EXTRACT(json_each.value, '$.Value') as tag_value,
+ JSON_EXTRACT(detail.Properties, '$.DomainName') as domain_name,
+ JSON_EXTRACT(detail.Properties, '$.EventTriggerName') as event_trigger_name,
+ JSON_EXTRACT(detail.Properties, '$.ObjectTypeName') as object_type_name,
+ JSON_EXTRACT(detail.Properties, '$.Description') as description,
+ JSON_EXTRACT(detail.Properties, '$.EventTriggerConditions') as event_trigger_conditions,
+ JSON_EXTRACT(detail.Properties, '$.EventTriggerLimits') as event_trigger_limits,
+ JSON_EXTRACT(detail.Properties, '$.SegmentFilter') as segment_filter,
+ JSON_EXTRACT(detail.Properties, '$.CreatedAt') as created_at,
+ JSON_EXTRACT(detail.Properties, '$.LastUpdatedAt') as last_updated_at
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ ,json_each(JSON_EXTRACT(detail.Properties, '$.Tags'))
+ WHERE listing.data__TypeName = 'AWS::CustomerProfiles::EventTrigger'
+ AND detail.data__TypeName = 'AWS::CustomerProfiles::EventTrigger'
AND listing.region = 'us-east-1'
fallback:
predicate: sqlDialect == "postgres"
@@ -2741,19 +3753,21 @@ components:
json_extract_path_text(json_each.value, 'Key') as tag_key,
json_extract_path_text(json_each.value, 'Value') as tag_value,
json_extract_path_text(detail.Properties, 'DomainName') as domain_name,
- json_extract_path_text(detail.Properties, 'EventStreamName') as event_stream_name,
- json_extract_path_text(detail.Properties, 'Uri') as uri,
- json_extract_path_text(detail.Properties, 'EventStreamArn') as event_stream_arn,
+ json_extract_path_text(detail.Properties, 'EventTriggerName') as event_trigger_name,
+ json_extract_path_text(detail.Properties, 'ObjectTypeName') as object_type_name,
+ json_extract_path_text(detail.Properties, 'Description') as description,
+ json_extract_path_text(detail.Properties, 'EventTriggerConditions') as event_trigger_conditions,
+ json_extract_path_text(detail.Properties, 'EventTriggerLimits') as event_trigger_limits,
+ json_extract_path_text(detail.Properties, 'SegmentFilter') as segment_filter,
json_extract_path_text(detail.Properties, 'CreatedAt') as created_at,
- json_extract_path_text(detail.Properties, 'State') as state,
- json_extract_path_text(detail.Properties, 'DestinationDetails') as destination_details
+ json_extract_path_text(detail.Properties, 'LastUpdatedAt') as last_updated_at
FROM aws.cloud_control.resources listing
LEFT OUTER JOIN aws.cloud_control.resource detail
ON detail.data__Identifier = listing.Identifier
AND detail.region = listing.region
,json_array_elements_text(json_extract_path_text(detail.Properties, 'Tags'))
- WHERE listing.data__TypeName = 'AWS::CustomerProfiles::EventStream'
- AND detail.data__TypeName = 'AWS::CustomerProfiles::EventStream'
+ WHERE listing.data__TypeName = 'AWS::CustomerProfiles::EventTrigger'
+ AND detail.data__TypeName = 'AWS::CustomerProfiles::EventTrigger'
AND listing.region = 'us-east-1'
integrations:
name: integrations
@@ -2826,7 +3840,8 @@ components:
JSON_EXTRACT(Properties, '$.CreatedAt') as created_at,
JSON_EXTRACT(Properties, '$.LastUpdatedAt') as last_updated_at,
JSON_EXTRACT(Properties, '$.Tags') as tags,
- JSON_EXTRACT(Properties, '$.ObjectTypeNames') as object_type_names
+ JSON_EXTRACT(Properties, '$.ObjectTypeNames') as object_type_names,
+ JSON_EXTRACT(Properties, '$.EventTriggerNames') as event_trigger_names
FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::CustomerProfiles::Integration'
AND data__Identifier = '|'
AND region = 'us-east-1'
@@ -2842,7 +3857,8 @@ components:
JSON_EXTRACT(detail.Properties, '$.CreatedAt') as created_at,
JSON_EXTRACT(detail.Properties, '$.LastUpdatedAt') as last_updated_at,
JSON_EXTRACT(detail.Properties, '$.Tags') as tags,
- JSON_EXTRACT(detail.Properties, '$.ObjectTypeNames') as object_type_names
+ JSON_EXTRACT(detail.Properties, '$.ObjectTypeNames') as object_type_names,
+ JSON_EXTRACT(detail.Properties, '$.EventTriggerNames') as event_trigger_names
FROM aws.cloud_control.resources listing
LEFT OUTER JOIN aws.cloud_control.resource detail
ON detail.data__Identifier = listing.Identifier
@@ -2863,7 +3879,8 @@ components:
json_extract_path_text(Properties, 'CreatedAt') as created_at,
json_extract_path_text(Properties, 'LastUpdatedAt') as last_updated_at,
json_extract_path_text(Properties, 'Tags') as tags,
- json_extract_path_text(Properties, 'ObjectTypeNames') as object_type_names
+ json_extract_path_text(Properties, 'ObjectTypeNames') as object_type_names,
+ json_extract_path_text(Properties, 'EventTriggerNames') as event_trigger_names
FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::CustomerProfiles::Integration'
AND data__Identifier = '|'
AND region = 'us-east-1'
@@ -2879,7 +3896,8 @@ components:
json_extract_path_text(detail.Properties, 'CreatedAt') as created_at,
json_extract_path_text(detail.Properties, 'LastUpdatedAt') as last_updated_at,
json_extract_path_text(detail.Properties, 'Tags') as tags,
- json_extract_path_text(detail.Properties, 'ObjectTypeNames') as object_type_names
+ json_extract_path_text(detail.Properties, 'ObjectTypeNames') as object_type_names,
+ json_extract_path_text(detail.Properties, 'EventTriggerNames') as event_trigger_names
FROM aws.cloud_control.resources listing
LEFT OUTER JOIN aws.cloud_control.resource detail
ON detail.data__Identifier = listing.Identifier
@@ -2947,7 +3965,8 @@ components:
JSON_EXTRACT(detail.Properties, '$.ObjectTypeName') as object_type_name,
JSON_EXTRACT(detail.Properties, '$.CreatedAt') as created_at,
JSON_EXTRACT(detail.Properties, '$.LastUpdatedAt') as last_updated_at,
- JSON_EXTRACT(detail.Properties, '$.ObjectTypeNames') as object_type_names
+ JSON_EXTRACT(detail.Properties, '$.ObjectTypeNames') as object_type_names,
+ JSON_EXTRACT(detail.Properties, '$.EventTriggerNames') as event_trigger_names
FROM aws.cloud_control.resources listing
LEFT OUTER JOIN aws.cloud_control.resource detail
ON detail.data__Identifier = listing.Identifier
@@ -2969,7 +3988,8 @@ components:
json_extract_path_text(detail.Properties, 'ObjectTypeName') as object_type_name,
json_extract_path_text(detail.Properties, 'CreatedAt') as created_at,
json_extract_path_text(detail.Properties, 'LastUpdatedAt') as last_updated_at,
- json_extract_path_text(detail.Properties, 'ObjectTypeNames') as object_type_names
+ json_extract_path_text(detail.Properties, 'ObjectTypeNames') as object_type_names,
+ json_extract_path_text(detail.Properties, 'EventTriggerNames') as event_trigger_names
FROM aws.cloud_control.resources listing
LEFT OUTER JOIN aws.cloud_control.resource detail
ON detail.data__Identifier = listing.Identifier
@@ -3231,6 +4251,229 @@ components:
WHERE listing.data__TypeName = 'AWS::CustomerProfiles::ObjectType'
AND detail.data__TypeName = 'AWS::CustomerProfiles::ObjectType'
AND listing.region = 'us-east-1'
+ segment_definitions:
+ name: segment_definitions
+ id: aws.customerprofiles.segment_definitions
+ x-cfn-schema-name: SegmentDefinition
+ x-cfn-type-name: AWS::CustomerProfiles::SegmentDefinition
+ x-identifiers:
+ - DomainName
+ - SegmentDefinitionName
+ x-type: cloud_control
+ methods:
+ create_resource:
+ config:
+ requestBodyTranslate:
+ algorithm: naive_DesiredState
+ operation:
+ $ref: '#/paths/~1?Action=CreateResource&Version=2021-09-30&__SegmentDefinition&__detailTransformed=true/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::CustomerProfiles::SegmentDefinition"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ update_resource:
+ operation:
+ $ref: '#/paths/~1?Action=UpdateResource&Version=2021-09-30/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::CustomerProfiles::SegmentDefinition"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ delete_resource:
+ operation:
+ $ref: '#/paths/~1?Action=DeleteResource&Version=2021-09-30/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::CustomerProfiles::SegmentDefinition"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ sqlVerbs:
+ insert:
+ - $ref: '#/components/x-stackQL-resources/segment_definitions/methods/create_resource'
+ delete:
+ - $ref: '#/components/x-stackQL-resources/segment_definitions/methods/delete_resource'
+ update:
+ - $ref: '#/components/x-stackQL-resources/segment_definitions/methods/update_resource'
+ config:
+ views:
+ select:
+ predicate: sqlDialect == "sqlite3" && requiredParams == [ data__Identifier ]
+ ddl: |-
+ SELECT
+ region,
+ data__Identifier,
+ JSON_EXTRACT(Properties, '$.CreatedAt') as created_at,
+ JSON_EXTRACT(Properties, '$.Description') as description,
+ JSON_EXTRACT(Properties, '$.DisplayName') as display_name,
+ JSON_EXTRACT(Properties, '$.DomainName') as domain_name,
+ JSON_EXTRACT(Properties, '$.SegmentDefinitionName') as segment_definition_name,
+ JSON_EXTRACT(Properties, '$.SegmentGroups') as segment_groups,
+ JSON_EXTRACT(Properties, '$.SegmentDefinitionArn') as segment_definition_arn,
+ JSON_EXTRACT(Properties, '$.Tags') as tags
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::CustomerProfiles::SegmentDefinition'
+ AND data__Identifier = '|'
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "sqlite3"
+ ddl: |-
+ SELECT
+ detail.region,
+ JSON_EXTRACT(detail.Properties, '$.CreatedAt') as created_at,
+ JSON_EXTRACT(detail.Properties, '$.Description') as description,
+ JSON_EXTRACT(detail.Properties, '$.DisplayName') as display_name,
+ JSON_EXTRACT(detail.Properties, '$.DomainName') as domain_name,
+ JSON_EXTRACT(detail.Properties, '$.SegmentDefinitionName') as segment_definition_name,
+ JSON_EXTRACT(detail.Properties, '$.SegmentGroups') as segment_groups,
+ JSON_EXTRACT(detail.Properties, '$.SegmentDefinitionArn') as segment_definition_arn,
+ JSON_EXTRACT(detail.Properties, '$.Tags') as tags
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ WHERE listing.data__TypeName = 'AWS::CustomerProfiles::SegmentDefinition'
+ AND detail.data__TypeName = 'AWS::CustomerProfiles::SegmentDefinition'
+ AND listing.region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres" && requiredParams == [ data__Identifier ]
+ ddl: |-
+ SELECT
+ region,
+ data__Identifier,
+ json_extract_path_text(Properties, 'CreatedAt') as created_at,
+ json_extract_path_text(Properties, 'Description') as description,
+ json_extract_path_text(Properties, 'DisplayName') as display_name,
+ json_extract_path_text(Properties, 'DomainName') as domain_name,
+ json_extract_path_text(Properties, 'SegmentDefinitionName') as segment_definition_name,
+ json_extract_path_text(Properties, 'SegmentGroups') as segment_groups,
+ json_extract_path_text(Properties, 'SegmentDefinitionArn') as segment_definition_arn,
+ json_extract_path_text(Properties, 'Tags') as tags
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::CustomerProfiles::SegmentDefinition'
+ AND data__Identifier = '|'
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres"
+ ddl: |-
+ SELECT
+ detail.region,
+ json_extract_path_text(detail.Properties, 'CreatedAt') as created_at,
+ json_extract_path_text(detail.Properties, 'Description') as description,
+ json_extract_path_text(detail.Properties, 'DisplayName') as display_name,
+ json_extract_path_text(detail.Properties, 'DomainName') as domain_name,
+ json_extract_path_text(detail.Properties, 'SegmentDefinitionName') as segment_definition_name,
+ json_extract_path_text(detail.Properties, 'SegmentGroups') as segment_groups,
+ json_extract_path_text(detail.Properties, 'SegmentDefinitionArn') as segment_definition_arn,
+ json_extract_path_text(detail.Properties, 'Tags') as tags
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ WHERE listing.data__TypeName = 'AWS::CustomerProfiles::SegmentDefinition'
+ AND detail.data__TypeName = 'AWS::CustomerProfiles::SegmentDefinition'
+ AND listing.region = 'us-east-1'
+ segment_definitions_list_only:
+ name: segment_definitions_list_only
+ id: aws.customerprofiles.segment_definitions_list_only
+ x-cfn-schema-name: SegmentDefinition
+ x-cfn-type-name: AWS::CustomerProfiles::SegmentDefinition
+ x-identifiers:
+ - DomainName
+ - SegmentDefinitionName
+ x-type: cloud_control_view
+ methods: {}
+ sqlVerbs:
+ insert: []
+ delete: []
+ update: []
+ config:
+ views:
+ select:
+ predicate: sqlDialect == "sqlite3"
+ ddl: |-
+ SELECT
+ region,
+ JSON_EXTRACT(Properties, '$.DomainName') as domain_name,
+ JSON_EXTRACT(Properties, '$.SegmentDefinitionName') as segment_definition_name
+ FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::CustomerProfiles::SegmentDefinition'
+ AND region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres"
+ ddl: |-
+ SELECT
+ region,
+ json_extract_path_text(Properties, 'DomainName') as domain_name,
+ json_extract_path_text(Properties, 'SegmentDefinitionName') as segment_definition_name
+ FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::CustomerProfiles::SegmentDefinition'
+ AND region = 'us-east-1'
+ segment_definition_tags:
+ name: segment_definition_tags
+ id: aws.customerprofiles.segment_definition_tags
+ x-cfn-schema-name: SegmentDefinition
+ x-cfn-type-name: AWS::CustomerProfiles::SegmentDefinition
+ x-type: cloud_control_view
+ methods: {}
+ sqlVerbs:
+ insert: []
+ delete: []
+ update: []
+ config:
+ views:
+ select:
+ predicate: sqlDialect == "sqlite3"
+ ddl: |-
+ SELECT
+ detail.region,
+ JSON_EXTRACT(json_each.value, '$.Key') as tag_key,
+ JSON_EXTRACT(json_each.value, '$.Value') as tag_value,
+ JSON_EXTRACT(detail.Properties, '$.CreatedAt') as created_at,
+ JSON_EXTRACT(detail.Properties, '$.Description') as description,
+ JSON_EXTRACT(detail.Properties, '$.DisplayName') as display_name,
+ JSON_EXTRACT(detail.Properties, '$.DomainName') as domain_name,
+ JSON_EXTRACT(detail.Properties, '$.SegmentDefinitionName') as segment_definition_name,
+ JSON_EXTRACT(detail.Properties, '$.SegmentGroups') as segment_groups,
+ JSON_EXTRACT(detail.Properties, '$.SegmentDefinitionArn') as segment_definition_arn
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ ,json_each(JSON_EXTRACT(detail.Properties, '$.Tags'))
+ WHERE listing.data__TypeName = 'AWS::CustomerProfiles::SegmentDefinition'
+ AND detail.data__TypeName = 'AWS::CustomerProfiles::SegmentDefinition'
+ AND listing.region = 'us-east-1'
+ fallback:
+ predicate: sqlDialect == "postgres"
+ ddl: |-
+ SELECT
+ detail.region,
+ json_extract_path_text(json_each.value, 'Key') as tag_key,
+ json_extract_path_text(json_each.value, 'Value') as tag_value,
+ json_extract_path_text(detail.Properties, 'CreatedAt') as created_at,
+ json_extract_path_text(detail.Properties, 'Description') as description,
+ json_extract_path_text(detail.Properties, 'DisplayName') as display_name,
+ json_extract_path_text(detail.Properties, 'DomainName') as domain_name,
+ json_extract_path_text(detail.Properties, 'SegmentDefinitionName') as segment_definition_name,
+ json_extract_path_text(detail.Properties, 'SegmentGroups') as segment_groups,
+ json_extract_path_text(detail.Properties, 'SegmentDefinitionArn') as segment_definition_arn
+ FROM aws.cloud_control.resources listing
+ LEFT OUTER JOIN aws.cloud_control.resource detail
+ ON detail.data__Identifier = listing.Identifier
+ AND detail.region = listing.region
+ ,json_array_elements_text(json_extract_path_text(detail.Properties, 'Tags'))
+ WHERE listing.data__TypeName = 'AWS::CustomerProfiles::SegmentDefinition'
+ AND detail.data__TypeName = 'AWS::CustomerProfiles::SegmentDefinition'
+ AND listing.region = 'us-east-1'
paths:
/?Action=CreateResource&Version=2021-09-30:
parameters:
@@ -3500,6 +4743,48 @@ paths:
schema:
$ref: '#/components/x-cloud-control-schemas/ProgressEvent'
description: Success
+ /?Action=CreateResource&Version=2021-09-30&__EventTrigger&__detailTransformed=true:
+ parameters:
+ - $ref: '#/components/parameters/X-Amz-Content-Sha256'
+ - $ref: '#/components/parameters/X-Amz-Date'
+ - $ref: '#/components/parameters/X-Amz-Algorithm'
+ - $ref: '#/components/parameters/X-Amz-Credential'
+ - $ref: '#/components/parameters/X-Amz-Security-Token'
+ - $ref: '#/components/parameters/X-Amz-Signature'
+ - $ref: '#/components/parameters/X-Amz-SignedHeaders'
+ post:
+ operationId: CreateEventTrigger
+ parameters:
+ - description: Action Header
+ in: header
+ name: X-Amz-Target
+ required: false
+ schema:
+ default: CloudApiService.CreateResource
+ enum:
+ - CloudApiService.CreateResource
+ type: string
+ - in: header
+ name: Content-Type
+ required: false
+ schema:
+ default: application/x-amz-json-1.0
+ enum:
+ - application/x-amz-json-1.0
+ type: string
+ requestBody:
+ content:
+ application/x-amz-json-1.0:
+ schema:
+ $ref: '#/components/schemas/CreateEventTriggerRequest'
+ required: true
+ responses:
+ '200':
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/x-cloud-control-schemas/ProgressEvent'
+ description: Success
/?Action=CreateResource&Version=2021-09-30&__Integration&__detailTransformed=true:
parameters:
- $ref: '#/components/parameters/X-Amz-Content-Sha256'
@@ -3584,6 +4869,48 @@ paths:
schema:
$ref: '#/components/x-cloud-control-schemas/ProgressEvent'
description: Success
+ /?Action=CreateResource&Version=2021-09-30&__SegmentDefinition&__detailTransformed=true:
+ parameters:
+ - $ref: '#/components/parameters/X-Amz-Content-Sha256'
+ - $ref: '#/components/parameters/X-Amz-Date'
+ - $ref: '#/components/parameters/X-Amz-Algorithm'
+ - $ref: '#/components/parameters/X-Amz-Credential'
+ - $ref: '#/components/parameters/X-Amz-Security-Token'
+ - $ref: '#/components/parameters/X-Amz-Signature'
+ - $ref: '#/components/parameters/X-Amz-SignedHeaders'
+ post:
+ operationId: CreateSegmentDefinition
+ parameters:
+ - description: Action Header
+ in: header
+ name: X-Amz-Target
+ required: false
+ schema:
+ default: CloudApiService.CreateResource
+ enum:
+ - CloudApiService.CreateResource
+ type: string
+ - in: header
+ name: Content-Type
+ required: false
+ schema:
+ default: application/x-amz-json-1.0
+ enum:
+ - application/x-amz-json-1.0
+ type: string
+ requestBody:
+ content:
+ application/x-amz-json-1.0:
+ schema:
+ $ref: '#/components/schemas/CreateSegmentDefinitionRequest'
+ required: true
+ responses:
+ '200':
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/x-cloud-control-schemas/ProgressEvent'
+ description: Success
x-stackQL-config:
requestTranslate:
algorithm: drop_double_underscore_params
diff --git a/providers/src/aws/v00.00.00000/services/databrew.yaml b/providers/src/aws/v00.00.00000/services/databrew.yaml
index f83aa3d0..a5302860 100644
--- a/providers/src/aws/v00.00.00000/services/databrew.yaml
+++ b/providers/src/aws/v00.00.00000/services/databrew.yaml
@@ -502,6 +502,11 @@ components:
description: 'Arn of the source of the dataset. For e.g.: AppFlow Flow ARN.'
type: string
additionalProperties: false
+ BucketOwner:
+ description: Bucket owner
+ type: string
+ minLength: 12
+ maxLength: 12
PathOptions:
description: Path options for dataset
type: object
@@ -674,6 +679,13 @@ components:
Input:
description: Input
$ref: '#/components/schemas/Input'
+ Source:
+ description: Source type of the dataset
+ type: string
+ enum:
+ - S3
+ - DATA-CATALOG
+ - DATABASE
PathOptions:
description: PathOptions
$ref: '#/components/schemas/PathOptions'
@@ -697,7 +709,16 @@ components:
x-required-properties:
- Name
- Input
- x-taggable: true
+ x-tagging:
+ taggable: true
+ tagOnCreate: true
+ tagUpdatable: false
+ cloudFormationSystemTags: true
+ tagProperty: /properties/Tags
+ permissions:
+ - databrew:TagResource
+ - databrew:UntagResource
+ - databrew:ListTagsForResource
x-required-permissions:
create:
- databrew:CreateDataset
@@ -897,7 +918,16 @@ components:
x-required-properties:
- Name
- Steps
- x-taggable: true
+ x-tagging:
+ taggable: true
+ tagOnCreate: true
+ tagUpdatable: false
+ cloudFormationSystemTags: true
+ tagProperty: /properties/Tags
+ permissions:
+ - databrew:TagResource
+ - databrew:UntagResource
+ - databrew:ListTagsForResource
x-required-permissions:
create:
- databrew:CreateRecipe
@@ -1177,7 +1207,16 @@ components:
- Name
- RoleArn
- Type
- x-taggable: true
+ x-tagging:
+ taggable: true
+ tagOnCreate: true
+ tagUpdatable: false
+ cloudFormationSystemTags: true
+ tagProperty: /properties/Tags
+ permissions:
+ - databrew:TagResource
+ - databrew:UntagResource
+ - databrew:ListTagsForResource
x-required-permissions:
create:
- databrew:CreateProfileJob
@@ -1264,7 +1303,16 @@ components:
- Name
- RecipeName
- RoleArn
- x-taggable: true
+ x-tagging:
+ taggable: true
+ tagOnCreate: true
+ tagUpdatable: false
+ cloudFormationSystemTags: true
+ tagProperty: /properties/Tags
+ permissions:
+ - databrew:TagResource
+ - databrew:UntagResource
+ - databrew:ListTagsForResource
x-required-permissions:
create:
- databrew:CreateProject
@@ -1704,11 +1752,21 @@ components:
x-create-only-properties:
- Name
- TargetArn
+ - Tags
x-required-properties:
- Name
- TargetArn
- Rules
- x-taggable: true
+ x-tagging:
+ taggable: true
+ tagOnCreate: true
+ tagUpdatable: false
+ cloudFormationSystemTags: true
+ tagProperty: /properties/Tags
+ permissions:
+ - databrew:TagResource
+ - databrew:UntagResource
+ - databrew:ListTagsForResource
x-required-permissions:
create:
- databrew:CreateRuleset
@@ -1771,7 +1829,16 @@ components:
x-required-properties:
- Name
- CronExpression
- x-taggable: true
+ x-tagging:
+ taggable: true
+ tagOnCreate: true
+ tagUpdatable: false
+ cloudFormationSystemTags: true
+ tagProperty: /properties/Tags
+ permissions:
+ - databrew:TagResource
+ - databrew:UntagResource
+ - databrew:ListTagsForResource
x-required-permissions:
create:
- databrew:CreateSchedule
@@ -1823,6 +1890,13 @@ components:
Input:
description: Input
$ref: '#/components/schemas/Input'
+ Source:
+ description: Source type of the dataset
+ type: string
+ enum:
+ - S3
+ - DATA-CATALOG
+ - DATABASE
PathOptions:
description: PathOptions
$ref: '#/components/schemas/PathOptions'
@@ -2182,6 +2256,7 @@ components:
JSON_EXTRACT(Properties, '$.Format') as _format,
JSON_EXTRACT(Properties, '$.FormatOptions') as format_options,
JSON_EXTRACT(Properties, '$.Input') as input,
+ JSON_EXTRACT(Properties, '$.Source') as source,
JSON_EXTRACT(Properties, '$.PathOptions') as path_options,
JSON_EXTRACT(Properties, '$.Tags') as tags
FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::DataBrew::Dataset'
@@ -2196,6 +2271,7 @@ components:
JSON_EXTRACT(detail.Properties, '$.Format') as _format,
JSON_EXTRACT(detail.Properties, '$.FormatOptions') as format_options,
JSON_EXTRACT(detail.Properties, '$.Input') as input,
+ JSON_EXTRACT(detail.Properties, '$.Source') as source,
JSON_EXTRACT(detail.Properties, '$.PathOptions') as path_options,
JSON_EXTRACT(detail.Properties, '$.Tags') as tags
FROM aws.cloud_control.resources listing
@@ -2215,6 +2291,7 @@ components:
json_extract_path_text(Properties, 'Format') as _format,
json_extract_path_text(Properties, 'FormatOptions') as format_options,
json_extract_path_text(Properties, 'Input') as input,
+ json_extract_path_text(Properties, 'Source') as source,
json_extract_path_text(Properties, 'PathOptions') as path_options,
json_extract_path_text(Properties, 'Tags') as tags
FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::DataBrew::Dataset'
@@ -2229,6 +2306,7 @@ components:
json_extract_path_text(detail.Properties, 'Format') as _format,
json_extract_path_text(detail.Properties, 'FormatOptions') as format_options,
json_extract_path_text(detail.Properties, 'Input') as input,
+ json_extract_path_text(detail.Properties, 'Source') as source,
json_extract_path_text(detail.Properties, 'PathOptions') as path_options,
json_extract_path_text(detail.Properties, 'Tags') as tags
FROM aws.cloud_control.resources listing
@@ -2293,6 +2371,7 @@ components:
JSON_EXTRACT(detail.Properties, '$.Format') as _format,
JSON_EXTRACT(detail.Properties, '$.FormatOptions') as format_options,
JSON_EXTRACT(detail.Properties, '$.Input') as input,
+ JSON_EXTRACT(detail.Properties, '$.Source') as source,
JSON_EXTRACT(detail.Properties, '$.PathOptions') as path_options
FROM aws.cloud_control.resources listing
LEFT OUTER JOIN aws.cloud_control.resource detail
@@ -2313,6 +2392,7 @@ components:
json_extract_path_text(detail.Properties, 'Format') as _format,
json_extract_path_text(detail.Properties, 'FormatOptions') as format_options,
json_extract_path_text(detail.Properties, 'Input') as input,
+ json_extract_path_text(detail.Properties, 'Source') as source,
json_extract_path_text(detail.Properties, 'PathOptions') as path_options
FROM aws.cloud_control.resources listing
LEFT OUTER JOIN aws.cloud_control.resource detail
diff --git a/providers/src/aws/v00.00.00000/services/datasync.yaml b/providers/src/aws/v00.00.00000/services/datasync.yaml
index b3816c77..22f84eee 100644
--- a/providers/src/aws/v00.00.00000/services/datasync.yaml
+++ b/providers/src/aws/v00.00.00000/services/datasync.yaml
@@ -413,7 +413,7 @@ components:
type: string
pattern: ^[a-zA-Z0-9\s+=._:@/-]+$
maxLength: 256
- minLength: 1
+ minLength: 0
ActivationKey:
description: Activation key of the Agent.
type: string
@@ -482,6 +482,10 @@ components:
tagUpdatable: true
cloudFormationSystemTags: true
tagProperty: /properties/Tags
+ permissions:
+ - datasync:TagResource
+ - datasync:UntagResource
+ - datasync:ListTagsForResource
x-required-permissions:
create:
- datasync:CreateAgent
@@ -607,6 +611,10 @@ components:
tagUpdatable: true
cloudFormationSystemTags: true
tagProperty: /properties/Tags
+ permissions:
+ - datasync:TagResource
+ - datasync:UntagResource
+ - datasync:ListTagsForResource
x-required-permissions:
create:
- datasync:CreateLocationAzureBlob
@@ -726,6 +734,10 @@ components:
tagUpdatable: true
cloudFormationSystemTags: true
tagProperty: /properties/Tags
+ permissions:
+ - datasync:TagResource
+ - datasync:UntagResource
+ - datasync:ListTagsForResource
x-required-permissions:
create:
- datasync:CreateLocationEfs
@@ -817,6 +829,10 @@ components:
tagUpdatable: true
cloudFormationSystemTags: true
tagProperty: /properties/Tags
+ permissions:
+ - datasync:TagResource
+ - datasync:UntagResource
+ - datasync:ListTagsForResource
x-required-permissions:
create:
- datasync:CreateLocationFsxLustre
@@ -984,6 +1000,10 @@ components:
tagUpdatable: true
cloudFormationSystemTags: true
tagProperty: /properties/Tags
+ permissions:
+ - datasync:TagResource
+ - datasync:UntagResource
+ - datasync:ListTagsForResource
x-required-permissions:
create:
- datasync:CreateLocationFsxOntap
@@ -1093,6 +1113,10 @@ components:
tagUpdatable: true
cloudFormationSystemTags: true
tagProperty: /properties/Tags
+ permissions:
+ - datasync:TagResource
+ - datasync:UntagResource
+ - datasync:ListTagsForResource
x-required-permissions:
create:
- datasync:CreateLocationFsxOpenZfs
@@ -1200,6 +1224,10 @@ components:
tagUpdatable: true
cloudFormationSystemTags: true
tagProperty: /properties/Tags
+ permissions:
+ - datasync:TagResource
+ - datasync:UntagResource
+ - datasync:ListTagsForResource
x-required-permissions:
create:
- datasync:CreateLocationFsxWindows
@@ -1379,6 +1407,10 @@ components:
tagUpdatable: true
cloudFormationSystemTags: true
tagProperty: /properties/Tags
+ permissions:
+ - datasync:TagResource
+ - datasync:UntagResource
+ - datasync:ListTagsForResource
x-required-permissions:
create:
- datasync:CreateLocationHdfs
@@ -1475,6 +1507,10 @@ components:
tagUpdatable: true
cloudFormationSystemTags: true
tagProperty: /properties/Tags
+ permissions:
+ - datasync:TagResource
+ - datasync:UntagResource
+ - datasync:ListTagsForResource
x-required-permissions:
create:
- datasync:CreateLocationNfs
@@ -1594,6 +1630,10 @@ components:
tagUpdatable: true
cloudFormationSystemTags: true
tagProperty: /properties/Tags
+ permissions:
+ - datasync:TagResource
+ - datasync:UntagResource
+ - datasync:ListTagsForResource
x-required-permissions:
create:
- datasync:CreateLocationObjectStorage
@@ -1804,6 +1844,10 @@ components:
tagUpdatable: true
cloudFormationSystemTags: true
tagProperty: /properties/Tags
+ permissions:
+ - datasync:TagResource
+ - datasync:UntagResource
+ - datasync:ListTagsForResource
x-required-permissions:
create:
- datasync:CreateLocationSmb
@@ -1939,6 +1983,10 @@ components:
tagUpdatable: true
cloudFormationSystemTags: true
tagProperty: /properties/Tags
+ permissions:
+ - datasync:TagResource
+ - datasync:UntagResource
+ - datasync:ListTagsForResource
x-required-permissions:
create:
- datasync:AddStorageSystem
@@ -2327,6 +2375,12 @@ components:
type: string
maxLength: 128
pattern: ^arn:(aws|aws-cn|aws-us-gov|aws-iso|aws-iso-b):datasync:[a-z\-0-9]*:[0-9]{12}:task/task-[0-9a-f]{17}$
+ TaskMode:
+ description: Specifies the task mode for the task.
+ type: string
+ enum:
+ - BASIC
+ - ENHANCED
Status:
description: The status of the task that was described.
type: string
@@ -2351,6 +2405,7 @@ components:
x-create-only-properties:
- DestinationLocationArn
- SourceLocationArn
+ - TaskMode
x-read-only-properties:
- TaskArn
- Status
@@ -2365,6 +2420,10 @@ components:
tagUpdatable: true
cloudFormationSystemTags: true
tagProperty: /properties/Tags
+ permissions:
+ - datasync:TagResource
+ - datasync:UntagResource
+ - datasync:ListTagsForResource
x-required-permissions:
create:
- datasync:CreateTask
@@ -2429,7 +2488,7 @@ components:
type: string
pattern: ^[a-zA-Z0-9\s+=._:@/-]+$
maxLength: 256
- minLength: 1
+ minLength: 0
ActivationKey:
description: Activation key of the Agent.
type: string
@@ -3381,6 +3440,12 @@ components:
type: string
maxLength: 128
pattern: ^arn:(aws|aws-cn|aws-us-gov|aws-iso|aws-iso-b):datasync:[a-z\-0-9]*:[0-9]{12}:task/task-[0-9a-f]{17}$
+ TaskMode:
+ description: Specifies the task mode for the task.
+ type: string
+ enum:
+ - BASIC
+ - ENHANCED
Status:
description: The status of the task that was described.
type: string
@@ -6412,6 +6477,7 @@ components:
JSON_EXTRACT(Properties, '$.Schedule') as schedule,
JSON_EXTRACT(Properties, '$.SourceLocationArn') as source_location_arn,
JSON_EXTRACT(Properties, '$.TaskArn') as task_arn,
+ JSON_EXTRACT(Properties, '$.TaskMode') as task_mode,
JSON_EXTRACT(Properties, '$.Status') as status,
JSON_EXTRACT(Properties, '$.SourceNetworkInterfaceArns') as source_network_interface_arns,
JSON_EXTRACT(Properties, '$.DestinationNetworkInterfaceArns') as destination_network_interface_arns
@@ -6435,6 +6501,7 @@ components:
JSON_EXTRACT(detail.Properties, '$.Schedule') as schedule,
JSON_EXTRACT(detail.Properties, '$.SourceLocationArn') as source_location_arn,
JSON_EXTRACT(detail.Properties, '$.TaskArn') as task_arn,
+ JSON_EXTRACT(detail.Properties, '$.TaskMode') as task_mode,
JSON_EXTRACT(detail.Properties, '$.Status') as status,
JSON_EXTRACT(detail.Properties, '$.SourceNetworkInterfaceArns') as source_network_interface_arns,
JSON_EXTRACT(detail.Properties, '$.DestinationNetworkInterfaceArns') as destination_network_interface_arns
@@ -6463,6 +6530,7 @@ components:
json_extract_path_text(Properties, 'Schedule') as schedule,
json_extract_path_text(Properties, 'SourceLocationArn') as source_location_arn,
json_extract_path_text(Properties, 'TaskArn') as task_arn,
+ json_extract_path_text(Properties, 'TaskMode') as task_mode,
json_extract_path_text(Properties, 'Status') as status,
json_extract_path_text(Properties, 'SourceNetworkInterfaceArns') as source_network_interface_arns,
json_extract_path_text(Properties, 'DestinationNetworkInterfaceArns') as destination_network_interface_arns
@@ -6486,6 +6554,7 @@ components:
json_extract_path_text(detail.Properties, 'Schedule') as schedule,
json_extract_path_text(detail.Properties, 'SourceLocationArn') as source_location_arn,
json_extract_path_text(detail.Properties, 'TaskArn') as task_arn,
+ json_extract_path_text(detail.Properties, 'TaskMode') as task_mode,
json_extract_path_text(detail.Properties, 'Status') as status,
json_extract_path_text(detail.Properties, 'SourceNetworkInterfaceArns') as source_network_interface_arns,
json_extract_path_text(detail.Properties, 'DestinationNetworkInterfaceArns') as destination_network_interface_arns
@@ -6558,6 +6627,7 @@ components:
JSON_EXTRACT(detail.Properties, '$.Schedule') as schedule,
JSON_EXTRACT(detail.Properties, '$.SourceLocationArn') as source_location_arn,
JSON_EXTRACT(detail.Properties, '$.TaskArn') as task_arn,
+ JSON_EXTRACT(detail.Properties, '$.TaskMode') as task_mode,
JSON_EXTRACT(detail.Properties, '$.Status') as status,
JSON_EXTRACT(detail.Properties, '$.SourceNetworkInterfaceArns') as source_network_interface_arns,
JSON_EXTRACT(detail.Properties, '$.DestinationNetworkInterfaceArns') as destination_network_interface_arns
@@ -6587,6 +6657,7 @@ components:
json_extract_path_text(detail.Properties, 'Schedule') as schedule,
json_extract_path_text(detail.Properties, 'SourceLocationArn') as source_location_arn,
json_extract_path_text(detail.Properties, 'TaskArn') as task_arn,
+ json_extract_path_text(detail.Properties, 'TaskMode') as task_mode,
json_extract_path_text(detail.Properties, 'Status') as status,
json_extract_path_text(detail.Properties, 'SourceNetworkInterfaceArns') as source_network_interface_arns,
json_extract_path_text(detail.Properties, 'DestinationNetworkInterfaceArns') as destination_network_interface_arns
diff --git a/providers/src/aws/v00.00.00000/services/datazone.yaml b/providers/src/aws/v00.00.00000/services/datazone.yaml
index ef5ffb9f..bbd1c3c8 100644
--- a/providers/src/aws/v00.00.00000/services/datazone.yaml
+++ b/providers/src/aws/v00.00.00000/services/datazone.yaml
@@ -395,7 +395,7 @@ components:
description: The data access role included in the configuration details of the AWS Glue data source.
pattern: ^arn:aws[^:]*:iam::\d{12}:(role|role/service-role)/[\w+=,.@-]{1,128}$
DataSourceConfigurationInput:
- description: Specifies the configuration of the data source. It can be set to either glueRunConfiguration or redshiftRunConfiguration.
+ description: Specifies the configuration of the data source. It can be set to either glueRunConfiguration or redshiftRunConfiguration or sageMakerRunConfiguration.
oneOf:
- type: object
title: GlueRunConfiguration
@@ -409,6 +409,12 @@ components:
RedshiftRunConfiguration:
$ref: '#/components/schemas/RedshiftRunConfigurationInput'
additionalProperties: false
+ - type: object
+ title: SageMakerRunConfiguration
+ properties:
+ SageMakerRunConfiguration:
+ $ref: '#/components/schemas/SageMakerRunConfigurationInput'
+ additionalProperties: false
DataSourceStatus:
type: string
description: The status of the data source.
@@ -615,6 +621,16 @@ components:
items:
$ref: '#/components/schemas/RelationalFilterConfiguration'
x-insertionOrder: false
+ SageMakerRunConfigurationInput:
+ type: object
+ description: The configuration details of the Amazon SageMaker data source.
+ properties:
+ TrackingAssets:
+ description: The tracking assets of the Amazon SageMaker run.
+ $ref: '#/components/schemas/TrackingAssets'
+ required:
+ - TrackingAssets
+ additionalProperties: false
ScheduleConfiguration:
type: object
description: The schedule of the data source runs.
@@ -631,6 +647,19 @@ components:
additionalProperties: false
Timezone:
type: string
+ TrackingAssets:
+ type: object
+ description: The tracking assets of the Amazon SageMaker run.
+ x-patternProperties:
+ ^.{1,64}$:
+ type: array
+ items:
+ type: string
+ pattern: ^arn:aws[^:]*:sagemaker:[a-z]{2}-?(iso|gov)?-{1}[a-z]*-{1}[0-9]:\d{12}:[\w+=,.@-]{1,128}/[\w+=,.@-]{1,256}$
+ minItems: 0
+ maxItems: 500
+ maxProperties: 1
+ additionalProperties: false
TypeRevision:
type: string
description: The revision of the metadata form type.
@@ -916,6 +945,9 @@ components:
tagUpdatable: true
cloudFormationSystemTags: false
tagProperty: /properties/Tags
+ permissions:
+ - datazone:TagResource
+ - datazone:UntagResource
x-required-permissions:
create:
- datazone:CreateDomain
@@ -925,6 +957,8 @@ components:
- sso:CreateManagedApplicationInstance
- sso:DeleteManagedApplicationInstance
- sso:PutApplicationAssignmentConfiguration
+ - sso:ListInstances
+ - iam:PassRole
read:
- datazone:GetDomain
update:
@@ -935,9 +969,14 @@ components:
- sso:CreateManagedApplicationInstance
- sso:DeleteManagedApplicationInstance
- sso:PutApplicationAssignmentConfiguration
+ - sso:ListInstances
+ - iam:PassRole
delete:
- datazone:DeleteDomain
- datazone:GetDomain
+ - sso:DeleteManagedApplicationInstance
+ - sso:PutApplicationAssignmentConfiguration
+ - sso:ListInstances
list:
- datazone:ListDomains
EnvironmentParameter:
@@ -979,6 +1018,14 @@ components:
type: string
description: The AWS region in which the Amazon DataZone environment is created.
pattern: ^[a-z]{2}-[a-z]{4,10}-\d$
+ EnvironmentAccountIdentifier:
+ type: string
+ description: The AWS account in which the Amazon DataZone environment is created.
+ pattern: ^\d{12}$
+ EnvironmentAccountRegion:
+ type: string
+ description: The AWS region in which the Amazon DataZone environment is created.
+ pattern: ^[a-z]{2}-[a-z]{4,10}-\d$
CreatedAt:
type: string
description: The timestamp of when the environment was created.
@@ -1005,11 +1052,11 @@ components:
EnvironmentProfileId:
type: string
description: The ID of the environment profile with which the Amazon DataZone environment was created.
- pattern: ^[a-zA-Z0-9_-]{1,36}$
+ pattern: ^[a-zA-Z0-9_-]{0,36}$
EnvironmentProfileIdentifier:
type: string
description: The ID of the environment profile with which the Amazon DataZone environment would be created.
- pattern: ^[a-zA-Z0-9_-]{1,36}$
+ pattern: ^[a-zA-Z0-9_-]{0,36}$
GlossaryTerms:
type: array
x-insertionOrder: false
@@ -1019,6 +1066,9 @@ components:
pattern: ^[a-zA-Z0-9_-]{1,36}$
maxItems: 20
minItems: 1
+ EnvironmentRoleArn:
+ type: string
+ description: Environment role arn for custom aws environment permissions
Id:
type: string
description: The ID of the Amazon DataZone environment.
@@ -1054,7 +1104,6 @@ components:
items:
$ref: '#/components/schemas/EnvironmentParameter'
required:
- - EnvironmentProfileIdentifier
- Name
- ProjectIdentifier
- DomainIdentifier
@@ -1071,10 +1120,15 @@ components:
- EnvironmentProfileIdentifier
- ProjectIdentifier
- UserParameters
+ - EnvironmentAccountIdentifier
+ - EnvironmentAccountRegion
x-write-only-properties:
- EnvironmentProfileIdentifier
- ProjectIdentifier
- DomainIdentifier
+ - EnvironmentAccountIdentifier
+ - EnvironmentAccountRegion
+ - EnvironmentRoleArn
x-read-only-properties:
- AwsAccountId
- AwsAccountRegion
@@ -1089,7 +1143,6 @@ components:
- Status
- UpdatedAt
x-required-properties:
- - EnvironmentProfileIdentifier
- Name
- ProjectIdentifier
- DomainIdentifier
@@ -1100,17 +1153,124 @@ components:
- datazone:CreateEnvironment
- datazone:GetEnvironment
- datazone:DeleteEnvironment
+ - datazone:AssociateEnvironmentRole
+ - iam:PassRole
read:
- datazone:GetEnvironment
update:
- datazone:UpdateEnvironment
- datazone:GetEnvironment
- datazone:DeleteEnvironment
+ - datazone:AssociateEnvironmentRole
+ - datazone:DisassociateEnvironmentRole
+ - iam:PassRole
delete:
- datazone:DeleteEnvironment
- datazone:GetEnvironment
list:
- datazone:ListEnvironments
+ EnvironmentActionURI:
+ type: string
+ description: The URI of the console link specified as part of the environment action.
+ minLength: 1
+ maxLength: 2048
+ AwsConsoleLinkParameters:
+ type: object
+ description: The parameters of the console link specified as part of the environment action
+ properties:
+ Uri:
+ $ref: '#/components/schemas/EnvironmentActionURI'
+ additionalProperties: false
+ EnvironmentActions:
+ type: object
+ properties:
+ Description:
+ type: string
+ description: The description of the Amazon DataZone environment action.
+ maxLength: 2048
+ DomainId:
+ type: string
+ description: The identifier of the Amazon DataZone domain in which the environment is created.
+ pattern: ^dzd[-_][a-zA-Z0-9_-]{1,36}$
+ DomainIdentifier:
+ type: string
+ description: The identifier of the Amazon DataZone domain in which the environment would be created.
+ pattern: ^dzd[-_][a-zA-Z0-9_-]{1,36}$
+ EnvironmentId:
+ type: string
+ description: The identifier of the Amazon DataZone environment in which the action is taking place
+ pattern: '[a-zA-Z0-9_-]{1,36}$'
+ maxLength: 36
+ minLength: 1
+ EnvironmentIdentifier:
+ type: string
+ description: The identifier of the Amazon DataZone environment in which the action is taking place
+ pattern: '[a-zA-Z0-9_-]{1,36}$'
+ maxLength: 36
+ minLength: 1
+ Id:
+ type: string
+ description: The ID of the Amazon DataZone environment action.
+ pattern: ^[a-zA-Z0-9_-]{1,36}$
+ maxLength: 36
+ minLength: 1
+ Identifier:
+ type: string
+ description: The ID of the Amazon DataZone environment action.
+ pattern: ^[a-zA-Z0-9_-]{1,36}$
+ maxLength: 36
+ minLength: 1
+ Name:
+ type: string
+ description: The name of the environment action.
+ maxLength: 64
+ minLength: 1
+ pattern: ^[\w -]+$
+ Parameters:
+ description: The parameters of the environment action.
+ $ref: '#/components/schemas/AwsConsoleLinkParameters'
+ required:
+ - Name
+ x-stackql-resource-name: environment_actions
+ description: Definition of AWS::DataZone::EnvironmentActions Resource Type
+ x-type-name: AWS::DataZone::EnvironmentActions
+ x-stackql-primary-identifier:
+ - DomainId
+ - EnvironmentId
+ - Id
+ x-stackql-additional-identifiers:
+ - - EnvironmentIdentifier
+ x-create-only-properties:
+ - DomainIdentifier
+ - EnvironmentIdentifier
+ x-write-only-properties:
+ - EnvironmentIdentifier
+ - DomainIdentifier
+ - Identifier
+ x-read-only-properties:
+ - DomainId
+ - EnvironmentId
+ - Id
+ x-required-properties:
+ - Name
+ x-tagging:
+ taggable: false
+ x-required-permissions:
+ create:
+ - datazone:CreateEnvironmentAction
+ - datazone:GetEnvironmentAction
+ - datazone:DeleteEnvironmentAction
+ read:
+ - datazone:GetEnvironmentAction
+ update:
+ - datazone:UpdateEnvironmentAction
+ - datazone:GetEnvironmentAction
+ - datazone:DeleteEnvironmentAction
+ delete:
+ - datazone:DeleteEnvironmentAction
+ - datazone:GetEnvironmentAction
+ list:
+ - datazone:ListEnvironmentActions
RegionalParameter:
additionalProperties: false
type: object
@@ -1522,6 +1682,9 @@ components:
enum:
- PROJECT_OWNER
- PROJECT_CONTRIBUTOR
+ - PROJECT_CATALOG_VIEWER
+ - PROJECT_CATALOG_CONSUMER
+ - PROJECT_CATALOG_STEWARD
MemberIdentifierType:
type: string
enum:
@@ -1702,7 +1865,6 @@ components:
- AuthorizedPrincipals
- DomainIdentifier
- EnvironmentIdentifier
- - ManageAccessRole
- Name
- SubscriptionTargetConfig
- Type
@@ -1734,7 +1896,6 @@ components:
- AuthorizedPrincipals
- DomainIdentifier
- EnvironmentIdentifier
- - ManageAccessRole
- Name
- SubscriptionTargetConfig
- Type
@@ -2105,6 +2266,14 @@ components:
type: string
description: The AWS region in which the Amazon DataZone environment is created.
pattern: ^[a-z]{2}-[a-z]{4,10}-\d$
+ EnvironmentAccountIdentifier:
+ type: string
+ description: The AWS account in which the Amazon DataZone environment is created.
+ pattern: ^\d{12}$
+ EnvironmentAccountRegion:
+ type: string
+ description: The AWS region in which the Amazon DataZone environment is created.
+ pattern: ^[a-z]{2}-[a-z]{4,10}-\d$
CreatedAt:
type: string
description: The timestamp of when the environment was created.
@@ -2131,11 +2300,11 @@ components:
EnvironmentProfileId:
type: string
description: The ID of the environment profile with which the Amazon DataZone environment was created.
- pattern: ^[a-zA-Z0-9_-]{1,36}$
+ pattern: ^[a-zA-Z0-9_-]{0,36}$
EnvironmentProfileIdentifier:
type: string
description: The ID of the environment profile with which the Amazon DataZone environment would be created.
- pattern: ^[a-zA-Z0-9_-]{1,36}$
+ pattern: ^[a-zA-Z0-9_-]{0,36}$
GlossaryTerms:
type: array
x-insertionOrder: false
@@ -2145,6 +2314,9 @@ components:
pattern: ^[a-zA-Z0-9_-]{1,36}$
maxItems: 20
minItems: 1
+ EnvironmentRoleArn:
+ type: string
+ description: Environment role arn for custom aws environment permissions
Id:
type: string
description: The ID of the Amazon DataZone environment.
@@ -2183,6 +2355,68 @@ components:
x-title: CreateEnvironmentRequest
type: object
required: []
+ CreateEnvironmentActionsRequest:
+ properties:
+ ClientToken:
+ type: string
+ RoleArn:
+ type: string
+ TypeName:
+ type: string
+ TypeVersionId:
+ type: string
+ DesiredState:
+ type: object
+ properties:
+ Description:
+ type: string
+ description: The description of the Amazon DataZone environment action.
+ maxLength: 2048
+ DomainId:
+ type: string
+ description: The identifier of the Amazon DataZone domain in which the environment is created.
+ pattern: ^dzd[-_][a-zA-Z0-9_-]{1,36}$
+ DomainIdentifier:
+ type: string
+ description: The identifier of the Amazon DataZone domain in which the environment would be created.
+ pattern: ^dzd[-_][a-zA-Z0-9_-]{1,36}$
+ EnvironmentId:
+ type: string
+ description: The identifier of the Amazon DataZone environment in which the action is taking place
+ pattern: '[a-zA-Z0-9_-]{1,36}$'
+ maxLength: 36
+ minLength: 1
+ EnvironmentIdentifier:
+ type: string
+ description: The identifier of the Amazon DataZone environment in which the action is taking place
+ pattern: '[a-zA-Z0-9_-]{1,36}$'
+ maxLength: 36
+ minLength: 1
+ Id:
+ type: string
+ description: The ID of the Amazon DataZone environment action.
+ pattern: ^[a-zA-Z0-9_-]{1,36}$
+ maxLength: 36
+ minLength: 1
+ Identifier:
+ type: string
+ description: The ID of the Amazon DataZone environment action.
+ pattern: ^[a-zA-Z0-9_-]{1,36}$
+ maxLength: 36
+ minLength: 1
+ Name:
+ type: string
+ description: The name of the environment action.
+ maxLength: 64
+ minLength: 1
+ pattern: ^[\w -]+$
+ Parameters:
+ description: The parameters of the environment action.
+ $ref: '#/components/schemas/AwsConsoleLinkParameters'
+ x-stackQL-stringOnly: true
+ x-title: CreateEnvironmentActionsRequest
+ type: object
+ required: []
CreateEnvironmentBlueprintConfigurationRequest:
properties:
ClientToken:
@@ -3124,6 +3358,8 @@ components:
data__Identifier,
JSON_EXTRACT(Properties, '$.AwsAccountId') as aws_account_id,
JSON_EXTRACT(Properties, '$.AwsAccountRegion') as aws_account_region,
+ JSON_EXTRACT(Properties, '$.EnvironmentAccountIdentifier') as environment_account_identifier,
+ JSON_EXTRACT(Properties, '$.EnvironmentAccountRegion') as environment_account_region,
JSON_EXTRACT(Properties, '$.CreatedAt') as created_at,
JSON_EXTRACT(Properties, '$.CreatedBy') as created_by,
JSON_EXTRACT(Properties, '$.Description') as description,
@@ -3133,6 +3369,7 @@ components:
JSON_EXTRACT(Properties, '$.EnvironmentProfileId') as environment_profile_id,
JSON_EXTRACT(Properties, '$.EnvironmentProfileIdentifier') as environment_profile_identifier,
JSON_EXTRACT(Properties, '$.GlossaryTerms') as glossary_terms,
+ JSON_EXTRACT(Properties, '$.EnvironmentRoleArn') as environment_role_arn,
JSON_EXTRACT(Properties, '$.Id') as id,
JSON_EXTRACT(Properties, '$.Name') as name,
JSON_EXTRACT(Properties, '$.ProjectId') as project_id,
@@ -3151,6 +3388,8 @@ components:
detail.region,
JSON_EXTRACT(detail.Properties, '$.AwsAccountId') as aws_account_id,
JSON_EXTRACT(detail.Properties, '$.AwsAccountRegion') as aws_account_region,
+ JSON_EXTRACT(detail.Properties, '$.EnvironmentAccountIdentifier') as environment_account_identifier,
+ JSON_EXTRACT(detail.Properties, '$.EnvironmentAccountRegion') as environment_account_region,
JSON_EXTRACT(detail.Properties, '$.CreatedAt') as created_at,
JSON_EXTRACT(detail.Properties, '$.CreatedBy') as created_by,
JSON_EXTRACT(detail.Properties, '$.Description') as description,
@@ -3160,6 +3399,7 @@ components:
JSON_EXTRACT(detail.Properties, '$.EnvironmentProfileId') as environment_profile_id,
JSON_EXTRACT(detail.Properties, '$.EnvironmentProfileIdentifier') as environment_profile_identifier,
JSON_EXTRACT(detail.Properties, '$.GlossaryTerms') as glossary_terms,
+ JSON_EXTRACT(detail.Properties, '$.EnvironmentRoleArn') as environment_role_arn,
JSON_EXTRACT(detail.Properties, '$.Id') as id,
JSON_EXTRACT(detail.Properties, '$.Name') as name,
JSON_EXTRACT(detail.Properties, '$.ProjectId') as project_id,
@@ -3183,6 +3423,8 @@ components:
data__Identifier,
json_extract_path_text(Properties, 'AwsAccountId') as aws_account_id,
json_extract_path_text(Properties, 'AwsAccountRegion') as aws_account_region,
+ json_extract_path_text(Properties, 'EnvironmentAccountIdentifier') as environment_account_identifier,
+ json_extract_path_text(Properties, 'EnvironmentAccountRegion') as environment_account_region,
json_extract_path_text(Properties, 'CreatedAt') as created_at,
json_extract_path_text(Properties, 'CreatedBy') as created_by,
json_extract_path_text(Properties, 'Description') as description,
@@ -3192,6 +3434,7 @@ components:
json_extract_path_text(Properties, 'EnvironmentProfileId') as environment_profile_id,
json_extract_path_text(Properties, 'EnvironmentProfileIdentifier') as environment_profile_identifier,
json_extract_path_text(Properties, 'GlossaryTerms') as glossary_terms,
+ json_extract_path_text(Properties, 'EnvironmentRoleArn') as environment_role_arn,
json_extract_path_text(Properties, 'Id') as id,
json_extract_path_text(Properties, 'Name') as name,
json_extract_path_text(Properties, 'ProjectId') as project_id,
@@ -3210,6 +3453,8 @@ components:
detail.region,
json_extract_path_text(detail.Properties, 'AwsAccountId') as aws_account_id,
json_extract_path_text(detail.Properties, 'AwsAccountRegion') as aws_account_region,
+ json_extract_path_text(detail.Properties, 'EnvironmentAccountIdentifier') as environment_account_identifier,
+ json_extract_path_text(detail.Properties, 'EnvironmentAccountRegion') as environment_account_region,
json_extract_path_text(detail.Properties, 'CreatedAt') as created_at,
json_extract_path_text(detail.Properties, 'CreatedBy') as created_by,
json_extract_path_text(detail.Properties, 'Description') as description,
@@ -3219,6 +3464,7 @@ components:
json_extract_path_text(detail.Properties, 'EnvironmentProfileId') as environment_profile_id,
json_extract_path_text(detail.Properties, 'EnvironmentProfileIdentifier') as environment_profile_identifier,
json_extract_path_text(detail.Properties, 'GlossaryTerms') as glossary_terms,
+ json_extract_path_text(detail.Properties, 'EnvironmentRoleArn') as environment_role_arn,
json_extract_path_text(detail.Properties, 'Id') as id,
json_extract_path_text(detail.Properties, 'Name') as name,
json_extract_path_text(detail.Properties, 'ProjectId') as project_id,
@@ -3268,6 +3514,180 @@ components:
json_extract_path_text(Properties, 'Id') as id
FROM aws.cloud_control.resources WHERE data__TypeName = 'AWS::DataZone::Environment'
AND region = 'us-east-1'
+ environment_actions:
+ name: environment_actions
+ id: aws.datazone.environment_actions
+ x-cfn-schema-name: EnvironmentActions
+ x-cfn-type-name: AWS::DataZone::EnvironmentActions
+ x-identifiers:
+ - DomainId
+ - EnvironmentId
+ - Id
+ x-type: cloud_control
+ methods:
+ create_resource:
+ config:
+ requestBodyTranslate:
+ algorithm: naive_DesiredState
+ operation:
+ $ref: '#/paths/~1?Action=CreateResource&Version=2021-09-30&__EnvironmentActions&__detailTransformed=true/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::DataZone::EnvironmentActions"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ update_resource:
+ operation:
+ $ref: '#/paths/~1?Action=UpdateResource&Version=2021-09-30/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::DataZone::EnvironmentActions"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ delete_resource:
+ operation:
+ $ref: '#/paths/~1?Action=DeleteResource&Version=2021-09-30/post'
+ request:
+ mediaType: application/x-amz-json-1.0
+ base: |-
+ {
+ "TypeName": "AWS::DataZone::EnvironmentActions"
+ }
+ response:
+ mediaType: application/json
+ openAPIDocKey: '200'
+ sqlVerbs:
+ insert:
+ - $ref: '#/components/x-stackQL-resources/environment_actions/methods/create_resource'
+ delete:
+ - $ref: '#/components/x-stackQL-resources/environment_actions/methods/delete_resource'
+ update:
+ - $ref: '#/components/x-stackQL-resources/environment_actions/methods/update_resource'
+ config:
+ views:
+ select:
+ predicate: sqlDialect == "sqlite3" && requiredParams == [ data__Identifier ]
+ ddl: |-
+ SELECT
+ region,
+ data__Identifier,
+ JSON_EXTRACT(Properties, '$.Description') as description,
+ JSON_EXTRACT(Properties, '$.DomainId') as domain_id,
+ JSON_EXTRACT(Properties, '$.DomainIdentifier') as domain_identifier,
+ JSON_EXTRACT(Properties, '$.EnvironmentId') as environment_id,
+ JSON_EXTRACT(Properties, '$.EnvironmentIdentifier') as environment_identifier,
+ JSON_EXTRACT(Properties, '$.Id') as id,
+ JSON_EXTRACT(Properties, '$.Identifier') as identifier,
+ JSON_EXTRACT(Properties, '$.Name') as name,
+ JSON_EXTRACT(Properties, '$.Parameters') as parameters
+ FROM aws.cloud_control.resource WHERE data__TypeName = 'AWS::DataZone::EnvironmentActions'
+ AND data__Identifier = '||