{ "$schema": "http://json-schema.org/draft-04/schema#", "definitions": { "AccessAssociation": { "additionalProperties": false, "properties": { "VpcEndpointId": { "__samPassThrough": { "markdownDescriptionOverride": "The endpoint ID of the VPC interface endpoint associated with the API Gateway VPC service. \n*Type*: String \n*Required*: Yes \n*CloudFormation compatibility*: This property is passed directly to the `[ AccessAssociationSource](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-domainnameaccessassociation.html#cfn-apigateway-domainnameaccessassociation-accessassociationsource)` property of an `AWS::ApiGateway::DomainNameAccessAssociation` resource.", "schemaPath": [ "definitions", "AWS::ApiGateway::DomainNameAccessAssociation", "properties", "Properties", "properties", "AccessAssociationSource" ] }, "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "title": "VpcEndpointId" } }, "required": [ "VpcEndpointId" ], "title": "AccessAssociation", "type": "object" }, "AlexaSkillEvent": { "additionalProperties": false, "properties": { "Properties": { "allOf": [ { "$ref": "#/definitions/AlexaSkillEventProperties" } ], "markdownDescription": "Object describing properties of this event mapping. The set of properties must conform to the defined Type. \n*Type*: [AlexaSkill](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-alexaskill.html) \\$1 [Api](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-api.html) \\$1 [CloudWatchEvent](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-cloudwatchevent.html) \\$1 [CloudWatchLogs](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-cloudwatchlogs.html) \\$1 [Cognito](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-cognito.html) \\$1 [DocumentDB](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-documentdb.html) \\$1 [DynamoDB](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-dynamodb.html) \\$1 [EventBridgeRule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-eventbridgerule.html) \\$1 [HttpApi](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-httpapi.html) \\$1 [IoTRule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-iotrule.html) \\$1 [Kinesis](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-kinesis.html) \\$1 [MQ](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-mq.html) \\$1 [MSK](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-msk.html) \\$1 [S3](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-s3.html) \\$1 [Schedule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-schedule.html) \\$1 [ScheduleV2](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-schedulev2.html) \\$1 [SelfManagedKafka](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-selfmanagedkafka.html) \\$1 [SNS](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-sns.html) \\$1 [SQS](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-sqs.html) \n*Required*: Yes \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "Properties" }, "Type": { "enum": [ "AlexaSkill" ], "markdownDescription": "The event type. \n*Valid values*: `AlexaSkill`, `Api`, `CloudWatchEvent`, `CloudWatchLogs`, `Cognito`, `DocumentDB`, `DynamoDB`, `EventBridgeRule`, `HttpApi`, `IoTRule`, `Kinesis`, `MQ`, `MSK`, `S3`, `Schedule`, `ScheduleV2`, `SelfManagedKafka`, `SNS`, `SQS` \n*Type*: String \n*Required*: Yes \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "Type", "type": "string" } }, "required": [ "Type" ], "title": "AlexaSkillEvent", "type": "object" }, "AlexaSkillEventProperties": { "additionalProperties": false, "properties": { "SkillId": { "markdownDescription": "The Alexa Skill ID for your Alexa Skill. For more information about Skill ID see [Configure the trigger for a Lambda function](https://developer.amazon.com/docs/custom-skills/host-a-custom-skill-as-an-aws-lambda-function.html#configuring-the-alexa-skills-kit-trigger) in the Alexa Skills Kit documentation. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "SkillId", "type": "string" } }, "title": "AlexaSkillEventProperties", "type": "object" }, "ApiAuth": { "additionalProperties": false, "properties": { "ApiKeyRequired": { "markdownDescription": "Requires an API key for this API, path, and method. \n*Type*: Boolean \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "ApiKeyRequired", "type": "boolean" }, "AuthorizationScopes": { "items": { "type": "string" }, "markdownDescription": "The authorization scopes to apply to this API, path, and method. \nThe scopes that you specify will override any scopes applied by the `DefaultAuthorizer` property if you have specified it. \n*Type*: List \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "AuthorizationScopes", "type": "array" }, "Authorizer": { "markdownDescription": "The `Authorizer` for a specific function. \nIf you have a global authorizer specified for your `AWS::Serverless::Api` resource, you can override the authorizer by setting `Authorizer` to `NONE`. For an example, see [Override a global authorizer for your Amazon API Gateway REST API](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/#sam-property-function-apifunctionauth--examples--override.html#sam-property-function-apifunctionauth--examples--override). \nIf you use the `DefinitionBody` property of an `AWS::Serverless::Api` resource to describe your API, you must use `OverrideApiAuth` with `Authorizer` to override your global authorizer. See `OverrideApiAuth` for more information.\n*Valid values*: `AWS_IAM`, `NONE`, or the logical ID for any authorizer defined in your AWS SAM template. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "Authorizer", "type": "string" }, "InvokeRole": { "anyOf": [ { "type": "object" }, { "type": "string" } ], "markdownDescription": "Specifies the `InvokeRole` to use for `AWS_IAM` authorization. \n*Type*: String \n*Required*: No \n*Default*: `CALLER_CREDENTIALS` \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent. \n*Additional notes*: `CALLER_CREDENTIALS` maps to `arn:aws:iam:::/`, which uses the caller credentials to invoke the endpoint.", "title": "InvokeRole" }, "OverrideApiAuth": { "markdownDescription": "Specify as `true` to override the global authorizer configuration of your `AWS::Serverless::Api` resource. This property is only required if you specify a global authorizer and use the `DefinitionBody` property of an `AWS::Serverless::Api` resource to describe your API. \nWhen you specify `OverrideApiAuth` as `true`, AWS SAM will override your global authorizer with any values provided for `ApiKeyRequired`, `Authorizer`, or `ResourcePolicy`. Therefore, at least one of these properties must also be specified when using `OverrideApiAuth`. For an example, see [ Override a global authorizer when DefinitionBody for AWS::Serverless::Api is specified](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/#sam-property-function-apifunctionauth--examples--override2.html#sam-property-function-apifunctionauth--examples--override2).\n*Type*: Boolean \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "OverrideApiAuth", "type": "boolean" }, "ResourcePolicy": { "allOf": [ { "$ref": "#/definitions/samtranslator__internal__schema_source__aws_serverless_function__ResourcePolicy" } ], "markdownDescription": "Configure Resource Policy for this path on an API. \n*Type*: [ResourcePolicyStatement](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-resourcepolicystatement.html) \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "ResourcePolicy" } }, "title": "ApiAuth", "type": "object" }, "ApiKey": { "additionalProperties": false, "properties": { "ApiKeyId": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The unique name of your API key. Specify to override the `LogicalId` value. \n*Type*: String \n*Required*: Yes \n*CloudFormation compatibility*: This property is passed directly to the [`ApiKeyId`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-apikey.html#cfn-appsync-apikey-apikeyid) property of an `AWS::AppSync::ApiKey` resource.", "title": "ApiKeyId" }, "Description": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "Description of your API key. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`Description`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-apikey.html#cfn-appsync-apikey-description) property of an `AWS::AppSync::ApiKey` resource.", "title": "Description" }, "ExpiresOn": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The time after which the API key expires. The date is represented as seconds since the epoch, rounded down to the nearest hour. \n*Type*: Double \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`Expires`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-apikey.html#cfn-appsync-apikey-expires) property of an `AWS::AppSync::ApiKey` resource.", "title": "ExpiresOn" } }, "title": "ApiKey", "type": "object" }, "Authorizer": { "additionalProperties": false, "properties": { "LambdaAuthorizer": { "$ref": "#/definitions/LambdaAuthorizerConfig" }, "OpenIDConnect": { "$ref": "#/definitions/OpenIDConnectConfig" }, "Type": { "enum": [ "AWS_IAM", "API_KEY", "AWS_LAMBDA", "OPENID_CONNECT", "AMAZON_COGNITO_USER_POOLS" ], "markdownDescription": "The default authorization type between applications and your AWS AppSync GraphQL API. \nFor a list and description of allowed values, see [Authorization and authentication](https://docs.aws.amazon.com/appsync/latest/devguide/security-authz.html) in the *AWS AppSync Developer Guide*. \nWhen you specify a Lambda authorizer (`AWS_LAMBDA`), AWS SAM creates an AWS Identity and Access Management (https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/IAM.html) policy to provision permissions between your GraphQL API and Lambda function. \n*Type*: String \n*Required*: Yes \n*CloudFormation compatibility*: This property is passed directly to the `[ AuthenticationType](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-additionalauthenticationprovider.html#cfn-appsync-graphqlapi-additionalauthenticationprovider-authenticationtype)` property of an `AWS::AppSync::GraphQLApi` `[ AdditionalAuthenticationProvider](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-additionalauthenticationprovider.html)` object.", "title": "Type", "type": "string" }, "UserPool": { "$ref": "#/definitions/UserPoolConfig" } }, "required": [ "Type" ], "title": "Authorizer", "type": "object" }, "Cache": { "additionalProperties": false, "properties": { "ApiCachingBehavior": { "$ref": "#/definitions/PassThroughProp" }, "AtRestEncryptionEnabled": { "$ref": "#/definitions/PassThroughProp" }, "TransitEncryptionEnabled": { "$ref": "#/definitions/PassThroughProp" }, "Ttl": { "$ref": "#/definitions/PassThroughProp" }, "Type": { "$ref": "#/definitions/PassThroughProp" } }, "required": [ "ApiCachingBehavior", "Ttl", "Type" ], "title": "Cache", "type": "object" }, "Caching": { "additionalProperties": false, "properties": { "CachingKeys": { "items": { "$ref": "#/definitions/PassThroughProp" }, "title": "Cachingkeys", "type": "array" }, "Ttl": { "$ref": "#/definitions/PassThroughProp" } }, "required": [ "Ttl" ], "title": "Caching", "type": "object" }, "CapacityProviderConfig": { "additionalProperties": false, "properties": { "Arn": { "anyOf": [ { "type": "object" }, { "type": "string" } ], "markdownDescription": "The ARN of the capacity provider to use for this function. \n*Type*: String \n*Required*: Yes \n*CloudFormation compatibility*: This property is unique to SAM.", "title": "Arn" }, "ExecutionEnvironmentMemoryGiBPerVCpu": { "anyOf": [ { "type": "object" }, { "type": "integer" }, { "type": "number" } ], "markdownDescription": "The ratio of memory (in GiB) to vCPU for each execution environment. \nThe memory ratio per CPU can't exceed function's total memory of 2048MB. The supported memory-to-CPU ratios are 2GB, 4GB, or 8GB per CPU.\n*Type*: Float \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`ExecutionEnvironmentMemoryGiBPerVCpu`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-lambdamanagedinstancescapacityproviderconfig) property of an `AWS::Lambda::Function` resource.", "title": "ExecutionEnvironmentMemoryGiBPerVCpu" }, "PerExecutionEnvironmentMaxConcurrency": { "anyOf": [ { "type": "object" }, { "type": "integer" } ], "markdownDescription": "The maximum number of concurrent executions per execution environment (https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sandbox.html). \n*Type*: Integer \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`PerExecutionEnvironmentMaxConcurrency`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-lambdamanagedinstancescapacityproviderconfig) property of an `AWS::Lambda::Function` resource.", "title": "PerExecutionEnvironmentMaxConcurrency" } }, "required": [ "Arn" ], "title": "CapacityProviderConfig", "type": "object" }, "CloudWatchLogsEvent": { "additionalProperties": false, "properties": { "Properties": { "allOf": [ { "$ref": "#/definitions/CloudWatchLogsEventProperties" } ], "markdownDescription": "Object describing properties of this event mapping. The set of properties must conform to the defined Type. \n*Type*: [AlexaSkill](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-alexaskill.html) \\$1 [Api](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-api.html) \\$1 [CloudWatchEvent](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-cloudwatchevent.html) \\$1 [CloudWatchLogs](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-cloudwatchlogs.html) \\$1 [Cognito](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-cognito.html) \\$1 [DocumentDB](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-documentdb.html) \\$1 [DynamoDB](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-dynamodb.html) \\$1 [EventBridgeRule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-eventbridgerule.html) \\$1 [HttpApi](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-httpapi.html) \\$1 [IoTRule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-iotrule.html) \\$1 [Kinesis](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-kinesis.html) \\$1 [MQ](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-mq.html) \\$1 [MSK](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-msk.html) \\$1 [S3](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-s3.html) \\$1 [Schedule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-schedule.html) \\$1 [ScheduleV2](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-schedulev2.html) \\$1 [SelfManagedKafka](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-selfmanagedkafka.html) \\$1 [SNS](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-sns.html) \\$1 [SQS](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-sqs.html) \n*Required*: Yes \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "Properties" }, "Type": { "enum": [ "CloudWatchLogs" ], "markdownDescription": "The event type. \n*Valid values*: `AlexaSkill`, `Api`, `CloudWatchEvent`, `CloudWatchLogs`, `Cognito`, `DocumentDB`, `DynamoDB`, `EventBridgeRule`, `HttpApi`, `IoTRule`, `Kinesis`, `MQ`, `MSK`, `S3`, `Schedule`, `ScheduleV2`, `SelfManagedKafka`, `SNS`, `SQS` \n*Type*: String \n*Required*: Yes \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "Type", "type": "string" } }, "required": [ "Type", "Properties" ], "title": "CloudWatchLogsEvent", "type": "object" }, "CloudWatchLogsEventProperties": { "additionalProperties": false, "properties": { "FilterPattern": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The filtering expressions that restrict what gets delivered to the destination AWS resource. For more information about the filter pattern syntax, see [Filter and Pattern Syntax](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/FilterAndPatternSyntax.html). \n*Type*: String \n*Required*: Yes \n*CloudFormation compatibility*: This property is passed directly to the [`FilterPattern`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-subscriptionfilter.html#cfn-cwl-subscriptionfilter-filterpattern) property of an `AWS::Logs::SubscriptionFilter` resource.", "title": "FilterPattern" }, "LogGroupName": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The log group to associate with the subscription filter. All log events that are uploaded to this log group are filtered and delivered to the specified AWS resource if the filter pattern matches the log events. \n*Type*: String \n*Required*: Yes \n*CloudFormation compatibility*: This property is passed directly to the [`LogGroupName`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-subscriptionfilter.html#cfn-cwl-subscriptionfilter-loggroupname) property of an `AWS::Logs::SubscriptionFilter` resource.", "title": "LogGroupName" } }, "required": [ "FilterPattern", "LogGroupName" ], "title": "CloudWatchLogsEventProperties", "type": "object" }, "CodeUri": { "additionalProperties": false, "properties": { "Bucket": { "anyOf": [ { "type": "object" }, { "type": "string" } ], "markdownDescription": "An Amazon S3 bucket in the same AWS Region as your function. \n*Type*: String \n*Required*: Yes \n*CloudFormation compatibility*: This property is passed directly to the [`S3Bucket`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-code.html#cfn-lambda-function-code-s3bucket) property of the `AWS::Lambda::Function` `Code` data type.", "title": "Bucket" }, "Key": { "anyOf": [ { "type": "object" }, { "type": "string" } ], "markdownDescription": "The Amazon S3 key of the deployment package. \n*Type*: String \n*Required*: Yes \n*CloudFormation compatibility*: This property is passed directly to the [`S3Key`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-code.html#cfn-lambda-function-code-s3key) property of the `AWS::Lambda::Function` `Code` data type.", "title": "Key" }, "Version": { "anyOf": [ { "type": "object" }, { "type": "string" } ], "markdownDescription": "For versioned objects, the version of the deployment package object to use. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`S3ObjectVersion`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-code.html#cfn-lambda-function-code-s3objectversion) property of the `AWS::Lambda::Function` `Code` data type.", "title": "Version" } }, "required": [ "Bucket", "Key" ], "title": "CodeUri", "type": "object" }, "CognitoAuthorizer": { "additionalProperties": false, "properties": { "AuthorizationScopes": { "items": { "type": "string" }, "markdownDescription": "List of authorization scopes for this authorizer. \n*Type*: List \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "AuthorizationScopes", "type": "array" }, "Identity": { "allOf": [ { "$ref": "#/definitions/CognitoAuthorizerIdentity" } ], "markdownDescription": "This property can be used to specify an `IdentitySource` in an incoming request for an authorizer. \n*Type*: [CognitoAuthorizationIdentity](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-api-cognitoauthorizationidentity.html) \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "Identity" }, "UserPoolArn": { "anyOf": [ { "type": "object" }, { "type": "string" } ], "markdownDescription": "Can refer to a user pool/specify a userpool arn to which you want to add this cognito authorizer \n*Type*: String \n*Required*: Yes \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "UserPoolArn" } }, "required": [ "UserPoolArn" ], "title": "CognitoAuthorizer", "type": "object" }, "CognitoAuthorizerIdentity": { "additionalProperties": false, "properties": { "Header": { "markdownDescription": "Specify the header name for Authorization in the OpenApi definition. \n*Type*: String \n*Required*: No \n*Default*: Authorization \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "Header", "type": "string" }, "ReauthorizeEvery": { "anyOf": [ { "type": "object" }, { "type": "integer" } ], "markdownDescription": "The time-to-live (https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/TTL.html) period, in seconds, that specifies how long API Gateway caches authorizer results. If you specify a value greater than 0, API Gateway caches the authorizer responses. By default, API Gateway sets this property to 300. The maximum value is 3600, or 1 hour. \n*Type*: Integer \n*Required*: No \n*Default*: 300 \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "ReauthorizeEvery" }, "ValidationExpression": { "markdownDescription": "Specify a validation expression for validating the incoming Identity \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "ValidationExpression", "type": "string" } }, "title": "CognitoAuthorizerIdentity", "type": "object" }, "CognitoEvent": { "additionalProperties": false, "properties": { "Properties": { "allOf": [ { "$ref": "#/definitions/CognitoEventProperties" } ], "markdownDescription": "Object describing properties of this event mapping. The set of properties must conform to the defined Type. \n*Type*: [AlexaSkill](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-alexaskill.html) \\$1 [Api](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-api.html) \\$1 [CloudWatchEvent](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-cloudwatchevent.html) \\$1 [CloudWatchLogs](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-cloudwatchlogs.html) \\$1 [Cognito](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-cognito.html) \\$1 [DocumentDB](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-documentdb.html) \\$1 [DynamoDB](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-dynamodb.html) \\$1 [EventBridgeRule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-eventbridgerule.html) \\$1 [HttpApi](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-httpapi.html) \\$1 [IoTRule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-iotrule.html) \\$1 [Kinesis](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-kinesis.html) \\$1 [MQ](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-mq.html) \\$1 [MSK](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-msk.html) \\$1 [S3](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-s3.html) \\$1 [Schedule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-schedule.html) \\$1 [ScheduleV2](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-schedulev2.html) \\$1 [SelfManagedKafka](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-selfmanagedkafka.html) \\$1 [SNS](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-sns.html) \\$1 [SQS](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-sqs.html) \n*Required*: Yes \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "Properties" }, "Type": { "enum": [ "Cognito" ], "markdownDescription": "The event type. \n*Valid values*: `AlexaSkill`, `Api`, `CloudWatchEvent`, `CloudWatchLogs`, `Cognito`, `DocumentDB`, `DynamoDB`, `EventBridgeRule`, `HttpApi`, `IoTRule`, `Kinesis`, `MQ`, `MSK`, `S3`, `Schedule`, `ScheduleV2`, `SelfManagedKafka`, `SNS`, `SQS` \n*Type*: String \n*Required*: Yes \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "Type", "type": "string" } }, "required": [ "Type", "Properties" ], "title": "CognitoEvent", "type": "object" }, "CognitoEventProperties": { "additionalProperties": false, "properties": { "Trigger": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The Lambda trigger configuration information for the new user pool. \n*Type*: List \n*Required*: Yes \n*CloudFormation compatibility*: This property is passed directly to the [`LambdaConfig`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-lambdaconfig.html) property of an `AWS::Cognito::UserPool` resource.", "title": "Trigger" }, "UserPool": { "anyOf": [ { "type": "object" }, { "type": "string" } ], "markdownDescription": "Reference to UserPool defined in the same template \n*Type*: String \n*Required*: Yes \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "UserPool" } }, "required": [ "Trigger", "UserPool" ], "title": "CognitoEventProperties", "type": "object" }, "ContentUri": { "additionalProperties": false, "properties": { "Bucket": { "__samPassThrough": { "markdownDescriptionOverride": "The Amazon S3 bucket of the layer archive. \n*Type*: String \n*Required*: Yes \n*CloudFormation compatibility*: This property is passed directly to the [`S3Bucket`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-layerversion-content.html#cfn-lambda-layerversion-content-s3bucket) property of the `AWS::Lambda::LayerVersion` `Content` data type.", "schemaPath": [ "definitions", "AWS::Lambda::LayerVersion.Content", "properties", "S3Bucket" ] }, "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "title": "Bucket" }, "Key": { "__samPassThrough": { "markdownDescriptionOverride": "The Amazon S3 key of the layer archive. \n*Type*: String \n*Required*: Yes \n*CloudFormation compatibility*: This property is passed directly to the [`S3Key`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-layerversion-content.html#cfn-lambda-layerversion-content-s3key) property of the `AWS::Lambda::LayerVersion` `Content` data type.", "schemaPath": [ "definitions", "AWS::Lambda::LayerVersion.Content", "properties", "S3Key" ] }, "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "title": "Key" }, "Version": { "__samPassThrough": { "markdownDescriptionOverride": "For versioned objects, the version of the layer archive object to use. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`S3ObjectVersion`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-layerversion-content.html#cfn-lambda-layerversion-content-s3objectversion) property of the `AWS::Lambda::LayerVersion` `Content` data type.", "schemaPath": [ "definitions", "AWS::Lambda::LayerVersion.Content", "properties", "S3ObjectVersion" ] }, "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "title": "Version" } }, "required": [ "Bucket", "Key" ], "title": "ContentUri", "type": "object" }, "Cors": { "additionalProperties": false, "properties": { "AllowCredentials": { "markdownDescription": "Boolean indicating whether request is allowed to contain credentials. \n*Type*: Boolean \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "AllowCredentials", "type": "boolean" }, "AllowHeaders": { "markdownDescription": "String of headers to allow. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "AllowHeaders", "type": "string" }, "AllowMethods": { "markdownDescription": "String containing the HTTP methods to allow. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "AllowMethods", "type": "string" }, "AllowOrigin": { "markdownDescription": "String of origin to allow. This can be a comma-separated list in string format. \n*Type*: String \n*Required*: Yes \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "AllowOrigin", "type": "string" }, "MaxAge": { "markdownDescription": "String containing the number of seconds to cache CORS Preflight request. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "MaxAge", "type": "string" } }, "required": [ "AllowOrigin" ], "title": "Cors", "type": "object" }, "DataSources": { "additionalProperties": false, "properties": { "DynamoDb": { "additionalProperties": { "$ref": "#/definitions/DynamoDBDataSource" }, "markdownDescription": "Configure a DynamoDB table as a data source for your GraphQL API resolver. \n*Type*: [DynamoDb](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-graphqlapi-datasource-dynamodb.html) \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn\u2019t have an CloudFormation equivalent.", "title": "DynamoDb", "type": "object" }, "Lambda": { "additionalProperties": { "$ref": "#/definitions/LambdaDataSource" }, "markdownDescription": "Configure a Lambda function as a data source for your GraphQL API resolver. \n*Type*: [Lambda](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-graphqlapi-datasource-lambda.html) \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn\u2019t have an CloudFormation equivalent.", "title": "Lambda", "type": "object" } }, "title": "DataSources", "type": "object" }, "DeadLetterQueue": { "additionalProperties": false, "properties": { "TargetArn": { "markdownDescription": "The Amazon Resource Name (https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/ARN.html) of an Amazon SQS queue or Amazon SNS topic. \n*Type*: String \n*Required*: Yes \n*CloudFormation compatibility*: This property is passed directly to the [`TargetArn`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-deadletterconfig.html#cfn-lambda-function-deadletterconfig-targetarn) property of the `AWS::Lambda::Function` `DeadLetterConfig` data type.", "title": "TargetArn", "type": "string" }, "Type": { "enum": [ "SNS", "SQS" ], "markdownDescription": "The type of dead letter queue. \n*Valid values*: `SNS`, `SQS` \n*Type*: String \n*Required*: Yes \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "Type", "type": "string" } }, "required": [ "TargetArn", "Type" ], "title": "DeadLetterQueue", "type": "object" }, "DeltaSync": { "additionalProperties": false, "properties": { "BaseTableTTL": { "$ref": "#/definitions/PassThroughProp" }, "DeltaSyncTableName": { "$ref": "#/definitions/PassThroughProp" }, "DeltaSyncTableTTL": { "$ref": "#/definitions/PassThroughProp" } }, "required": [ "BaseTableTTL", "DeltaSyncTableName", "DeltaSyncTableTTL" ], "title": "DeltaSync", "type": "object" }, "DeploymentPreference": { "additionalProperties": false, "properties": { "Alarms": { "anyOf": [ { "type": "object" }, { "items": { "type": "object" }, "type": "array" } ], "markdownDescription": "A list of CloudWatch alarms that you want to be triggered by any errors raised by the deployment. \nThis property accepts the `Fn::If` intrinsic function. See the Examples section at the bottom of this topic for an example template that uses `Fn::If`. \n*Type*: List \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "Alarms" }, "Enabled": { "anyOf": [ { "type": "object" }, { "type": "boolean" } ], "markdownDescription": "Whether this deployment preference is enabled. \n*Type*: Boolean \n*Required*: No \n*Default*: True \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "Enabled" }, "Hooks": { "allOf": [ { "$ref": "#/definitions/Hooks" } ], "markdownDescription": "Validation Lambda functions that are run before and after traffic shifting. \n*Type*: [Hooks](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-hooks.html) \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "Hooks" }, "PassthroughCondition": { "anyOf": [ { "type": "object" }, { "type": "boolean" } ], "markdownDescription": "If True, and if this deployment preference is enabled, the function's Condition will be passed through to the generated CodeDeploy resource. Generally, you should set this to True. Otherwise, the CodeDeploy resource would be created even if the function's Condition resolves to False. \n*Type*: Boolean \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "PassthroughCondition" }, "Role": { "anyOf": [ { "type": "object" }, { "type": "string" } ], "markdownDescription": "An IAM role ARN that CodeDeploy will use for traffic shifting. An IAM role will not be created if this is provided. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "Role" }, "TriggerConfigurations": { "__samPassThrough": { "markdownDescriptionOverride": "A list of trigger configurations you want to associate with the deployment group. Used to notify an SNS topic on lifecycle events. \n*Type*: List \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`TriggerConfigurations`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-deploymentgroup.html#cfn-codedeploy-deploymentgroup-triggerconfigurations) property of an `AWS::CodeDeploy::DeploymentGroup` resource.", "schemaPath": [ "definitions", "AWS::CodeDeploy::DeploymentGroup", "properties", "Properties", "properties", "TriggerConfigurations" ] }, "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "title": "TriggerConfigurations" }, "Type": { "anyOf": [ { "type": "object" }, { "type": "string" } ], "markdownDescription": "There are two categories of deployment types at the moment: Linear and Canary. For more information about available deployment types see [Deploying serverless applications gradually with AWS SAM](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/automating-updates-to-serverless-apps.html). \n*Type*: String \n*Required*: Yes \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "Type" } }, "title": "DeploymentPreference", "type": "object" }, "DocumentDBEvent": { "additionalProperties": false, "properties": { "Properties": { "allOf": [ { "$ref": "#/definitions/DocumentDBEventProperties" } ], "markdownDescription": "Object describing properties of this event mapping. The set of properties must conform to the defined Type. \n*Type*: [AlexaSkill](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-alexaskill.html) \\$1 [Api](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-api.html) \\$1 [CloudWatchEvent](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-cloudwatchevent.html) \\$1 [CloudWatchLogs](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-cloudwatchlogs.html) \\$1 [Cognito](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-cognito.html) \\$1 [DocumentDB](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-documentdb.html) \\$1 [DynamoDB](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-dynamodb.html) \\$1 [EventBridgeRule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-eventbridgerule.html) \\$1 [HttpApi](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-httpapi.html) \\$1 [IoTRule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-iotrule.html) \\$1 [Kinesis](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-kinesis.html) \\$1 [MQ](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-mq.html) \\$1 [MSK](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-msk.html) \\$1 [S3](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-s3.html) \\$1 [Schedule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-schedule.html) \\$1 [ScheduleV2](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-schedulev2.html) \\$1 [SelfManagedKafka](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-selfmanagedkafka.html) \\$1 [SNS](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-sns.html) \\$1 [SQS](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-sqs.html) \n*Required*: Yes \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "Properties" }, "Type": { "enum": [ "DocumentDB" ], "markdownDescription": "The event type. \n*Valid values*: `AlexaSkill`, `Api`, `CloudWatchEvent`, `CloudWatchLogs`, `Cognito`, `DocumentDB`, `DynamoDB`, `EventBridgeRule`, `HttpApi`, `IoTRule`, `Kinesis`, `MQ`, `MSK`, `S3`, `Schedule`, `ScheduleV2`, `SelfManagedKafka`, `SNS`, `SQS` \n*Type*: String \n*Required*: Yes \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "Type", "type": "string" } }, "required": [ "Type", "Properties" ], "title": "DocumentDBEvent", "type": "object" }, "DocumentDBEventProperties": { "additionalProperties": false, "properties": { "BatchSize": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The maximum number of items to retrieve in a single batch. \n*Type*: Integer \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the `[ BatchSize](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-batchsize)` property of an `AWS::Lambda::EventSourceMapping` resource.", "title": "BatchSize" }, "Cluster": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The Amazon Resource Name (https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/ARN.html) of the Amazon DocumentDB cluster. \n*Type*: String \n*Required*: Yes \n*CloudFormation compatibility*: This property is passed directly to the `[ EventSourceArn](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-eventsourcearn)` property of an `AWS::Lambda::EventSourceMapping` resource.", "title": "Cluster" }, "CollectionName": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The name of the collection to consume within the database. If you do not specify a collection, Lambda consumes all collections. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the `[ CollectionName](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-documentdbeventsourceconfig.html#cfn-lambda-eventsourcemapping-documentdbeventsourceconfig-collectionname)` property of an `AWS::Lambda::EventSourceMapping` `DocumentDBEventSourceConfig` data type.", "title": "CollectionName" }, "DatabaseName": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The name of the database to consume within the Amazon DocumentDB cluster. \n*Type*: String \n*Required*: Yes \n*CloudFormation compatibility*: This property is passed directly to the `[ DatabaseName](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-documentdbeventsourceconfig.html#cfn-lambda-eventsourcemapping-documentdbeventsourceconfig-databasename)` property of an `AWS::Lambda::EventSourceMapping` `DocumentDBEventSourceConfig`data type.", "title": "DatabaseName" }, "Enabled": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "If `true`, the event source mapping is active. To pause polling and invocation, set to `false`. \n*Type*: Boolean \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the `[ Enabled](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-enabled)` property of an `AWS::Lambda::EventSourceMapping` resource.", "title": "Enabled" }, "FilterCriteria": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "An object that defines the criteria that determines whether Lambda should process an event. For more information, see [ Lambda event filtering](https://docs.aws.amazon.com/lambda/latest/dg/invocation-eventfiltering.html) in the *AWS Lambda Developer Guide*. \n*Type*: [FilterCriteria](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-filtercriteria.html) \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the `[ FilterCriteria](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-filtercriteria.html)` property of an `AWS::Lambda::EventSourceMapping` resource.", "title": "FilterCriteria" }, "FullDocument": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "Determines what Amazon DocumentDB sends to your event stream during document update operations. If set to `UpdateLookup`, Amazon DocumentDB sends a delta describing the changes, along with a copy of the entire document. Otherwise, Amazon DocumentDB sends only a partial document that contains the changes. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the `[ FullDocument](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-documentdbeventsourceconfig.html#cfn-lambda-eventsourcemapping-documentdbeventsourceconfig-fulldocument)` property of an `AWS::Lambda::EventSourceMapping` `DocumentDBEventSourceConfig` data type.", "title": "FullDocument" }, "KmsKeyArn": { "__samPassThrough": { "markdownDescriptionOverride": "The ARN of an AWS Key Management Service (AWS KMS) key that Lambda uses to encrypt and decrypt your function's environment variables. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`KmsKeyArn`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-kmskeyarn) property of an `AWS::Lambda::Function` resource.", "schemaPath": [ "definitions", "AWS::Lambda::EventSourceMapping", "properties", "Properties", "properties", "KmsKeyArn" ] }, "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "title": "KmsKeyArn" }, "MaximumBatchingWindowInSeconds": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The maximum amount of time to gather records before invoking the function, in seconds. \n*Type*: Integer \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the `[ MaximumBatchingWindowInSeconds](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-maximumbatchingwindowinseconds)` property of an `AWS::Lambda::EventSourceMapping` resource.", "title": "MaximumBatchingWindowInSeconds" }, "SecretsManagerKmsKeyId": { "markdownDescription": "The AWS Key Management Service (AWS KMS) key ID of a customer managed key from AWS Secrets Manager. Required when you use a customer managed key from Secrets Manager with a Lambda execution role that doesn\u2019t include the `kms:Decrypt` permission. \nThe value of this property is a UUID. For example: `1abc23d4-567f-8ab9-cde0-1fab234c5d67`. \n*Type*: String \n*Required*: Conditional \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn\u2019t have an CloudFormation equivalent.", "title": "SecretsManagerKmsKeyId", "type": "string" }, "SourceAccessConfigurations": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "An array of the authentication protocol or virtual host. Specify this using the [ SourceAccessConfigurations](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-sourceaccessconfiguration.html) data type. \nFor the `DocumentDB` event source type, the only valid configuration type is `BASIC_AUTH`. \n+ `BASIC_AUTH` \u2013 The Secrets Manager secret that stores your broker credentials. For this type, the credential must be in the following format: `{\"username\": \"your-username\", \"password\": \"your-password\"}`. Only one object of type `BASIC_AUTH` is allowed.\n*Type*: List \n*Required*: Yes \n*CloudFormation compatibility*: This property is passed directly to the `[ SourceAccessConfigurations](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-sourceaccessconfigurations)` property of an `AWS::Lambda::EventSourceMapping` resource.", "title": "SourceAccessConfigurations" }, "StartingPosition": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The position in a stream from which to start reading. \n+ `AT_TIMESTAMP` \u2013 Specify a time from which to start reading records.\n+ `LATEST` \u2013 Read only new records.\n+ `TRIM_HORIZON` \u2013 Process all available records.\n*Type*: String \n*Required*: Yes \n*CloudFormation compatibility*: This property is passed directly to the `[ StartingPosition](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-startingposition)` property of an `AWS::Lambda::EventSourceMapping` resource.", "title": "StartingPosition" }, "StartingPositionTimestamp": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The time from which to start reading, in Unix time seconds. Define `StartingPositionTimestamp` when `StartingPosition` is specified as `AT_TIMESTAMP`. \n*Type*: Double \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the `[ StartingPositionTimestamp](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-startingpositiontimestamp)` property of an `AWS::Lambda::EventSourceMapping` resource.", "title": "StartingPositionTimestamp" } }, "required": [ "Cluster", "DatabaseName", "SourceAccessConfigurations" ], "title": "DocumentDBEventProperties", "type": "object" }, "DomainName": { "additionalProperties": false, "properties": { "CertificateArn": { "$ref": "#/definitions/PassThroughProp" }, "Description": { "$ref": "#/definitions/PassThroughProp" }, "DomainName": { "$ref": "#/definitions/PassThroughProp" } }, "required": [ "CertificateArn", "DomainName" ], "title": "DomainName", "type": "object" }, "DynamoDBDataSource": { "additionalProperties": false, "properties": { "DeltaSync": { "allOf": [ { "$ref": "#/definitions/DeltaSync" } ], "markdownDescription": "Describes a Delta Sync configuration. \n*Type*: [DeltaSyncConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-deltasyncconfig.html) \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`DeltaSyncConfig`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-dynamodbconfig.html#cfn-appsync-datasource-dynamodbconfig-deltasyncconfig) property of an `AWS::AppSync::DataSource DynamoDBConfig` object.", "title": "DeltaSync" }, "Description": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The description of your data source. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`Description`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-datasource.html#cfn-appsync-datasource-description) property of an `AWS::AppSync::DataSource` resource.", "title": "Description" }, "Name": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The name of your data source. Specify this property to override the `LogicalId` value. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`Name`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-datasource.html#cfn-appsync-datasource-name) property of an `AWS::AppSync::DataSource` resource.", "title": "Name" }, "Permissions": { "items": { "enum": [ "Read", "Write" ], "type": "string" }, "markdownDescription": "Provision permissions to your data source using [AWS SAM connectors](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/managing-permissions-connectors.html). You can provide any of the following values in a list: \n+ `Read` \u2013 Allow your resolver to read your data source.\n+ `Write` \u2013 Allow your resolver to write to your data source.\nAWS SAM uses an `AWS::Serverless::Connector` resource which is transformed at deployment to provision your permissions. To learn about generated resources, see [CloudFormation resources generated when you specify AWS::Serverless::Connector](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-specification-generated-resources-connector.html). \nYou can specify `Permissions` or `ServiceRoleArn`, but not both. If neither are specified, AWS SAM will generate default values of `Read` and `Write`. To revoke access to your data source, remove the DynamoDB object from your AWS SAM template.\n*Type*: List \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn\u2019t have an CloudFormation equivalent. It is similar to the `Permissions` property of an `AWS::Serverless::Connector` resource.", "title": "Permissions", "type": "array" }, "Region": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The AWS Region of your DynamoDB table. If you don\u2019t specify it, AWS SAM uses `[AWS::Region](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/pseudo-parameter-reference.html#cfn-pseudo-param-region)`. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`AwsRegion`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-dynamodbconfig.html#cfn-appsync-datasource-dynamodbconfig-awsregion) property of an `AWS::AppSync::DataSource DynamoDBConfig` object.", "title": "Region" }, "ServiceRoleArn": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The AWS Identity and Access Management (https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/IAM.html) service role ARN for the data source. The system assumes this role when accessing the data source. \nYou can specify `Permissions` or `ServiceRoleArn`, but not both. \n*Type*: String \n*Required*: No. If not specified, AWS SAM applies the default value for `Permissions`. \n*CloudFormation compatibility*: This property is passed directly to the [`ServiceRoleArn`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-datasource.html#cfn-appsync-datasource-servicerolearn) property of an `AWS::AppSync::DataSource` resource.", "title": "ServiceRoleArn" }, "TableArn": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The ARN for the DynamoDB table. \n*Type*: String \n*Required*: Conditional. If you don\u2019t specify `ServiceRoleArn`, `TableArn` is required. \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn\u2019t have an CloudFormation equivalent.", "title": "TableArn" }, "TableName": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The table name. \n*Type*: String \n*Required*: Yes \n*CloudFormation compatibility*: This property is passed directly to the [`TableName`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-dynamodbconfig.html#cfn-appsync-datasource-dynamodbconfig-tablename) property of an `AWS::AppSync::DataSource DynamoDBConfig` object.", "title": "TableName" }, "UseCallerCredentials": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "Set to `true` to use IAM with this data source. \n*Type*: Boolean \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`UseCallerCredentials`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-dynamodbconfig.html#cfn-appsync-datasource-dynamodbconfig-usecallercredentials) property of an `AWS::AppSync::DataSource DynamoDBConfig` object.", "title": "UseCallerCredentials" }, "Versioned": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "Set to `true` to use [Conflict Detection, Conflict Resolution, and Sync](https://docs.aws.amazon.com/appsync/latest/devguide/conflict-detection-and-sync.html) with this data source. \n*Type*: Boolean \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`Versioned`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-dynamodbconfig.html#cfn-appsync-datasource-dynamodbconfig-versioned) property of an `AWS::AppSync::DataSource DynamoDBConfig` object.", "title": "Versioned" } }, "required": [ "TableName" ], "title": "DynamoDBDataSource", "type": "object" }, "DynamoDBEvent": { "additionalProperties": false, "properties": { "Properties": { "allOf": [ { "$ref": "#/definitions/DynamoDBEventProperties" } ], "markdownDescription": "Object describing properties of this event mapping. The set of properties must conform to the defined Type. \n*Type*: [AlexaSkill](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-alexaskill.html) \\$1 [Api](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-api.html) \\$1 [CloudWatchEvent](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-cloudwatchevent.html) \\$1 [CloudWatchLogs](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-cloudwatchlogs.html) \\$1 [Cognito](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-cognito.html) \\$1 [DocumentDB](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-documentdb.html) \\$1 [DynamoDB](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-dynamodb.html) \\$1 [EventBridgeRule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-eventbridgerule.html) \\$1 [HttpApi](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-httpapi.html) \\$1 [IoTRule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-iotrule.html) \\$1 [Kinesis](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-kinesis.html) \\$1 [MQ](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-mq.html) \\$1 [MSK](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-msk.html) \\$1 [S3](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-s3.html) \\$1 [Schedule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-schedule.html) \\$1 [ScheduleV2](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-schedulev2.html) \\$1 [SelfManagedKafka](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-selfmanagedkafka.html) \\$1 [SNS](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-sns.html) \\$1 [SQS](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-sqs.html) \n*Required*: Yes \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "Properties" }, "Type": { "enum": [ "DynamoDB" ], "markdownDescription": "The event type. \n*Valid values*: `AlexaSkill`, `Api`, `CloudWatchEvent`, `CloudWatchLogs`, `Cognito`, `DocumentDB`, `DynamoDB`, `EventBridgeRule`, `HttpApi`, `IoTRule`, `Kinesis`, `MQ`, `MSK`, `S3`, `Schedule`, `ScheduleV2`, `SelfManagedKafka`, `SNS`, `SQS` \n*Type*: String \n*Required*: Yes \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "Type", "type": "string" } }, "required": [ "Type", "Properties" ], "title": "DynamoDBEvent", "type": "object" }, "DynamoDBEventProperties": { "additionalProperties": false, "properties": { "BatchSize": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The maximum number of items to retrieve in a single batch. \n*Type*: Integer \n*Required*: No \n*Default*: 100 \n*CloudFormation compatibility*: This property is passed directly to the [`BatchSize`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-batchsize) property of an `AWS::Lambda::EventSourceMapping` resource. \n*Minimum*: `1` \n*Maximum*: `1000`", "title": "BatchSize" }, "BisectBatchOnFunctionError": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "If the function returns an error, split the batch in two and retry. \n*Type*: Boolean \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`BisectBatchOnFunctionError`](http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-bisectbatchonfunctionerror) property of an `AWS::Lambda::EventSourceMapping` resource.", "title": "BisectBatchOnFunctionError" }, "DestinationConfig": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "An Amazon Simple Queue Service (Amazon SQS) queue or Amazon Simple Notification Service (Amazon SNS) topic destination for discarded records. \n*Type*: [DestinationConfig](http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-destinationconfig) \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`DestinationConfig`](http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-destinationconfig) property of an `AWS::Lambda::EventSourceMapping` resource.", "title": "DestinationConfig" }, "Enabled": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "Disables the event source mapping to pause polling and invocation. \n*Type*: Boolean \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`Enabled`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-enabled) property of an `AWS::Lambda::EventSourceMapping` resource.", "title": "Enabled" }, "FilterCriteria": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "A object that defines the criteria to determine whether Lambda should process an event. For more information, see [AWS Lambda event filtering](https://docs.aws.amazon.com/lambda/latest/dg/invocation-eventfiltering.html) in the *AWS Lambda Developer Guide*. \n*Type*: [FilterCriteria](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-filtercriteria.html) \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`FilterCriteria`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-filtercriteria.html) property of an `AWS::Lambda::EventSourceMapping` resource.", "title": "FilterCriteria" }, "FunctionResponseTypes": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "A list of the response types currently applied to the event source mapping. For more information, see [Reporting batch item failures](https://docs.aws.amazon.com/lambda/latest/dg/with-ddb.html#services-ddb-batchfailurereporting) in the *AWS Lambda Developer Guide*. \n*Valid values*: `ReportBatchItemFailures` \n*Type*: List \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`FunctionResponseTypes`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-functionresponsetypes) property of an `AWS::Lambda::EventSourceMapping` resource.", "title": "FunctionResponseTypes" }, "KmsKeyArn": { "__samPassThrough": { "markdownDescriptionOverride": "The ARN of an AWS Key Management Service (AWS KMS) key that Lambda uses to encrypt and decrypt your function's environment variables. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`KmsKeyArn`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-kmskeyarn) property of an `AWS::Lambda::Function` resource.", "schemaPath": [ "definitions", "AWS::Lambda::EventSourceMapping", "properties", "Properties", "properties", "KmsKeyArn" ] }, "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "title": "KmsKeyArn" }, "MaximumBatchingWindowInSeconds": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The maximum amount of time to gather records before invoking the function, in seconds. \n*Type*: Integer \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`MaximumBatchingWindowInSeconds`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-maximumbatchingwindowinseconds) property of an `AWS::Lambda::EventSourceMapping` resource.", "title": "MaximumBatchingWindowInSeconds" }, "MaximumRecordAgeInSeconds": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The maximum age of a record that Lambda sends to a function for processing. \n*Type*: Integer \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`MaximumRecordAgeInSeconds`](http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-maximumrecordageinseconds) property of an `AWS::Lambda::EventSourceMapping` resource.", "title": "MaximumRecordAgeInSeconds" }, "MaximumRetryAttempts": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The maximum number of times to retry when the function returns an error. \n*Type*: Integer \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`MaximumRetryAttempts`](http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-maximumretryattempts) property of an `AWS::Lambda::EventSourceMapping` resource.", "title": "MaximumRetryAttempts" }, "MetricsConfig": { "$ref": "#/definitions/PassThroughProp" }, "ParallelizationFactor": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The number of batches to process from each shard concurrently. \n*Type*: Integer \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`ParallelizationFactor`](http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-parallelizationfactor) property of an `AWS::Lambda::EventSourceMapping` resource.", "title": "ParallelizationFactor" }, "StartingPosition": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The position in a stream from which to start reading. \n+ `AT_TIMESTAMP` \u2013 Specify a time from which to start reading records.\n+ `LATEST` \u2013 Read only new records.\n+ `TRIM_HORIZON` \u2013 Process all available records.\n*Valid values*: `AT_TIMESTAMP` \\$1 `LATEST` \\$1 `TRIM_HORIZON` \n*Type*: String \n*Required*: Yes \n*CloudFormation compatibility*: This property is passed directly to the [`StartingPosition`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-startingposition) property of an `AWS::Lambda::EventSourceMapping` resource.", "title": "StartingPosition" }, "StartingPositionTimestamp": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The time from which to start reading, in Unix time seconds. Define `StartingPositionTimestamp` when `StartingPosition` is specified as `AT_TIMESTAMP`. \n*Type*: Double \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`StartingPositionTimestamp`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-startingpositiontimestamp) property of an `AWS::Lambda::EventSourceMapping` resource.", "title": "StartingPositionTimestamp" }, "Stream": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The Amazon Resource Name (https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/ARN.html) of the DynamoDB stream. \n*Type*: String \n*Required*: Yes \n*CloudFormation compatibility*: This property is passed directly to the [`EventSourceArn`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-eventsourcearn) property of an `AWS::Lambda::EventSourceMapping` resource.", "title": "Stream" }, "TumblingWindowInSeconds": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The duration, in seconds, of a processing window. The valid range is 1 to 900 (15 minutes). \nFor more information, see [Tumbling windows](https://docs.aws.amazon.com/lambda/latest/dg/with-ddb.html#streams-tumbling) in the *AWS Lambda Developer Guide*. \n*Type*: Integer \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`TumblingWindowInSeconds`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-tumblingwindowinseconds) property of an `AWS::Lambda::EventSourceMapping` resource.", "title": "TumblingWindowInSeconds" } }, "required": [ "Stream" ], "title": "DynamoDBEventProperties", "type": "object" }, "EmbeddedConnector": { "additionalProperties": false, "properties": { "Condition": { "$ref": "#/definitions/PassThroughProp" }, "DeletionPolicy": { "$ref": "#/definitions/PassThroughProp" }, "DependsOn": { "$ref": "#/definitions/PassThroughProp" }, "IgnoreGlobals": { "anyOf": [ { "type": "string" }, { "items": { "type": "string" }, "type": "array" } ], "title": "Ignoreglobals" }, "Metadata": { "$ref": "#/definitions/PassThroughProp" }, "Properties": { "$ref": "#/definitions/EmbeddedConnectorProperties" }, "UpdateReplacePolicy": { "$ref": "#/definitions/PassThroughProp" } }, "required": [ "Properties" ], "title": "EmbeddedConnector", "type": "object" }, "EmbeddedConnectorProperties": { "additionalProperties": false, "properties": { "Destination": { "anyOf": [ { "$ref": "#/definitions/ResourceReference" }, { "items": { "$ref": "#/definitions/ResourceReference" }, "type": "array" } ], "markdownDescription": "The destination resource. \n*Type*: [ ResourceReference](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-connector-resourcereference.html) \\$1 List of [ResourceReference](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-connector-resourcereference.html) \n*Required*: Yes \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "Destination" }, "Permissions": { "items": { "enum": [ "Read", "Write" ], "type": "string" }, "markdownDescription": "The permission type that the source resource is allowed to perform on the destination resource. \n`Read` includes AWS Identity and Access Management (https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/IAM.html) actions that allow reading data from the resource. \n`Write` inclues https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/IAM.html actions that allow initiating and writing data to a resource. \n*Valid values*: `Read` or `Write` \n*Type*: List \n*Required*: Yes \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "Permissions", "type": "array" }, "SourceReference": { "allOf": [ { "$ref": "#/definitions/SourceReferenceProperties" } ], "markdownDescription": "The source resource. \nUse with the embedded connectors syntax when defining additional properties for the source resource.\n*Type*: [SourceReference](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-connector-sourcereference.html) \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "SourceReference" } }, "required": [ "Destination", "Permissions" ], "title": "EmbeddedConnectorProperties", "type": "object" }, "EndpointConfiguration": { "additionalProperties": false, "properties": { "IpAddressType": { "$ref": "#/definitions/PassThroughProp" }, "Type": { "__samPassThrough": { "markdownDescriptionOverride": "The endpoint type of a REST API. \n*Valid values*: `EDGE` or `REGIONAL` or `PRIVATE` \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`Types`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-restapi-endpointconfiguration.html#cfn-apigateway-restapi-endpointconfiguration-types) property of the `AWS::ApiGateway::RestApi` `EndpointConfiguration` data type.", "schemaPath": [ "definitions", "AWS::ApiGateway::RestApi.EndpointConfiguration", "properties", "Types" ] }, "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "title": "Type" }, "VPCEndpointIds": { "__samPassThrough": { "markdownDescriptionOverride": "A list of VPC endpoint IDs of a REST API against which to create Route53 aliases. \n*Type*: List \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`VpcEndpointIds`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-restapi-endpointconfiguration.html#cfn-apigateway-restapi-endpointconfiguration-vpcendpointids) property of the `AWS::ApiGateway::RestApi` `EndpointConfiguration` data type.", "schemaPath": [ "definitions", "AWS::ApiGateway::RestApi.EndpointConfiguration", "properties", "VpcEndpointIds" ] }, "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "title": "VPCEndpointIds" } }, "title": "EndpointConfiguration", "type": "object" }, "EventInvokeConfig": { "additionalProperties": false, "properties": { "DestinationConfig": { "allOf": [ { "$ref": "#/definitions/EventInvokeDestinationConfig" } ], "markdownDescription": "A configuration object that specifies the destination of an event after Lambda processes it. \n*Type*: [EventInvokeDestinationConfiguration](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-eventinvokedestinationconfiguration.html) \n*Required*: No \n*CloudFormation compatibility*: This property is similar to the [`DestinationConfig`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventinvokeconfig-destinationconfig.html) property of an `AWS::Lambda::EventInvokeConfig` resource. SAM requires an extra parameter, \"Type\", that does not exist in CloudFormation.", "title": "DestinationConfig" }, "MaximumEventAgeInSeconds": { "markdownDescription": "The maximum age of a request that Lambda sends to a function for processing. \n*Type*: Integer \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`MaximumEventAgeInSeconds`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventinvokeconfig.html#cfn-lambda-eventinvokeconfig-maximumeventageinseconds) property of an `AWS::Lambda::EventInvokeConfig` resource.", "title": "MaximumEventAgeInSeconds", "type": "integer" }, "MaximumRetryAttempts": { "markdownDescription": "The maximum number of times to retry before the function returns an error. \n*Type*: Integer \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`MaximumRetryAttempts`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventinvokeconfig.html#cfn-lambda-eventinvokeconfig-maximumretryattempts) property of an `AWS::Lambda::EventInvokeConfig` resource.", "title": "MaximumRetryAttempts", "type": "integer" } }, "title": "EventInvokeConfig", "type": "object" }, "EventInvokeDestinationConfig": { "additionalProperties": false, "properties": { "OnFailure": { "allOf": [ { "$ref": "#/definitions/EventInvokeOnFailure" } ], "markdownDescription": "A destination for events that failed processing. \n*Type*: [OnFailure](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-onfailure.html) \n*Required*: No \n*CloudFormation compatibility*: This property is similar to the [`OnFailure`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventinvokeconfig-onfailure.html) property of an `AWS::Lambda::EventInvokeConfig` resource. Requires `Type`, an additional SAM-only property.", "title": "OnFailure" }, "OnSuccess": { "allOf": [ { "$ref": "#/definitions/EventInvokeOnSuccess" } ], "markdownDescription": "A destination for events that were processed successfully. \n*Type*: [OnSuccess](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-onsuccess.html) \n*Required*: No \n*CloudFormation compatibility*: This property is similar to the [`OnSuccess`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventinvokeconfig-onsuccess) property of an `AWS::Lambda::EventInvokeConfig` resource. Requires `Type`, an additional SAM-only property.", "title": "OnSuccess" } }, "title": "EventInvokeDestinationConfig", "type": "object" }, "EventInvokeOnFailure": { "additionalProperties": false, "properties": { "Destination": { "anyOf": [ { "type": "object" }, { "type": "string" } ], "markdownDescription": "The Amazon Resource Name (https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/ARN.html) of the destination resource. \n*Type*: String \n*Required*: Conditional \n*CloudFormation compatibility*: This property is similar to the [`OnFailure`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventinvokeconfig-onfailure.html) property of an `AWS::Lambda::EventInvokeConfig` resource. SAM will add any necessary permissions to the auto-generated IAM Role associated with this function to access the resource referenced in this property. \n*Additional notes*: If the type is Lambda/EventBridge, Destination is required.", "title": "Destination" }, "Type": { "enum": [ "SQS", "SNS", "Lambda", "EventBridge", "S3Bucket" ], "markdownDescription": "Type of the resource referenced in the destination. Supported types are `SQS`, `SNS`, `S3`, `Lambda`, and `EventBridge`. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent. \n*Additional notes*: If the type is SQS/SNS and the `Destination` property is left blank, then the SQS/SNS resource is auto generated by SAM. To reference the resource, use `.DestinationQueue` for SQS or `.DestinationTopic` for SNS. If the type is Lambda/EventBridge, `Destination` is required.", "title": "Type", "type": "string" } }, "title": "EventInvokeOnFailure", "type": "object" }, "EventInvokeOnSuccess": { "additionalProperties": false, "properties": { "Destination": { "anyOf": [ { "type": "object" }, { "type": "string" } ], "markdownDescription": "The Amazon Resource Name (https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/ARN.html) of the destination resource. \n*Type*: String \n*Required*: Conditional \n*CloudFormation compatibility*: This property is similar to the [`OnSuccess`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventinvokeconfig-onsuccess) property of an `AWS::Lambda::EventInvokeConfig` resource. SAM will add any necessary permissions to the auto-generated IAM Role associated with this function to access the resource referenced in this property. \n*Additional notes*: If the type is Lambda/EventBridge, Destination is required.", "title": "Destination" }, "Type": { "enum": [ "SQS", "SNS", "Lambda", "EventBridge", "S3Bucket" ], "markdownDescription": "Type of the resource referenced in the destination. Supported types are `SQS`, `SNS`, `S3`, `Lambda`, and `EventBridge`. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent. \n*Additional notes*: If the type is SQS/SNS and the `Destination` property is left blank, then the SQS/SNS resource is auto generated by SAM. To reference the resource, use `.DestinationQueue` for SQS or `.DestinationTopic` for SNS. If the type is Lambda/EventBridge, `Destination` is required.", "title": "Type", "type": "string" } }, "title": "EventInvokeOnSuccess", "type": "object" }, "EventsScheduleProperties": { "additionalProperties": false, "properties": { "DeadLetterConfig": { "allOf": [ { "$ref": "#/definitions/samtranslator__internal__schema_source__aws_serverless_function__DeadLetterConfig" } ], "markdownDescription": "Configure the Amazon Simple Queue Service (Amazon SQS) queue where EventBridge sends events after a failed target invocation. Invocation can fail, for example, when sending an event to a Lambda function that doesn't exist, or when EventBridge has insufficient permissions to invoke the Lambda function. For more information, see [Event retry policy and using dead-letter queues](https://docs.aws.amazon.com/eventbridge/latest/userguide/rule-dlq.html) in the *Amazon EventBridge User Guide*. \nThe [AWS::Serverless::Function](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-resource-function.html) resource type has a similar data type, `DeadLetterQueue`, which handles failures that occur after successful invocation of the target Lambda function. Examples of these types of failures include Lambda throttling, or errors returned by the Lambda target function. For more information about the function `DeadLetterQueue` property, see [Dead-letter queues](https://docs.aws.amazon.com/lambda/latest/dg/invocation-async.html#invocation-dlq) in the *AWS Lambda Developer Guide*.\n*Type*: [DeadLetterConfig](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-scheduledeadletterconfig.html) \n*Required*: No \n*CloudFormation compatibility*: This property is similar to the [`DeadLetterConfig`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-target.html#cfn-events-rule-target-deadletterconfig) property of the `AWS::Events::Rule` `Target` data type. The AWS SAM version of this property includes additional subproperties, in case you want AWS SAM to create the dead-letter queue for you.", "title": "DeadLetterConfig" }, "Description": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "A description of the rule. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`Description`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-rule.html#cfn-events-rule-description) property of an `AWS::Events::Rule` resource.", "title": "Description" }, "Enabled": { "markdownDescription": "Indicates whether the rule is enabled. \nTo disable the rule, set this property to `false`. \nSpecify either the `Enabled` or `State` property, but not both.\n*Type*: Boolean \n*Required*: No \n*CloudFormation compatibility*: This property is similar to the [`State`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-rule.html#cfn-events-rule-state) property of an `AWS::Events::Rule` resource. If this property is set to `true` then AWS SAM passes `ENABLED`, otherwise it passes `DISABLED`.", "title": "Enabled", "type": "boolean" }, "Input": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "Valid JSON text passed to the target. If you use this property, nothing from the event text itself is passed to the target. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`Input`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-target.html#cfn-events-rule-target-input) property of an `AWS::Events::Rule Target` resource.", "title": "Input" }, "Name": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The name of the rule. If you don't specify a name, CloudFormation generates a unique physical ID and uses that ID for the rule name. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`Name`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-rule.html#cfn-events-rule-name) property of an `AWS::Events::Rule` resource.", "title": "Name" }, "RetryPolicy": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "A `RetryPolicy` object that includes information about the retry policy settings. For more information, see [Event retry policy and using dead-letter queues](https://docs.aws.amazon.com/eventbridge/latest/userguide/rule-dlq.html) in the *Amazon EventBridge User Guide*. \n*Type*: [RetryPolicy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-target.html#cfn-events-rule-target-retrypolicy) \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`RetryPolicy`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-target.html#cfn-events-rule-target-retrypolicy) property of the `AWS::Events::Rule` `Target` data type.", "title": "RetryPolicy" }, "Schedule": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The scheduling expression that determines when and how often the rule runs. For more information, see [Schedule Expressions for Rules](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-create-rule-schedule.html). \n*Type*: String \n*Required*: Yes \n*CloudFormation compatibility*: This property is passed directly to the [`ScheduleExpression`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-rule.html#cfn-events-rule-scheduleexpression) property of an `AWS::Events::Rule` resource.", "title": "Schedule" }, "State": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The state of the rule. \n*Accepted values:* `DISABLED | ENABLED` \nSpecify either the `Enabled` or `State` property, but not both.\n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`State`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-rule.html#cfn-events-rule-state) property of an `AWS::Events::Rule` resource.", "title": "State" } }, "title": "EventsScheduleProperties", "type": "object" }, "Function": { "additionalProperties": false, "properties": { "CodeUri": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The function code\u2019s Amazon Simple Storage Service (Amazon S3) URI or path to local folder. \nIf you specify a path to a local folder, CloudFormation requires that the file is first uploaded to Amazon S3 before deployment. You can use the AWS SAM\u00a0CLI to facilitate this process. For more information, see [How AWS SAM uploads local files at deployment](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/deploy-upload-local-files.html). \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`CodeS3Location`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-functionconfiguration.html#cfn-appsync-functionconfiguration-codes3location) property of an `AWS::AppSync::FunctionConfiguration` resource.", "title": "CodeUri" }, "DataSource": { "anyOf": [ { "type": "object" }, { "type": "string" } ], "markdownDescription": "The name of the data source that this function will attach to. \n+ To reference a data source within the `AWS::Serverless::GraphQLApi` resource, specify its logical ID.\n+ To reference a data source outside of the `AWS::Serverless::GraphQLApi` resource, provide its `Name` attribute using the `Fn::GetAtt` intrinsic function. For example, `!GetAtt MyLambdaDataSource.Name`.\n+ To reference a data source from a different stack, use `[Fn::ImportValue](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-importvalue.html)`.\nIf a variation of `[NONE | None | none]` is specified, AWS SAM will generate a `None` value for the `AWS::AppSync::DataSource` [`Type`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-datasource.html#cfn-appsync-datasource-type) object. \n*Type*: String \n*Required*: Yes \n*CloudFormation compatibility*: This property is passed directly to the [`DataSourceName`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-functionconfiguration.html#cfn-appsync-functionconfiguration-datasourcename) property of an `AWS::AppSync::FunctionConfiguration` resource.", "title": "DataSource" }, "Description": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The description of your function. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`Description`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-functionconfiguration.html#cfn-appsync-functionconfiguration-description) property of an `AWS::AppSync::FunctionConfiguration` resource.", "title": "Description" }, "Id": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The Function ID for a function located outside of the `AWS::Serverless::GraphQLApi` resource. \n+ To reference a function within the same AWS SAM template, use the `Fn::GetAtt` intrinsic function. For example `Id: !GetAtt createPostItemFunc.FunctionId`.\n+ To reference a function from a different stack, use `[Fn::ImportValue](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-importvalue.html)`.\nWhen using `Id`, all other properties are not allowed. AWS SAM will automatically pass the Function ID of your referenced function. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn\u2019t have an CloudFormation equivalent.", "title": "Id" }, "InlineCode": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The function code that contains the request and response functions. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`Code`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-functionconfiguration.html#cfn-appsync-functionconfiguration-code) property of an `AWS::AppSync::FunctionConfiguration` resource.", "title": "InlineCode" }, "MaxBatchSize": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The maximum number of resolver request inputs that will be sent to a single AWS Lambda function in a `BatchInvoke` operation. \n*Type*: Integer \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [MaxBatchSize](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-functionconfiguration.html#cfn-appsync-functionconfiguration-maxbatchsize) property of an `AWS::AppSync::FunctionConfiguration` resource.", "title": "MaxBatchSize" }, "Name": { "markdownDescription": "The name of the function. Specify to override the `LogicalId` value. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`Name`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-functionconfiguration.html#cfn-appsync-functionconfiguration-name) property of an `AWS::AppSync::FunctionConfiguration` resource.", "title": "Name", "type": "string" }, "Runtime": { "allOf": [ { "$ref": "#/definitions/Runtime" } ], "markdownDescription": "Describes a runtime used by an AWS AppSync pipeline resolver or AWS AppSync function. Specifies the name and version of the runtime to use. \n*Type*: [Runtime](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-graphqlapi-function-runtime.html) \n*Required*: Yes \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent. It is similar to the [`Runtime`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-functionconfiguration.html#cfn-appsync-functionconfiguration-runtime) property of an `AWS::AppSync::FunctionConfiguration` resource.", "title": "Runtime" }, "Sync": { "allOf": [ { "$ref": "#/definitions/Sync" } ], "markdownDescription": "Describes a Sync configuration for a function. \nSpecifies which Conflict Detection strategy and Resolution strategy to use when the function is invoked. \n*Type*: [SyncConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-functionconfiguration-syncconfig.html) \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`SyncConfig`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-functionconfiguration.html#cfn-appsync-functionconfiguration-syncconfig) property of an `AWS::AppSync::FunctionConfiguration` resource.", "title": "Sync" } }, "title": "Function", "type": "object" }, "FunctionUrlConfig": { "additionalProperties": false, "properties": { "AuthType": { "anyOf": [ { "type": "object" }, { "type": "string" } ], "markdownDescription": "The type of authorization for your function URL. To use AWS Identity and Access Management (https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/IAM.html) to authorize requests, set to `AWS_https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/IAM.html`. For open access, set to `NONE`. \n*Type*: String \n*Required*: Yes \n*CloudFormation compatibility*: This property is passed directly to the [`AuthType`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-url.html#cfn-lambda-url-authtype) property of an `AWS::Lambda::Url` resource.", "title": "AuthType" }, "Cors": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The cross-origin resource sharing (https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/CORS.html) settings for your function URL. \n*Type*: [Cors](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-url-cors.html) \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`Cors`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-url-cors.html) property of an `AWS::Lambda::Url` resource.", "title": "Cors" }, "InvokeMode": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The mode that your function URL will be invoked. To have your function return the response after invocation completes, set to `BUFFERED`. To have your function stream the response, set to `RESPONSE_STREAM`. The default value is `BUFFERED`. \n*Valid values*: `BUFFERED` or `RESPONSE_STREAM` \n*Type*: String \n*Required*: No \n*AWS CloudFormation compatibility*: This property is passed directly to the [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-url.html#cfn-lambda-url-invokemode](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-url.html#cfn-lambda-url-invokemode) property of an `AWS::Lambda::Url` resource.", "title": "InvokeMode" } }, "required": [ "AuthType" ], "title": "FunctionUrlConfig", "type": "object" }, "Hooks": { "additionalProperties": false, "properties": { "PostTraffic": { "anyOf": [ { "type": "object" }, { "type": "string" } ], "markdownDescription": "Lambda function that is run after traffic shifting. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "PostTraffic" }, "PreTraffic": { "anyOf": [ { "type": "object" }, { "type": "string" } ], "markdownDescription": "Lambda function that is run before traffic shifting. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "PreTraffic" } }, "title": "Hooks", "type": "object" }, "HttpApiAuth": { "additionalProperties": false, "properties": { "AuthorizationScopes": { "items": { "type": "string" }, "markdownDescription": "The authorization scopes to apply to this API, path, and method. \nScopes listed here will override any scopes applied by the `DefaultAuthorizer` if one exists. \n*Type*: List \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "AuthorizationScopes", "type": "array" }, "Authorizer": { "markdownDescription": "The `Authorizer` for a specific Function. To use IAM authorization, specify `AWS_IAM` and specify `true` for `EnableIamAuthorizer` in the `Globals` section of your template. \nIf you have specified a Global Authorizer on the API and want to make a specific Function public, override by setting `Authorizer` to `NONE`. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "Authorizer", "type": "string" } }, "title": "HttpApiAuth", "type": "object" }, "HttpApiEvent": { "additionalProperties": false, "properties": { "Properties": { "allOf": [ { "$ref": "#/definitions/HttpApiEventProperties" } ], "markdownDescription": "Object describing properties of this event mapping. The set of properties must conform to the defined Type. \n*Type*: [AlexaSkill](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-alexaskill.html) \\$1 [Api](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-api.html) \\$1 [CloudWatchEvent](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-cloudwatchevent.html) \\$1 [CloudWatchLogs](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-cloudwatchlogs.html) \\$1 [Cognito](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-cognito.html) \\$1 [DocumentDB](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-documentdb.html) \\$1 [DynamoDB](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-dynamodb.html) \\$1 [EventBridgeRule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-eventbridgerule.html) \\$1 [HttpApi](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-httpapi.html) \\$1 [IoTRule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-iotrule.html) \\$1 [Kinesis](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-kinesis.html) \\$1 [MQ](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-mq.html) \\$1 [MSK](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-msk.html) \\$1 [S3](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-s3.html) \\$1 [Schedule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-schedule.html) \\$1 [ScheduleV2](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-schedulev2.html) \\$1 [SelfManagedKafka](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-selfmanagedkafka.html) \\$1 [SNS](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-sns.html) \\$1 [SQS](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-sqs.html) \n*Required*: Yes \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "Properties" }, "Type": { "enum": [ "HttpApi" ], "markdownDescription": "The event type. \n*Valid values*: `AlexaSkill`, `Api`, `CloudWatchEvent`, `CloudWatchLogs`, `Cognito`, `DocumentDB`, `DynamoDB`, `EventBridgeRule`, `HttpApi`, `IoTRule`, `Kinesis`, `MQ`, `MSK`, `S3`, `Schedule`, `ScheduleV2`, `SelfManagedKafka`, `SNS`, `SQS` \n*Type*: String \n*Required*: Yes \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "Type", "type": "string" } }, "required": [ "Type" ], "title": "HttpApiEvent", "type": "object" }, "HttpApiEventProperties": { "additionalProperties": false, "properties": { "ApiId": { "anyOf": [ { "type": "object" }, { "type": "string" } ], "markdownDescription": "Identifier of an [AWS::Serverless::HttpApi](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-resource-httpapi.html) resource defined in this template. \nIf not defined, a default [AWS::Serverless::HttpApi](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-resource-httpapi.html) resource is created called `ServerlessHttpApi` using a generated OpenApi document containing a union of all paths and methods defined by Api events defined in this template that do not specify an `ApiId`. \nThis cannot reference an [AWS::Serverless::HttpApi](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-resource-httpapi.html) resource defined in another template. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "ApiId" }, "Auth": { "allOf": [ { "$ref": "#/definitions/HttpApiAuth" } ], "markdownDescription": "Auth configuration for this specific Api\\$1Path\\$1Method. \nUseful for overriding the API's `DefaultAuthorizer` or setting auth config on an individual path when no `DefaultAuthorizer` is specified. \n*Type*: [HttpApiFunctionAuth](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-httpapifunctionauth.html) \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "Auth" }, "Method": { "markdownDescription": "HTTP method for which this function is invoked. \nIf no `Path` and `Method` are specified, SAM will create a default API path that routes any request that doesn't map to a different endpoint to this Lambda function. Only one of these default paths can exist per API. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "Method", "type": "string" }, "Path": { "markdownDescription": "Uri path for which this function is invoked. Must start with `/`. \nIf no `Path` and `Method` are specified, SAM will create a default API path that routes any request that doesn't map to a different endpoint to this Lambda function. Only one of these default paths can exist per API. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "Path", "type": "string" }, "PayloadFormatVersion": { "anyOf": [ { "type": "object" }, { "type": "string" } ], "markdownDescription": "Specifies the format of the payload sent to an integration. \nNOTE: PayloadFormatVersion requires SAM to modify your OpenAPI definition, so it only works with inline OpenApi defined in the `DefinitionBody` property. \n*Type*: String \n*Required*: No \n*Default*: 2.0 \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "PayloadFormatVersion" }, "RouteSettings": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The per-route route settings for this HTTP API. For more information about route settings, see [AWS::ApiGatewayV2::Stage RouteSettings](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-stage-routesettings.html) in the *API Gateway Developer Guide*. \nNote: If RouteSettings are specified in both the HttpApi resource and event source, AWS SAM merges them with the event source properties taking precedence. \n*Type*: [RouteSettings](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-stage.html#cfn-apigatewayv2-stage-routesettings) \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`RouteSettings`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-stage.html#cfn-apigatewayv2-stage-routesettings) property of an `AWS::ApiGatewayV2::Stage` resource.", "title": "RouteSettings" }, "TimeoutInMillis": { "anyOf": [ { "type": "object" }, { "type": "integer" } ], "markdownDescription": "Custom timeout between 50 and 29,000 milliseconds. \nNOTE: TimeoutInMillis requires SAM to modify your OpenAPI definition, so it only works with inline OpenApi defined in the `DefinitionBody` property. \n*Type*: Integer \n*Required*: No \n*Default*: 5000 \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "TimeoutInMillis" } }, "title": "HttpApiEventProperties", "type": "object" }, "InstanceRequirements": { "additionalProperties": false, "properties": { "AllowedTypes": { "anyOf": [ { "type": "object" }, { "items": { "anyOf": [ { "type": "string" }, { "type": "object" } ] }, "type": "array" } ], "markdownDescription": "A list of allowed EC2 instance types for the capacity provider instance. \n*Type*: List \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`AllowedInstanceTypes`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-capacityprovider-instancerequirements.html#cfn-lambda-capacityprovider-instancerequirements-allowedinstancetypes) property of [`InstanceRequirements`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-capacityprovider.html#cfn-lambda-capacityprovider-instancerequirements) of an `AWS::Lambda::CapacityProvider` resource.", "title": "AllowedTypes" }, "Architectures": { "anyOf": [ { "type": "object" }, { "items": { "anyOf": [ { "type": "string" }, { "type": "object" } ] }, "type": "array" } ], "markdownDescription": "The instruction set architectures for the capacity provider instances. \n*Valid values*: `x86_64` or `arm64` \n*Type*: List \n*Required*: No \n*Default*: `x86_64` \n*CloudFormation compatibility*: This property is passed directly to the [`Architectures`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-capacityprovider-instancerequirements.html#cfn-lambda-capacityprovider-instancerequirements-architectures) property of [`InstanceRequirements`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-capacityprovider.html#cfn-lambda-capacityprovider-instancerequirements) of an `AWS::Lambda::CapacityProvider` resource.", "title": "Architectures" }, "ExcludedTypes": { "anyOf": [ { "type": "object" }, { "items": { "anyOf": [ { "type": "string" }, { "type": "object" } ] }, "type": "array" } ], "markdownDescription": "A list of EC2 instance types to exclude from the capacity provider. \n*Type*: List \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`ExcludedInstanceTypes`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-capacityprovider-instancerequirements.html#cfn-lambda-capacityprovider-instancerequirements-excludedinstancetypes) property of [`InstanceRequirements`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-capacityprovider.html#cfn-lambda-capacityprovider-instancerequirements) of an `AWS::Lambda::CapacityProvider` resource.", "title": "ExcludedTypes" } }, "title": "InstanceRequirements", "type": "object" }, "IoTRuleEvent": { "additionalProperties": false, "properties": { "Properties": { "allOf": [ { "$ref": "#/definitions/IoTRuleEventProperties" } ], "markdownDescription": "Object describing properties of this event mapping. The set of properties must conform to the defined Type. \n*Type*: [AlexaSkill](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-alexaskill.html) \\$1 [Api](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-api.html) \\$1 [CloudWatchEvent](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-cloudwatchevent.html) \\$1 [CloudWatchLogs](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-cloudwatchlogs.html) \\$1 [Cognito](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-cognito.html) \\$1 [DocumentDB](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-documentdb.html) \\$1 [DynamoDB](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-dynamodb.html) \\$1 [EventBridgeRule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-eventbridgerule.html) \\$1 [HttpApi](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-httpapi.html) \\$1 [IoTRule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-iotrule.html) \\$1 [Kinesis](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-kinesis.html) \\$1 [MQ](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-mq.html) \\$1 [MSK](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-msk.html) \\$1 [S3](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-s3.html) \\$1 [Schedule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-schedule.html) \\$1 [ScheduleV2](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-schedulev2.html) \\$1 [SelfManagedKafka](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-selfmanagedkafka.html) \\$1 [SNS](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-sns.html) \\$1 [SQS](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-sqs.html) \n*Required*: Yes \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "Properties" }, "Type": { "enum": [ "IoTRule" ], "markdownDescription": "The event type. \n*Valid values*: `AlexaSkill`, `Api`, `CloudWatchEvent`, `CloudWatchLogs`, `Cognito`, `DocumentDB`, `DynamoDB`, `EventBridgeRule`, `HttpApi`, `IoTRule`, `Kinesis`, `MQ`, `MSK`, `S3`, `Schedule`, `ScheduleV2`, `SelfManagedKafka`, `SNS`, `SQS` \n*Type*: String \n*Required*: Yes \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "Type", "type": "string" } }, "required": [ "Type", "Properties" ], "title": "IoTRuleEvent", "type": "object" }, "IoTRuleEventProperties": { "additionalProperties": false, "properties": { "AwsIotSqlVersion": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The version of the SQL rules engine to use when evaluating the rule. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`AwsIotSqlVersion`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-topicrulepayload.html#cfn-iot-topicrule-topicrulepayload-awsiotsqlversion) property of an `AWS::IoT::TopicRule TopicRulePayload` resource.", "title": "AwsIotSqlVersion" }, "Sql": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The SQL statement used to query the topic. For more information, see [AWS IoT SQL Reference](https://docs.aws.amazon.com/iot/latest/developerguide/iot-rules.html#aws-iot-sql-reference) in the *AWS IoT Developer Guide*. \n*Type*: String \n*Required*: Yes \n*CloudFormation compatibility*: This property is passed directly to the [`Sql`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-topicrulepayload.html#cfn-iot-topicrule-topicrulepayload-sql) property of an `AWS::IoT::TopicRule TopicRulePayload` resource.", "title": "Sql" } }, "required": [ "Sql" ], "title": "IoTRuleEventProperties", "type": "object" }, "KinesisEvent": { "additionalProperties": false, "properties": { "Properties": { "allOf": [ { "$ref": "#/definitions/KinesisEventProperties" } ], "markdownDescription": "Object describing properties of this event mapping. The set of properties must conform to the defined Type. \n*Type*: [AlexaSkill](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-alexaskill.html) \\$1 [Api](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-api.html) \\$1 [CloudWatchEvent](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-cloudwatchevent.html) \\$1 [CloudWatchLogs](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-cloudwatchlogs.html) \\$1 [Cognito](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-cognito.html) \\$1 [DocumentDB](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-documentdb.html) \\$1 [DynamoDB](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-dynamodb.html) \\$1 [EventBridgeRule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-eventbridgerule.html) \\$1 [HttpApi](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-httpapi.html) \\$1 [IoTRule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-iotrule.html) \\$1 [Kinesis](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-kinesis.html) \\$1 [MQ](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-mq.html) \\$1 [MSK](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-msk.html) \\$1 [S3](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-s3.html) \\$1 [Schedule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-schedule.html) \\$1 [ScheduleV2](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-schedulev2.html) \\$1 [SelfManagedKafka](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-selfmanagedkafka.html) \\$1 [SNS](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-sns.html) \\$1 [SQS](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-sqs.html) \n*Required*: Yes \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "Properties" }, "Type": { "enum": [ "Kinesis" ], "markdownDescription": "The event type. \n*Valid values*: `AlexaSkill`, `Api`, `CloudWatchEvent`, `CloudWatchLogs`, `Cognito`, `DocumentDB`, `DynamoDB`, `EventBridgeRule`, `HttpApi`, `IoTRule`, `Kinesis`, `MQ`, `MSK`, `S3`, `Schedule`, `ScheduleV2`, `SelfManagedKafka`, `SNS`, `SQS` \n*Type*: String \n*Required*: Yes \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "Type", "type": "string" } }, "required": [ "Type", "Properties" ], "title": "KinesisEvent", "type": "object" }, "KinesisEventProperties": { "additionalProperties": false, "properties": { "BatchSize": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The maximum number of items to retrieve in a single batch. \n*Type*: Integer \n*Required*: No \n*Default*: 100 \n*CloudFormation compatibility*: This property is passed directly to the [`BatchSize`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-batchsize) property of an `AWS::Lambda::EventSourceMapping` resource. \n*Minimum*: `1` \n*Maximum*: `10000`", "title": "BatchSize" }, "BisectBatchOnFunctionError": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "If the function returns an error, split the batch in two and retry. \n*Type*: Boolean \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`BisectBatchOnFunctionError`](http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-bisectbatchonfunctionerror) property of an `AWS::Lambda::EventSourceMapping` resource.", "title": "BisectBatchOnFunctionError" }, "DestinationConfig": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "An Amazon Simple Queue Service (Amazon SQS) queue or Amazon Simple Notification Service (Amazon SNS) topic destination for discarded records. \n*Type*: [DestinationConfig](http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-destinationconfig) \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`DestinationConfig`](http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-destinationconfig) property of an `AWS::Lambda::EventSourceMapping` resource.", "title": "DestinationConfig" }, "Enabled": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "Disables the event source mapping to pause polling and invocation. \n*Type*: Boolean \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`Enabled`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-enabled) property of an `AWS::Lambda::EventSourceMapping` resource.", "title": "Enabled" }, "FilterCriteria": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "A object that defines the criteria to determine whether Lambda should process an event. For more information, see [AWS Lambda event filtering](https://docs.aws.amazon.com/lambda/latest/dg/invocation-eventfiltering.html) in the *AWS Lambda Developer Guide*. \n*Type*: [FilterCriteria](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-filtercriteria.html) \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`FilterCriteria`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-filtercriteria.html) property of an `AWS::Lambda::EventSourceMapping` resource.", "title": "FilterCriteria" }, "FunctionResponseTypes": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "A list of the response types currently applied to the event source mapping. For more information, see [Reporting batch item failures](https://docs.aws.amazon.com/lambda/latest/dg/with-kinesis.html#services-kinesis-batchfailurereporting) in the *AWS Lambda Developer Guide*. \n*Valid values*: `ReportBatchItemFailures` \n*Type*: List \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`FunctionResponseTypes`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-functionresponsetypes) property of an `AWS::Lambda::EventSourceMapping` resource.", "title": "FunctionResponseTypes" }, "KmsKeyArn": { "__samPassThrough": { "markdownDescriptionOverride": "The ARN of an AWS Key Management Service (AWS KMS) key that Lambda uses to encrypt and decrypt your function's environment variables. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`KmsKeyArn`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-kmskeyarn) property of an `AWS::Lambda::Function` resource.", "schemaPath": [ "definitions", "AWS::Lambda::EventSourceMapping", "properties", "Properties", "properties", "KmsKeyArn" ] }, "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "title": "KmsKeyArn" }, "MaximumBatchingWindowInSeconds": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The maximum amount of time to gather records before invoking the function, in seconds. \n*Type*: Integer \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`MaximumBatchingWindowInSeconds`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-maximumbatchingwindowinseconds) property of an `AWS::Lambda::EventSourceMapping` resource.", "title": "MaximumBatchingWindowInSeconds" }, "MaximumRecordAgeInSeconds": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The maximum age of a record that Lambda sends to a function for processing. \n*Type*: Integer \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`MaximumRecordAgeInSeconds`](http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-maximumrecordageinseconds) property of an `AWS::Lambda::EventSourceMapping` resource.", "title": "MaximumRecordAgeInSeconds" }, "MaximumRetryAttempts": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The maximum number of times to retry when the function returns an error. \n*Type*: Integer \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`MaximumRetryAttempts`](http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-maximumretryattempts) property of an `AWS::Lambda::EventSourceMapping` resource.", "title": "MaximumRetryAttempts" }, "MetricsConfig": { "$ref": "#/definitions/PassThroughProp" }, "ParallelizationFactor": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The number of batches to process from each shard concurrently. \n*Type*: Integer \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`ParallelizationFactor`](http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-parallelizationfactor) property of an `AWS::Lambda::EventSourceMapping` resource.", "title": "ParallelizationFactor" }, "StartingPosition": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The position in a stream from which to start reading. \n+ `AT_TIMESTAMP` \u2013 Specify a time from which to start reading records.\n+ `LATEST` \u2013 Read only new records.\n+ `TRIM_HORIZON` \u2013 Process all available records.\n*Valid values*: `AT_TIMESTAMP` \\$1 `LATEST` \\$1 `TRIM_HORIZON` \n*Type*: String \n*Required*: Yes \n*CloudFormation compatibility*: This property is passed directly to the [`StartingPosition`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-startingposition) property of an `AWS::Lambda::EventSourceMapping` resource.", "title": "StartingPosition" }, "StartingPositionTimestamp": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The time from which to start reading, in Unix time seconds. Define `StartingPositionTimestamp` when `StartingPosition` is specified as `AT_TIMESTAMP`. \n*Type*: Double \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`StartingPositionTimestamp`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-startingpositiontimestamp) property of an `AWS::Lambda::EventSourceMapping` resource.", "title": "StartingPositionTimestamp" }, "Stream": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The Amazon Resource Name (https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/ARN.html) of the data stream or a stream consumer. \n*Type*: String \n*Required*: Yes \n*CloudFormation compatibility*: This property is passed directly to the [`EventSourceArn`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-eventsourcearn) property of an `AWS::Lambda::EventSourceMapping` resource.", "title": "Stream" }, "TumblingWindowInSeconds": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The duration, in seconds, of a processing window. The valid range is 1 to 900 (15 minutes). \nFor more information, see [Tumbling windows](https://docs.aws.amazon.com/lambda/latest/dg/with-kinesis.html#streams-tumbling) in the *AWS Lambda Developer Guide*. \n*Type*: Integer \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`TumblingWindowInSeconds`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-tumblingwindowinseconds) property of an `AWS::Lambda::EventSourceMapping` resource.", "title": "TumblingWindowInSeconds" } }, "required": [ "Stream" ], "title": "KinesisEventProperties", "type": "object" }, "LambdaAuthorizer": { "additionalProperties": false, "properties": { "AuthorizerPayloadFormatVersion": { "anyOf": [ { "enum": [ "1.0", "2.0" ], "type": "string" }, { "type": "number" } ], "markdownDescription": "Specifies the format of the payload sent to an HTTP API Lambda authorizer. Required for HTTP API Lambda authorizers. \nThis is passed through to the `authorizerPayloadFormatVersion` section of an `x-amazon-apigateway-authorizer` in the `securitySchemes` section of an OpenAPI definition. \n*Valid values*: `1.0` or `2.0` \n*Type*: String \n*Required*: Yes \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "AuthorizerPayloadFormatVersion" }, "EnableFunctionDefaultPermissions": { "markdownDescription": "By default, the HTTP API resource is not granted permission to invoke the Lambda authorizer. Specify this property as `true` to automatically create permissions between your HTTP API resource and your Lambda authorizer. \n*Type*: Boolean \n*Required*: No \n*Default value*: `false` \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "EnableFunctionDefaultPermissions", "type": "boolean" }, "EnableSimpleResponses": { "markdownDescription": "Specifies whether a Lambda authorizer returns a response in a simple format. By default, a Lambda authorizer must return an AWS Identity and Access Management (https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/IAM.html) policy. If enabled, the Lambda authorizer can return a boolean value instead of an https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/IAM.html policy. \nThis is passed through to the `enableSimpleResponses` section of an `x-amazon-apigateway-authorizer` in the `securitySchemes` section of an OpenAPI definition. \n*Type*: Boolean \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "EnableSimpleResponses", "type": "boolean" }, "FunctionArn": { "anyOf": [ { "type": "object" }, { "type": "string" } ], "markdownDescription": "The Amazon Resource Name (https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/ARN.html) of the Lambda function that provides authorization for the API. \nThis is passed through to the `authorizerUri` section of an `x-amazon-apigateway-authorizer` in the `securitySchemes` section of an OpenAPI definition. \n*Type*: String \n*Required*: Yes \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "FunctionArn" }, "FunctionInvokeRole": { "anyOf": [ { "type": "object" }, { "type": "string" } ], "markdownDescription": "The ARN of the IAM role that has the credentials required for API Gateway to invoke the authorizer function. Specify this parameter if your function's resource-based policy doesn't grant API Gateway `lambda:InvokeFunction` permission. \nThis is passed through to the `authorizerCredentials` section of an `x-amazon-apigateway-authorizer` in the `securitySchemes` section of an OpenAPI definition. \nFor more information, see [Create a Lambda authorizer](https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-lambda-authorizer.html#http-api-lambda-authorizer.example-create) in the *API Gateway Developer Guide*. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "FunctionInvokeRole" }, "Identity": { "allOf": [ { "$ref": "#/definitions/LambdaAuthorizerIdentity" } ], "markdownDescription": "Specifies an `IdentitySource` in an incoming request for an authorizer. \nThis is passed through to the `identitySource` section of an `x-amazon-apigateway-authorizer` in the `securitySchemes` section of an OpenAPI definition. \n*Type*: [LambdaAuthorizationIdentity](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-httpapi-lambdaauthorizationidentity.html) \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "Identity" } }, "required": [ "AuthorizerPayloadFormatVersion", "FunctionArn" ], "title": "LambdaAuthorizer", "type": "object" }, "LambdaAuthorizerConfig": { "additionalProperties": false, "properties": { "AuthorizerResultTtlInSeconds": { "$ref": "#/definitions/PassThroughProp" }, "AuthorizerUri": { "$ref": "#/definitions/PassThroughProp" }, "IdentityValidationExpression": { "$ref": "#/definitions/PassThroughProp" } }, "required": [ "AuthorizerUri" ], "title": "LambdaAuthorizerConfig", "type": "object" }, "LambdaAuthorizerIdentity": { "additionalProperties": false, "properties": { "Context": { "items": { "type": "string" }, "markdownDescription": "Converts the given context strings to a list of mapping expressions in the format `$context.contextString`. \n*Type*: List \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "Context", "type": "array" }, "Headers": { "items": { "type": "string" }, "markdownDescription": "Converts the headers to a list of mapping expressions in the format `$request.header.name`. \n*Type*: List \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "Headers", "type": "array" }, "QueryStrings": { "items": { "type": "string" }, "markdownDescription": "Converts the given query strings to a list of mapping expressions in the format `$request.querystring.queryString`. \n*Type*: List \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "QueryStrings", "type": "array" }, "ReauthorizeEvery": { "markdownDescription": "The time-to-live (https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/TTL.html) period, in seconds, that specifies how long API Gateway caches authorizer results. If you specify a value greater than 0, API Gateway caches the authorizer responses. The maximum value is 3600, or 1 hour. \n*Type*: Integer \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "ReauthorizeEvery", "type": "integer" }, "StageVariables": { "items": { "type": "string" }, "markdownDescription": "Converts the given stage variables to a list of mapping expressions in the format `$stageVariables.stageVariable`. \n*Type*: List \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "StageVariables", "type": "array" } }, "title": "LambdaAuthorizerIdentity", "type": "object" }, "LambdaConflictHandlerConfig": { "additionalProperties": false, "properties": { "LambdaConflictHandlerArn": { "$ref": "#/definitions/PassThroughProp" } }, "required": [ "LambdaConflictHandlerArn" ], "title": "LambdaConflictHandlerConfig", "type": "object" }, "LambdaDataSource": { "additionalProperties": false, "properties": { "Description": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The description of your data source. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`Description`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-datasource.html#cfn-appsync-datasource-description) property of an `AWS::AppSync::DataSource` resource.", "title": "Description" }, "FunctionArn": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The ARN for the Lambda function. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`LambdaFunctionArn`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-lambdaconfig.html#cfn-appsync-datasource-lambdaconfig-lambdafunctionarn) property of an `AWS::AppSync::DataSource LambdaConfig` object.", "title": "FunctionArn" }, "Name": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The name of your data source. Specify this property to override the `LogicalId` value. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`Name`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-datasource.html#cfn-appsync-datasource-name) property of an `AWS::AppSync::DataSource` resource.", "title": "Name" }, "ServiceRoleArn": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The AWS Identity and Access Management (https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/IAM.html) service role ARN for the data source. The system assumes this role when accessing the data source. \nTo revoke access to your data source, remove the Lambda object from your AWS SAM template.\n*Type*: String \n*Required*: No. If not specified, AWS SAM will provision `Write` permissions using [AWS SAM connectors](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/managing-permissions-connectors.html). \n*CloudFormation compatibility*: This property is passed directly to the [`ServiceRoleArn`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-datasource.html#cfn-appsync-datasource-servicerolearn) property of an `AWS::AppSync::DataSource` resource.", "title": "ServiceRoleArn" } }, "required": [ "FunctionArn" ], "title": "LambdaDataSource", "type": "object" }, "LambdaRequestAuthorizer": { "additionalProperties": false, "properties": { "DisableFunctionDefaultPermissions": { "markdownDescription": "Specify `true` to prevent AWS SAM from automatically creating an `AWS::Lambda::Permissions` resource to provision permissions between your `AWS::Serverless::Api` resource and authorizer Lambda function. \n*Default value*: `false` \n*Type*: Boolean \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "DisableFunctionDefaultPermissions", "type": "boolean" }, "FunctionArn": { "anyOf": [ { "type": "object" }, { "type": "string" } ], "markdownDescription": "Specify the function ARN of the Lambda function which provides authorization for the API. \nAWS SAM will automatically create an `AWS::Lambda::Permissions` resource when `FunctionArn` is specified for `AWS::Serverless::Api`. The `AWS::Lambda::Permissions` resource provisions permissions between your API and authorizer Lambda function.\n*Type*: String \n*Required*: Yes \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "FunctionArn" }, "FunctionInvokeRole": { "markdownDescription": "Adds authorizer credentials to the OpenApi definition of the Lambda authorizer. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "FunctionInvokeRole", "type": "string" }, "FunctionPayloadType": { "enum": [ "REQUEST" ], "markdownDescription": "This property can be used to define the type of Lambda Authorizer for an API. \n*Valid values*: `TOKEN` or `REQUEST` \n*Type*: String \n*Required*: No \n*Default*: `TOKEN` \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "FunctionPayloadType", "type": "string" }, "Identity": { "allOf": [ { "$ref": "#/definitions/LambdaRequestAuthorizerIdentity" } ], "markdownDescription": "This property can be used to specify an `IdentitySource` in an incoming request for an authorizer. This property is only required if the `FunctionPayloadType` property is set to `REQUEST`. \n*Type*: [LambdaRequestAuthorizationIdentity](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-api-lambdarequestauthorizationidentity.html) \n*Required*: Conditional \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "Identity" } }, "required": [ "FunctionArn" ], "title": "LambdaRequestAuthorizer", "type": "object" }, "LambdaRequestAuthorizerIdentity": { "additionalProperties": false, "properties": { "Context": { "items": { "type": "string" }, "markdownDescription": "Converts the given context strings to the mapping expressions of format `context.contextString`. \n*Type*: List \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "Context", "type": "array" }, "Headers": { "items": { "type": "string" }, "markdownDescription": "Converts the headers to comma-separated string of mapping expressions of format `method.request.header.name`. \n*Type*: List \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "Headers", "type": "array" }, "QueryStrings": { "items": { "type": "string" }, "markdownDescription": "Converts the given query strings to comma-separated string of mapping expressions of format `method.request.querystring.queryString`. \n*Type*: List \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "QueryStrings", "type": "array" }, "ReauthorizeEvery": { "anyOf": [ { "type": "object" }, { "type": "integer" } ], "markdownDescription": "The time-to-live (https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/TTL.html) period, in seconds, that specifies how long API Gateway caches authorizer results. If you specify a value greater than 0, API Gateway caches the authorizer responses. By default, API Gateway sets this property to 300. The maximum value is 3600, or 1 hour. \n*Type*: Integer \n*Required*: No \n*Default*: 300 \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "ReauthorizeEvery" }, "StageVariables": { "items": { "type": "string" }, "markdownDescription": "Converts the given stage variables to comma-separated string of mapping expressions of format `stageVariables.stageVariable`. \n*Type*: List \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "StageVariables", "type": "array" } }, "title": "LambdaRequestAuthorizerIdentity", "type": "object" }, "LambdaTokenAuthorizer": { "additionalProperties": false, "properties": { "DisableFunctionDefaultPermissions": { "markdownDescription": "Specify `true` to prevent AWS SAM from automatically creating an `AWS::Lambda::Permissions` resource to provision permissions between your `AWS::Serverless::Api` resource and authorizer Lambda function. \n*Default value*: `false` \n*Type*: Boolean \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "DisableFunctionDefaultPermissions", "type": "boolean" }, "FunctionArn": { "anyOf": [ { "type": "object" }, { "type": "string" } ], "markdownDescription": "Specify the function ARN of the Lambda function which provides authorization for the API. \nAWS SAM will automatically create an `AWS::Lambda::Permissions` resource when `FunctionArn` is specified for `AWS::Serverless::Api`. The `AWS::Lambda::Permissions` resource provisions permissions between your API and authorizer Lambda function.\n*Type*: String \n*Required*: Yes \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "FunctionArn" }, "FunctionInvokeRole": { "markdownDescription": "Adds authorizer credentials to the OpenApi definition of the Lambda authorizer. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "FunctionInvokeRole", "type": "string" }, "FunctionPayloadType": { "enum": [ "TOKEN" ], "markdownDescription": "This property can be used to define the type of Lambda Authorizer for an Api. \n*Valid values*: `TOKEN` or `REQUEST` \n*Type*: String \n*Required*: No \n*Default*: `TOKEN` \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "FunctionPayloadType", "type": "string" }, "Identity": { "allOf": [ { "$ref": "#/definitions/LambdaTokenAuthorizerIdentity" } ], "markdownDescription": "This property can be used to specify an `IdentitySource` in an incoming request for an authorizer. This property is only required if the `FunctionPayloadType` property is set to `REQUEST`. \n*Type*: [LambdaTokenAuthorizationIdentity](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-api-lambdatokenauthorizationidentity.html) \n*Required*: Conditional \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "Identity" } }, "required": [ "FunctionArn" ], "title": "LambdaTokenAuthorizer", "type": "object" }, "LambdaTokenAuthorizerIdentity": { "additionalProperties": false, "properties": { "Header": { "markdownDescription": "Specify the header name for Authorization in the OpenApi definition. \n*Type*: String \n*Required*: No \n*Default*: Authorization \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "Header", "type": "string" }, "ReauthorizeEvery": { "anyOf": [ { "type": "object" }, { "type": "integer" } ], "markdownDescription": "The time-to-live (https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/TTL.html) period, in seconds, that specifies how long API Gateway caches authorizer results. If you specify a value greater than 0, API Gateway caches the authorizer responses. By default, API Gateway sets this property to 300. The maximum value is 3600, or 1 hour. \n*Type*: Integer \n*Required*: No \n*Default*: 300 \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "ReauthorizeEvery" }, "ValidationExpression": { "markdownDescription": "Specify a validation expression for validating the incoming Identity. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "ValidationExpression", "type": "string" } }, "title": "LambdaTokenAuthorizerIdentity", "type": "object" }, "Location": { "additionalProperties": false, "properties": { "ApplicationId": { "anyOf": [ { "type": "object" }, { "type": "string" } ], "markdownDescription": "The Amazon Resource Name (https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/ARN.html) of the application. \n*Type*: String \n*Required*: Yes \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "ApplicationId" }, "SemanticVersion": { "anyOf": [ { "type": "object" }, { "type": "string" } ], "markdownDescription": "The semantic version of the application. \n*Type*: String \n*Required*: Yes \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "SemanticVersion" } }, "required": [ "ApplicationId", "SemanticVersion" ], "title": "Location", "type": "object" }, "Logging": { "additionalProperties": false, "properties": { "CloudWatchLogsRoleArn": { "$ref": "#/definitions/PassThroughProp" }, "ExcludeVerboseContent": { "$ref": "#/definitions/PassThroughProp" }, "FieldLogLevel": { "$ref": "#/definitions/PassThroughProp" } }, "title": "Logging", "type": "object" }, "MQEvent": { "additionalProperties": false, "properties": { "Properties": { "allOf": [ { "$ref": "#/definitions/MQEventProperties" } ], "markdownDescription": "Object describing properties of this event mapping. The set of properties must conform to the defined Type. \n*Type*: [AlexaSkill](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-alexaskill.html) \\$1 [Api](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-api.html) \\$1 [CloudWatchEvent](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-cloudwatchevent.html) \\$1 [CloudWatchLogs](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-cloudwatchlogs.html) \\$1 [Cognito](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-cognito.html) \\$1 [DocumentDB](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-documentdb.html) \\$1 [DynamoDB](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-dynamodb.html) \\$1 [EventBridgeRule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-eventbridgerule.html) \\$1 [HttpApi](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-httpapi.html) \\$1 [IoTRule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-iotrule.html) \\$1 [Kinesis](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-kinesis.html) \\$1 [MQ](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-mq.html) \\$1 [MSK](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-msk.html) \\$1 [S3](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-s3.html) \\$1 [Schedule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-schedule.html) \\$1 [ScheduleV2](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-schedulev2.html) \\$1 [SelfManagedKafka](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-selfmanagedkafka.html) \\$1 [SNS](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-sns.html) \\$1 [SQS](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-sqs.html) \n*Required*: Yes \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "Properties" }, "Type": { "enum": [ "MQ" ], "markdownDescription": "The event type. \n*Valid values*: `AlexaSkill`, `Api`, `CloudWatchEvent`, `CloudWatchLogs`, `Cognito`, `DocumentDB`, `DynamoDB`, `EventBridgeRule`, `HttpApi`, `IoTRule`, `Kinesis`, `MQ`, `MSK`, `S3`, `Schedule`, `ScheduleV2`, `SelfManagedKafka`, `SNS`, `SQS` \n*Type*: String \n*Required*: Yes \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "Type", "type": "string" } }, "required": [ "Type", "Properties" ], "title": "MQEvent", "type": "object" }, "MQEventProperties": { "additionalProperties": false, "properties": { "BatchSize": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The maximum number of items to retrieve in a single batch. \n*Type*: Integer \n*Required*: No \n*Default*: 100 \n*CloudFormation compatibility*: This property is passed directly to the [`BatchSize`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-batchsize) property of an `AWS::Lambda::EventSourceMapping` resource. \n*Minimum*: `1` \n*Maximum*: `10000`", "title": "BatchSize" }, "Broker": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The Amazon Resource Name (https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/ARN.html) of the Amazon MQ broker. \n*Type*: String \n*Required*: Yes \n*CloudFormation compatibility*: This property is passed directly to the [`EventSourceArn`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-eventsourcearn) property of an `AWS::Lambda::EventSourceMapping` resource.", "title": "Broker" }, "DynamicPolicyName": { "markdownDescription": "By default, the AWS Identity and Access Management (https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/IAM.html) policy name is `SamAutoGeneratedAMQPolicy` for backward compatibility. Specify `true` to use an auto-generated name for your https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/IAM.html policy. This name will include the Amazon MQ event source logical ID. \nWhen using more than one Amazon MQ event source, specify `true` to avoid duplicate https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/IAM.html policy names.\n*Type*: Boolean \n*Required*: No \n*Default*: `false` \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "DynamicPolicyName", "type": "boolean" }, "Enabled": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "If `true`, the event source mapping is active. To pause polling and invocation, set to `false`. \n*Type*: Boolean \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`Enabled`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-enabled) property of an `AWS::Lambda::EventSourceMapping` resource.", "title": "Enabled" }, "FilterCriteria": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "A object that defines the criteria that determines whether Lambda should process an event. For more information, see [AWS Lambda event filtering](https://docs.aws.amazon.com/lambda/latest/dg/invocation-eventfiltering.html) in the *AWS Lambda Developer Guide*. \n*Type*: [FilterCriteria](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-filtercriteria.html) \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`FilterCriteria`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-filtercriteria.html) property of an `AWS::Lambda::EventSourceMapping` resource.", "title": "FilterCriteria" }, "KmsKeyArn": { "__samPassThrough": { "markdownDescriptionOverride": "The ARN of an AWS Key Management Service (AWS KMS) key that Lambda uses to encrypt and decrypt your function's environment variables. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`KmsKeyArn`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-kmskeyarn) property of an `AWS::Lambda::Function` resource.", "schemaPath": [ "definitions", "AWS::Lambda::EventSourceMapping", "properties", "Properties", "properties", "KmsKeyArn" ] }, "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "title": "KmsKeyArn" }, "MaximumBatchingWindowInSeconds": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The maximum amount of time to gather records before invoking the function, in seconds. \n*Type*: Integer \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`MaximumBatchingWindowInSeconds`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-maximumbatchingwindowinseconds) property of an `AWS::Lambda::EventSourceMapping` resource.", "title": "MaximumBatchingWindowInSeconds" }, "Queues": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The name of the Amazon MQ broker destination queue to consume. \n*Type*: List \n*Required*: Yes \n*CloudFormation compatibility*: This property is passed directly to the [`Queues`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-queues) property of an `AWS::Lambda::EventSourceMapping` resource.", "title": "Queues" }, "SecretsManagerKmsKeyId": { "markdownDescription": "The AWS Key Management Service (AWS KMS) key ID of a customer managed key from AWS Secrets Manager. Required when you use a customer managed key from Secrets Manager with a Lambda execution role that doesn't included the `kms:Decrypt` permission. \nThe value of this property is a UUID. For example: `1abc23d4-567f-8ab9-cde0-1fab234c5d67`. \n*Type*: String \n*Required*: Conditional \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "SecretsManagerKmsKeyId", "type": "string" }, "SourceAccessConfigurations": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "An array of the authentication protocol or vitual host. Specify this using the [SourceAccessConfigurations](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-sourceaccessconfiguration.html) data type. \nFor the `MQ` event source type, the only valid configuration types are `BASIC_AUTH` and `VIRTUAL_HOST`. \n+ **`BASIC_AUTH`** \u2013 The Secrets Manager secret that stores your broker credentials. For this type, the credential must be in the following format: `{\"username\": \"your-username\", \"password\": \"your-password\"}`. Only one object of type `BASIC_AUTH` is allowed.\n+ **`VIRTUAL_HOST`** \u2013 The name of the virtual host in your RabbitMQ broker. Lambda will use this Rabbit MQ's host as the event source. Only one object of type `VIRTUAL_HOST` is allowed.\n*Type*: List \n*Required*: Yes \n*CloudFormation compatibility*: This property is passed directly to the [`SourceAccessConfigurations`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-sourceaccessconfigurations) property of an `AWS::Lambda::EventSourceMapping` resource.", "title": "SourceAccessConfigurations" } }, "required": [ "Broker", "Queues", "SourceAccessConfigurations" ], "title": "MQEventProperties", "type": "object" }, "MSKEvent": { "additionalProperties": false, "properties": { "Properties": { "allOf": [ { "$ref": "#/definitions/MSKEventProperties" } ], "markdownDescription": "Object describing properties of this event mapping. The set of properties must conform to the defined Type. \n*Type*: [AlexaSkill](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-alexaskill.html) \\$1 [Api](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-api.html) \\$1 [CloudWatchEvent](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-cloudwatchevent.html) \\$1 [CloudWatchLogs](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-cloudwatchlogs.html) \\$1 [Cognito](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-cognito.html) \\$1 [DocumentDB](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-documentdb.html) \\$1 [DynamoDB](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-dynamodb.html) \\$1 [EventBridgeRule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-eventbridgerule.html) \\$1 [HttpApi](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-httpapi.html) \\$1 [IoTRule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-iotrule.html) \\$1 [Kinesis](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-kinesis.html) \\$1 [MQ](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-mq.html) \\$1 [MSK](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-msk.html) \\$1 [S3](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-s3.html) \\$1 [Schedule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-schedule.html) \\$1 [ScheduleV2](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-schedulev2.html) \\$1 [SelfManagedKafka](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-selfmanagedkafka.html) \\$1 [SNS](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-sns.html) \\$1 [SQS](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-sqs.html) \n*Required*: Yes \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "Properties" }, "Type": { "enum": [ "MSK" ], "markdownDescription": "The event type. \n*Valid values*: `AlexaSkill`, `Api`, `CloudWatchEvent`, `CloudWatchLogs`, `Cognito`, `DocumentDB`, `DynamoDB`, `EventBridgeRule`, `HttpApi`, `IoTRule`, `Kinesis`, `MQ`, `MSK`, `S3`, `Schedule`, `ScheduleV2`, `SelfManagedKafka`, `SNS`, `SQS` \n*Type*: String \n*Required*: Yes \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "Type", "type": "string" } }, "required": [ "Type", "Properties" ], "title": "MSKEvent", "type": "object" }, "MSKEventProperties": { "additionalProperties": false, "properties": { "BatchSize": { "__samPassThrough": { "markdownDescriptionOverride": "The maximum number of records in each batch that Lambda pulls from your stream or queue and sends to your function. Lambda passes all of the records in the batch to the function in a single call, up to the payload limit for synchronous invocation (6 MB). \n*Default*: 100 \n*Valid Range*: Minimum value of 1. Maximum value of 10,000. \n*Type*: Integer \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`BatchSize`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-batchsize) property of an `AWS::Lambda::EventSourceMapping` resource.", "schemaPath": [ "definitions", "AWS::Lambda::EventSourceMapping", "properties", "Properties", "properties", "BatchSize" ] }, "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "title": "BatchSize" }, "BisectBatchOnFunctionError": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "If the function returns an error, split the batch in two and retry. \n*Type*: Boolean \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`BisectBatchOnFunctionError`](http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-bisectbatchonfunctionerror) property of an `AWS::Lambda::EventSourceMapping` resource.", "title": "BisectBatchOnFunctionError" }, "ConsumerGroupId": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "A string that configures how events will be read from Kafka topics\\. \n*Type*: String \n*Required*: No \n*AWS CloudFormation compatibility*: This property is passed directly to the [`AmazonManagedKafkaConfiguration`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html) property of an `AWS::Lambda::EventSourceMapping` resource\\.", "title": "ConsumerGroupId" }, "DestinationConfig": { "__samPassThrough": { "markdownDescriptionOverride": "A configuration object that specifies the destination of an event after Lambda processes it. \nUse this property to specify the destination of failed invocations from the Amazon MSK event source. \n*Type*: [DestinationConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-destinationconfig) \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the `[ DestinationConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-destinationconfig.html)` property of an `AWS::Lambda::EventSourceMapping` resource.", "schemaPath": [ "definitions", "AWS::Lambda::EventSourceMapping", "properties", "Properties", "properties", "DestinationConfig" ] }, "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "title": "DestinationConfig" }, "Enabled": { "__samPassThrough": { "markdownDescriptionOverride": "Disables the event source mapping to pause polling and invocation. \n*Type*: Boolean \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`Enabled`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-enabled) property of an `AWS::Lambda::EventSourceMapping` resource.", "schemaPath": [ "definitions", "AWS::Lambda::EventSourceMapping", "properties", "Properties", "properties", "Enabled" ] }, "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "title": "Enabled" }, "FilterCriteria": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "A object that defines the criteria that determines whether Lambda should process an event. For more information, see [AWS Lambda event filtering](https://docs.aws.amazon.com/lambda/latest/dg/invocation-eventfiltering.html) in the *AWS Lambda Developer Guide*. \n*Type*: [FilterCriteria](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-filtercriteria.html) \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`FilterCriteria`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-filtercriteria.html) property of an `AWS::Lambda::EventSourceMapping` resource.", "title": "FilterCriteria" }, "FunctionResponseTypes": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "A list of the response types currently applied to the event source mapping. For more information, see [Reporting batch item failures](https://docs.aws.amazon.com/lambda/latest/dg/kafka-retry-configurations.html) in the *AWS Lambda Developer Guide*. \n*Valid values*: `ReportBatchItemFailures` \n*Type*: List \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`FunctionResponseTypes`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-functionresponsetypes) property of an `AWS::Lambda::EventSourceMapping` resource.", "title": "FunctionResponseTypes" }, "KmsKeyArn": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The Amazon Resource Name (https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/ARN.html) of the key to encrypt information related to this event. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`KmsKeyArn`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-kmskeyarn) property of an `AWS::Lambda::EventSourceMapping` resource.", "title": "KmsKeyArn" }, "LoggingConfig": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "A configuration object that specifies the logging configuration for the event source mapping\\. \n*Type*: [LoggingConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-loggingconfig.html) \n*Required*: No \n*AWS CloudFormation compatibility*: This property is passed directly to the [`LoggingConfig`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-loggingconfig.html) property of an `AWS::Lambda::EventSourceMapping` resource\\.", "title": "LoggingConfig" }, "MaximumBatchingWindowInSeconds": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The maximum amount of time to gather records before invoking the function, in seconds\\. \n*Type*: Integer \n*Required*: No \n*AWS CloudFormation compatibility*: This property is passed directly to the [`MaximumBatchingWindowInSeconds`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-maximumbatchingwindowinseconds) property of an `AWS::Lambda::EventSourceMapping` resource\\.", "title": "MaximumBatchingWindowInSeconds" }, "MaximumRecordAgeInSeconds": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The maximum age of a record that Lambda sends to a function for processing. \n*Type*: Integer \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`MaximumRecordAgeInSeconds`](http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-maximumrecordageinseconds) property of an `AWS::Lambda::EventSourceMapping` resource.", "title": "MaximumRecordAgeInSeconds" }, "MaximumRetryAttempts": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The maximum number of times to retry when the function returns an error. \n*Type*: Integer \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`MaximumRetryAttempts`](http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-maximumretryattempts) property of an `AWS::Lambda::EventSourceMapping` resource.", "title": "MaximumRetryAttempts" }, "MetricsConfig": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "A configuration object that specifies the metrics configuration for the event source mapping\\. \n*Type*: [MetricsConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-metricsconfig.html) \n*Required*: No \n*AWS CloudFormation compatibility*: This property is passed directly to the [`MetricsConfig`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-metricsconfig.html) property of an `AWS::Lambda::EventSourceMapping` resource\\.", "title": "MetricsConfig" }, "ProvisionedPollerConfig": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "Configuration to increase the amount of pollers used to compute event source mappings. This configuration allows for a minimum of 1 poller and a maximum of 2000 pollers. For an example, refer to [ProvisionedPollerConfig example](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/#sam-property-function-msk-example-provisionedpollerconfig.html#sam-property-function-msk-example-provisionedpollerconfig). \n*Type*: [ProvisionedPollerConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-provisionedpollerconfig) \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`ProvisionedPollerConfig`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-provisionedpollerconfig) property of an `AWS::Lambda::EventSourceMapping` resource.", "title": "ProvisionedPollerConfig" }, "SchemaRegistryConfig": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "Configuration for using a schema registry with the Kafka event source. \nThis feature requires `ProvisionedPollerConfig` to be configured.\n*Type*: SchemaRegistryConfig \n*Required*: No \n*CloudFormation compatibility:* This property is passed directly to the [`AmazonManagedKafkaEventSourceConfig`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-amazonmanagedkafkaeventsourceconfig) property of an `AWS::Lambda::EventSourceMapping` resource.", "title": "SchemaRegistryConfig" }, "SourceAccessConfigurations": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "An array of the authentication protocol, VPC components, or virtual host to secure and define your event source. \n*Valid values*: `CLIENT_CERTIFICATE_TLS_AUTH` \n*Type*: List of [SourceAccessConfiguration](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-sourceaccessconfiguration.html) \n*Required*: No \n*CloudFormation compatibility:* This propertyrty is part of the [AmazonManagedKafkaEventSourceConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-properties-lambda-eventsourcemapping-amazonmanagedkafkaeventsourceconfig) property of an `AWS::Lambda::EventSourceMapping` resource.", "title": "SourceAccessConfigurations" }, "StartingPosition": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The position in a stream from which to start reading. \n+ `AT_TIMESTAMP` \u2013 Specify a time from which to start reading records.\n+ `LATEST` \u2013 Read only new records.\n+ `TRIM_HORIZON` \u2013 Process all available records.\n*Valid values*: `AT_TIMESTAMP` \\$1 `LATEST` \\$1 `TRIM_HORIZON` \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`StartingPosition`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-startingposition) property of an `AWS::Lambda::EventSourceMapping` resource.", "title": "StartingPosition" }, "StartingPositionTimestamp": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The time from which to start reading, in Unix time seconds. Define `StartingPositionTimestamp` when `StartingPosition` is specified as `AT_TIMESTAMP`. \n*Type*: Double \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`StartingPositionTimestamp`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-startingpositiontimestamp) property of an `AWS::Lambda::EventSourceMapping` resource.", "title": "StartingPositionTimestamp" }, "Stream": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The Amazon Resource Name (https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/ARN.html) of the data stream or a stream consumer. \n*Type*: String \n*Required*: Yes \n*CloudFormation compatibility*: This property is passed directly to the [`EventSourceArn`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-eventsourcearn) property of an `AWS::Lambda::EventSourceMapping` resource.", "title": "Stream" }, "Topics": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The name of the Kafka topic. \n*Type*: List \n*Required*: Yes \n*CloudFormation compatibility*: This property is passed directly to the [`Topics`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-topics) property of an `AWS::Lambda::EventSourceMapping` resource.", "title": "Topics" } }, "required": [ "Stream", "Topics" ], "title": "MSKEventProperties", "type": "object" }, "OAuth2Authorizer": { "additionalProperties": false, "properties": { "AuthorizationScopes": { "items": { "type": "string" }, "markdownDescription": "List of authorization scopes for this authorizer. \n*Type*: List \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "AuthorizationScopes", "type": "array" }, "IdentitySource": { "markdownDescription": "Identity source expression for this authorizer. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "IdentitySource", "type": "string" }, "JwtConfiguration": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "JWT configuration for this authorizer. \nThis is passed through to the `jwtConfiguration` section of an `x-amazon-apigateway-authorizer` in the `securitySchemes` section of an OpenAPI definition. \nProperties `issuer` and `audience` are case insensitive and can be used either lowercase as in OpenAPI or uppercase `Issuer` and `Audience` as in [ AWS::ApiGatewayV2::Authorizer](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-authorizer-jwtconfiguration.html). \n*Type*: Map \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "JwtConfiguration" } }, "title": "OAuth2Authorizer", "type": "object" }, "OpenIDConnectConfig": { "additionalProperties": false, "properties": { "AuthTTL": { "$ref": "#/definitions/PassThroughProp" }, "ClientId": { "$ref": "#/definitions/PassThroughProp" }, "IatTTL": { "$ref": "#/definitions/PassThroughProp" }, "Issuer": { "$ref": "#/definitions/PassThroughProp" } }, "title": "OpenIDConnectConfig", "type": "object" }, "PassThroughProp": {}, "PrimaryKey": { "additionalProperties": false, "properties": { "Name": { "__samPassThrough": { "markdownDescriptionOverride": "Attribute name of the primary key. \n*Type*: String \n*Required*: Yes \n*CloudFormation compatibility*: This property is passed directly to the [`AttributeName`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-attributedef.html#cfn-dynamodb-attributedef-attributename) property of the `AWS::DynamoDB::Table` `AttributeDefinition` data type. \n*Additional notes*: This property is also passed to the [AttributeName](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-keyschema.html#aws-properties-dynamodb-keyschema-attributename) property of an `AWS::DynamoDB::Table KeySchema` data type.", "schemaPath": [ "definitions", "AWS::DynamoDB::Table.AttributeDefinition", "properties", "AttributeName" ] }, "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "title": "Name" }, "Type": { "__samPassThrough": { "markdownDescriptionOverride": "The data type for the primary key. \n*Valid values*: `String`, `Number`, `Binary` \n*Type*: String \n*Required*: Yes \n*CloudFormation compatibility*: This property is passed directly to the [`AttributeType`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-attributedef.html#cfn-dynamodb-attributedef-attributename-attributetype) property of the `AWS::DynamoDB::Table` `AttributeDefinition` data type.", "schemaPath": [ "definitions", "AWS::DynamoDB::Table.AttributeDefinition", "properties", "AttributeType" ] }, "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "title": "Type" } }, "required": [ "Name", "Type" ], "title": "PrimaryKey", "type": "object" }, "Ref": { "additionalProperties": false, "properties": { "Ref": { "title": "Ref", "type": "string" } }, "required": [ "Ref" ], "title": "Ref", "type": "object" }, "RequestModel": { "additionalProperties": false, "properties": { "Model": { "markdownDescription": "Name of a model defined in the Models property of the [AWS::Serverless::Api](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-resource-api.html). \n*Type*: String \n*Required*: Yes \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "Model", "type": "string" }, "Required": { "markdownDescription": "Adds a `required` property in the parameters section of the OpenApi definition for the given API endpoint. \n*Type*: Boolean \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "Required", "type": "boolean" }, "ValidateBody": { "markdownDescription": "Specifies whether API Gateway uses the `Model` to validate the request body. For more information, see [Enable request validation in API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-method-request-validation.html) in the *API Gateway Developer Guide*. \n*Type*: Boolean \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "ValidateBody", "type": "boolean" }, "ValidateParameters": { "markdownDescription": "Specifies whether API Gateway uses the `Model` to validate request path parameters, query strings, and headers. For more information, see [Enable request validation in API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-method-request-validation.html) in the *API Gateway Developer Guide*. \n*Type*: Boolean \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "ValidateParameters", "type": "boolean" } }, "required": [ "Model" ], "title": "RequestModel", "type": "object" }, "RequestParameters": { "additionalProperties": false, "properties": { "Caching": { "markdownDescription": "Adds `cacheKeyParameters` section to the API Gateway OpenApi definition \n*Type*: Boolean \n*Required*: Conditional \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "Caching", "type": "boolean" }, "Required": { "markdownDescription": "This field specifies whether a parameter is required \n*Type*: Boolean \n*Required*: Conditional \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "Required", "type": "boolean" } }, "title": "RequestParameters", "type": "object" }, "Resolver": { "additionalProperties": false, "properties": { "Caching": { "allOf": [ { "$ref": "#/definitions/Caching" } ], "markdownDescription": "The caching configuration for the resolver that has caching activated. \n*Type*: [CachingConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-resolver-cachingconfig.html) \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`CachingConfig`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-resolver.html#cfn-appsync-resolver-cachingconfig) property of an `AWS::AppSync::Resolver` resource.", "title": "Caching" }, "CodeUri": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The resolver function code\u2019s Amazon Simple Storage Service (Amazon S3) URI or path to a local folder. \nIf you specify a path to a local folder, CloudFormation requires that the file is first uploaded to Amazon S3 before deployment. You can use the AWS SAM\u00a0CLI to facilitate this process. For more information, see [How AWS SAM uploads local files at deployment](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/deploy-upload-local-files.html). \nIf neither `CodeUri` or `InlineCode` are provided, AWS SAM will generate `InlineCode` that redirects the request to the first pipeline function and receives the response from the last pipeline function. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`CodeS3Location`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-resolver.html#cfn-appsync-resolver-codes3location) property of an `AWS::AppSync::Resolver` resource.", "title": "CodeUri" }, "FieldName": { "markdownDescription": "The name of your resolver. Specify this property to override the `LogicalId` value. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`FieldName`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-resolver.html#cfn-appsync-resolver-fieldname) property of an `AWS::AppSync::Resolver` resource.", "title": "FieldName", "type": "string" }, "InlineCode": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The resolver code that contains the request and response functions. \nIf neither `CodeUri` or `InlineCode` are provided, AWS SAM will generate `InlineCode` that redirects the request to the first pipeline function and receives the response from the last pipeline function. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`Code`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-resolver.html#cfn-appsync-resolver-code) property of an `AWS::AppSync::Resolver` resource.", "title": "InlineCode" }, "MaxBatchSize": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The maximum number of resolver request inputs that will be sent to a single AWS Lambda function in a `BatchInvoke` operation. \n*Type*: Integer \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`MaxBatchSize`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-resolver.html#cfn-appsync-resolver-maxbatchsize) property of an `AWS::AppSync::Resolver` resource.", "title": "MaxBatchSize" }, "Pipeline": { "items": { "type": "string" }, "markdownDescription": "Functions linked with the pipeline resolver. Specify functions by logical ID in a list. \n*Type*: List \n*Required*: Yes \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent. It is similar to the [`PipelineConfig`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-resolver.html#cfn-appsync-resolver-pipelineconfig) property of an `AWS::AppSync::Resolver` resource.", "title": "Pipeline", "type": "array" }, "Runtime": { "allOf": [ { "$ref": "#/definitions/Runtime" } ], "markdownDescription": "The runtime of your pipeline resolver or function. Specifies the name and version to use. \n*Type*: [Runtime](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-graphqlapi-resolver-runtime.html) \n*Required*: Yes \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent. It is similar to the [`Runtime`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-resolver.html#cfn-appsync-resolver-runtime) property of an `AWS::AppSync::Resolver` resource.", "title": "Runtime" }, "Sync": { "allOf": [ { "$ref": "#/definitions/Sync" } ], "markdownDescription": "Describes a Sync configuration for a resolver. \nSpecifies which Conflict Detection strategy and Resolution strategy to use when the resolver is invoked. \n*Type*: [SyncConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-resolver-syncconfig.html) \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`SyncConfig`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-resolver.html#cfn-appsync-resolver-syncconfig) property of an `AWS::AppSync::Resolver` resource.", "title": "Sync" } }, "title": "Resolver", "type": "object" }, "ResourceReference": { "additionalProperties": false, "properties": { "Arn": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The ARN of a resource. \n*Type*: String \n*Required*: Conditional \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "Arn" }, "Id": { "markdownDescription": "The [logical ID](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/resources-section-structure.html) of a resource in the same template. \nWhen `Id` is specified, if the connector generates AWS Identity and Access Management (https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/IAM.html) policies, the https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/IAM.html role associated to those policies will be inferred from the resource `Id`. When `Id` is not specified, provide `RoleName` of the resource for connectors to attach generated https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/IAM.html policies to an https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/IAM.html role.\n*Type*: String \n*Required*: Conditional \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "Id", "type": "string" }, "Name": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The name of a resource. \n*Type*: String \n*Required*: Conditional \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "Name" }, "Qualifier": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "A qualifier for a resource that narrows its scope. `Qualifier` replaces the `*` value at the end of a resource constraint ARN. For an example, see [API Gateway invoking a Lambda function](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/#sam-property-connector-resourcereference--examples--api-gateway-invoking-a-lambda-function.html#sam-property-connector-resourcereference--examples--api-gateway-invoking-a-lambda-function). \nQualifier definition varies per resource type. For a list of supported source and destination resource types, see [AWS SAM connector reference](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/reference-sam-connector.html).\n*Type*: String \n*Required*: Conditional \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "Qualifier" }, "QueueUrl": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The Amazon SQS queue URL. This property only applies to Amazon SQS resources. \n*Type*: String \n*Required*: Conditional \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "QueueUrl" }, "ResourceId": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The ID of a resource. For example, the API Gateway API ID. \n*Type*: String \n*Required*: Conditional \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "ResourceId" }, "RoleName": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The role name associated with a resource. \nWhen `Id` is specified, if the connector generates IAM policies, the IAM role associated to those policies will be inferred from the resource `Id`. When `Id` is not specified, provide `RoleName` of the resource for connectors to attach generated IAM policies to an IAM role.\n*Type*: String \n*Required*: Conditional \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "RoleName" }, "Type": { "markdownDescription": "The CloudFormation type of a resource. For more information, go to [AWS resource and property types reference](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-template-resource-type-ref.html). \n*Type*: String \n*Required*: Conditional \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "Type", "type": "string" } }, "title": "ResourceReference", "type": "object" }, "Runtime": { "additionalProperties": false, "properties": { "Name": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The name of the runtime to use. Currently, the only allowed value is `APPSYNC_JS`. \n*Type*: String \n*Required*: Yes \n*CloudFormation compatibility*: This property is passed directly to the [`Name`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-functionconfiguration-appsyncruntime.html#cfn-appsync-functionconfiguration-appsyncruntime-name) property of an `AWS::AppSync::FunctionConfiguration AppSyncRuntime` object.", "title": "Name" }, "Version": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The version of the runtime to use. Currently, the only allowed version is `1.0.0`. \n*Type*: String \n*Required*: Yes \n*CloudFormation compatibility*: This property is passed directly to the [`RuntimeVersion`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-functionconfiguration-appsyncruntime.html#cfn-appsync-functionconfiguration-appsyncruntime-runtimeversion) property of an `AWS::AppSync::FunctionConfiguration AppSyncRuntime` object.", "title": "Version" } }, "required": [ "Name", "Version" ], "title": "Runtime", "type": "object" }, "S3Event": { "additionalProperties": false, "properties": { "Properties": { "allOf": [ { "$ref": "#/definitions/S3EventProperties" } ], "markdownDescription": "Object describing properties of this event mapping. The set of properties must conform to the defined Type. \n*Type*: [AlexaSkill](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-alexaskill.html) \\$1 [Api](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-api.html) \\$1 [CloudWatchEvent](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-cloudwatchevent.html) \\$1 [CloudWatchLogs](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-cloudwatchlogs.html) \\$1 [Cognito](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-cognito.html) \\$1 [DocumentDB](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-documentdb.html) \\$1 [DynamoDB](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-dynamodb.html) \\$1 [EventBridgeRule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-eventbridgerule.html) \\$1 [HttpApi](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-httpapi.html) \\$1 [IoTRule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-iotrule.html) \\$1 [Kinesis](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-kinesis.html) \\$1 [MQ](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-mq.html) \\$1 [MSK](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-msk.html) \\$1 [S3](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-s3.html) \\$1 [Schedule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-schedule.html) \\$1 [ScheduleV2](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-schedulev2.html) \\$1 [SelfManagedKafka](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-selfmanagedkafka.html) \\$1 [SNS](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-sns.html) \\$1 [SQS](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-sqs.html) \n*Required*: Yes \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "Properties" }, "Type": { "enum": [ "S3" ], "markdownDescription": "The event type. \n*Valid values*: `AlexaSkill`, `Api`, `CloudWatchEvent`, `CloudWatchLogs`, `Cognito`, `DocumentDB`, `DynamoDB`, `EventBridgeRule`, `HttpApi`, `IoTRule`, `Kinesis`, `MQ`, `MSK`, `S3`, `Schedule`, `ScheduleV2`, `SelfManagedKafka`, `SNS`, `SQS` \n*Type*: String \n*Required*: Yes \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "Type", "type": "string" } }, "required": [ "Properties", "Type" ], "title": "S3Event", "type": "object" }, "S3EventProperties": { "additionalProperties": false, "properties": { "Bucket": { "anyOf": [ { "type": "object" }, { "type": "string" } ], "markdownDescription": "S3 bucket name. This bucket must exist in the same template. \n*Type*: String \n*Required*: Yes \n*CloudFormation compatibility*: This property is similar to the [`BucketName`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html#cfn-s3-bucket-name) property of an `AWS::S3::Bucket` resource. This is a required field in SAM. This field only accepts a reference to the S3 bucket created in this template", "title": "Bucket" }, "Events": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The Amazon S3 bucket event for which to invoke the Lambda function. See [Amazon S3 supported event types](http://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html#supported-notification-event-types) for a list of valid values. \n*Type*: String \\$1 List \n*Required*: Yes \n*CloudFormation compatibility*: This property is passed directly to the [`Event`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfig-lambdaconfig.html#cfn-s3-bucket-notificationconfig-lambdaconfig-event) property of the `AWS::S3::Bucket` `LambdaConfiguration` data type.", "title": "Events" }, "Filter": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The filtering rules that determine which Amazon S3 objects invoke the Lambda function. For information about Amazon S3 key name filtering, see [Configuring Amazon S3 Event Notifications](https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html) in the *Amazon Simple Storage Service User Guide*. \n*Type*: [NotificationFilter](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfiguration-config-filter.html) \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`Filter`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfiguration-config-filter.html) property of the `AWS::S3::Bucket` `LambdaConfiguration` data type.", "title": "Filter" } }, "required": [ "Bucket", "Events" ], "title": "S3EventProperties", "type": "object" }, "SNSEvent": { "additionalProperties": false, "properties": { "Properties": { "allOf": [ { "$ref": "#/definitions/SNSEventProperties" } ], "markdownDescription": "Object describing properties of this event mapping. The set of properties must conform to the defined Type. \n*Type*: [AlexaSkill](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-alexaskill.html) \\$1 [Api](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-api.html) \\$1 [CloudWatchEvent](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-cloudwatchevent.html) \\$1 [CloudWatchLogs](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-cloudwatchlogs.html) \\$1 [Cognito](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-cognito.html) \\$1 [DocumentDB](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-documentdb.html) \\$1 [DynamoDB](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-dynamodb.html) \\$1 [EventBridgeRule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-eventbridgerule.html) \\$1 [HttpApi](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-httpapi.html) \\$1 [IoTRule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-iotrule.html) \\$1 [Kinesis](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-kinesis.html) \\$1 [MQ](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-mq.html) \\$1 [MSK](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-msk.html) \\$1 [S3](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-s3.html) \\$1 [Schedule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-schedule.html) \\$1 [ScheduleV2](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-schedulev2.html) \\$1 [SelfManagedKafka](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-selfmanagedkafka.html) \\$1 [SNS](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-sns.html) \\$1 [SQS](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-sqs.html) \n*Required*: Yes \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "Properties" }, "Type": { "enum": [ "SNS" ], "markdownDescription": "The event type. \n*Valid values*: `AlexaSkill`, `Api`, `CloudWatchEvent`, `CloudWatchLogs`, `Cognito`, `DocumentDB`, `DynamoDB`, `EventBridgeRule`, `HttpApi`, `IoTRule`, `Kinesis`, `MQ`, `MSK`, `S3`, `Schedule`, `ScheduleV2`, `SelfManagedKafka`, `SNS`, `SQS` \n*Type*: String \n*Required*: Yes \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "Type", "type": "string" } }, "required": [ "Properties", "Type" ], "title": "SNSEvent", "type": "object" }, "SNSEventProperties": { "additionalProperties": false, "properties": { "FilterPolicy": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The filter policy JSON assigned to the subscription. For more information, see [GetSubscriptionAttributes](https://docs.aws.amazon.com/sns/latest/api/API_GetSubscriptionAttributes.html) in the Amazon Simple Notification Service API Reference. \n*Type*: [SnsFilterPolicy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sns-subscription.html#cfn-sns-subscription-filterpolicy) \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`FilterPolicy`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sns-subscription.html#cfn-sns-subscription-filterpolicy) property of an `AWS::SNS::Subscription` resource.", "title": "FilterPolicy" }, "FilterPolicyScope": { "__samPassThrough": { "markdownDescriptionOverride": "This attribute lets you choose the filtering scope by using one of the following string value types: \n+ `MessageAttributes` \u2013 The filter is applied on the message attributes.\n+ `MessageBody` \u2013 The filter is applied on the message body.\n*Type*: String \n*Required*: No \n*Default*: `MessageAttributes` \n*CloudFormation compatibility*: This property is passed directly to the ` [ FilterPolicyScope](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sns-subscription.html#cfn-sns-subscription-filterpolicyscope)` property of an `AWS::SNS::Subscription` resource.", "schemaPath": [ "definitions", "AWS::SNS::Subscription", "properties", "Properties", "properties", "FilterPolicyScope" ] }, "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "title": "FilterPolicyScope" }, "Region": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "For cross-region subscriptions, the region in which the topic resides. \nIf no region is specified, CloudFormation uses the region of the caller as the default. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`Region`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sns-subscription.html#cfn-sns-subscription-region) property of an `AWS::SNS::Subscription` resource.", "title": "Region" }, "SqsSubscription": { "anyOf": [ { "type": "boolean" }, { "$ref": "#/definitions/SqsSubscription" } ], "markdownDescription": "Set this property to true, or specify `SqsSubscriptionObject` to enable batching SNS topic notifications in an SQS queue. Setting this property to `true` creates a new SQS queue, whereas specifying a `SqsSubscriptionObject` uses an existing SQS queue. \n*Type*: Boolean \\$1 [SqsSubscriptionObject](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-sqssubscriptionobject.html) \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "SqsSubscription" }, "Topic": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The ARN of the topic to subscribe to. \n*Type*: String \n*Required*: Yes \n*CloudFormation compatibility*: This property is passed directly to the [`TopicArn`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sns-subscription.html#topicarn) property of an `AWS::SNS::Subscription` resource.", "title": "Topic" } }, "required": [ "Topic" ], "title": "SNSEventProperties", "type": "object" }, "SQSEvent": { "additionalProperties": false, "properties": { "Properties": { "allOf": [ { "$ref": "#/definitions/SQSEventProperties" } ], "markdownDescription": "Object describing properties of this event mapping. The set of properties must conform to the defined Type. \n*Type*: [AlexaSkill](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-alexaskill.html) \\$1 [Api](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-api.html) \\$1 [CloudWatchEvent](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-cloudwatchevent.html) \\$1 [CloudWatchLogs](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-cloudwatchlogs.html) \\$1 [Cognito](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-cognito.html) \\$1 [DocumentDB](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-documentdb.html) \\$1 [DynamoDB](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-dynamodb.html) \\$1 [EventBridgeRule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-eventbridgerule.html) \\$1 [HttpApi](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-httpapi.html) \\$1 [IoTRule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-iotrule.html) \\$1 [Kinesis](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-kinesis.html) \\$1 [MQ](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-mq.html) \\$1 [MSK](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-msk.html) \\$1 [S3](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-s3.html) \\$1 [Schedule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-schedule.html) \\$1 [ScheduleV2](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-schedulev2.html) \\$1 [SelfManagedKafka](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-selfmanagedkafka.html) \\$1 [SNS](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-sns.html) \\$1 [SQS](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-sqs.html) \n*Required*: Yes \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "Properties" }, "Type": { "enum": [ "SQS" ], "markdownDescription": "The event type. \n*Valid values*: `AlexaSkill`, `Api`, `CloudWatchEvent`, `CloudWatchLogs`, `Cognito`, `DocumentDB`, `DynamoDB`, `EventBridgeRule`, `HttpApi`, `IoTRule`, `Kinesis`, `MQ`, `MSK`, `S3`, `Schedule`, `ScheduleV2`, `SelfManagedKafka`, `SNS`, `SQS` \n*Type*: String \n*Required*: Yes \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "Type", "type": "string" } }, "required": [ "Type", "Properties" ], "title": "SQSEvent", "type": "object" }, "SQSEventProperties": { "additionalProperties": false, "properties": { "BatchSize": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The maximum number of items to retrieve in a single batch. \n*Type*: Integer \n*Required*: No \n*Default*: 10 \n*CloudFormation compatibility*: This property is passed directly to the [`BatchSize`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-batchsize) property of an `AWS::Lambda::EventSourceMapping` resource. \n*Minimum*: `1` \n*Maximum*: `10000`", "title": "BatchSize" }, "Enabled": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "Disables the event source mapping to pause polling and invocation. \n*Type*: Boolean \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`Enabled`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-enabled) property of an `AWS::Lambda::EventSourceMapping` resource.", "title": "Enabled" }, "FilterCriteria": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "A object that defines the criteria to determine whether Lambda should process an event. For more information, see [AWS Lambda event filtering](https://docs.aws.amazon.com/lambda/latest/dg/invocation-eventfiltering.html) in the *AWS Lambda Developer Guide*. \n*Type*: [FilterCriteria](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-filtercriteria.html) \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`FilterCriteria`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-filtercriteria.html) property of an `AWS::Lambda::EventSourceMapping` resource.", "title": "FilterCriteria" }, "FunctionResponseTypes": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "A list of the response types currently applied to the event source mapping. For more information, see [ Reporting batch item failures](https://docs.aws.amazon.com/lambda/latest/dg/with-sqs.html#services-sqs-batchfailurereporting) in the *AWS Lambda Developer Guide*. \n *Valid values*: `ReportBatchItemFailures` \n *Type*: List \n *Required*: No \n *CloudFormation compatibility*: This property is passed directly to the [`FunctionResponseTypes`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-functionresponsetypes) property of an `AWS::Lambda::EventSourceMapping` resource.", "title": "FunctionResponseTypes" }, "KmsKeyArn": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The Amazon Resource Name (https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/ARN.html) of the key to encrypt information related to this event. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`KmsKeyArn`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-kmskeyarn) property of an `AWS::Lambda::EventSourceMapping` resource.", "title": "KmsKeyArn" }, "MaximumBatchingWindowInSeconds": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The maximum amount of time, in seconds, to gather records before invoking the function. \n*Type*: Integer \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`MaximumBatchingWindowInSeconds`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-maximumbatchingwindowinseconds) property of an `AWS::Lambda::EventSourceMapping` resource.", "title": "MaximumBatchingWindowInSeconds" }, "MetricsConfig": { "$ref": "#/definitions/PassThroughProp" }, "Queue": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The ARN of the queue. \n*Type*: String \n*Required*: Yes \n*CloudFormation compatibility*: This property is passed directly to the [`EventSourceArn`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-eventsourcearn) property of an `AWS::Lambda::EventSourceMapping` resource.", "title": "Queue" }, "ScalingConfig": { "$ref": "#/definitions/PassThroughProp" } }, "required": [ "Queue" ], "title": "SQSEventProperties", "type": "object" }, "ScalingConfig": { "additionalProperties": false, "properties": { "AverageCPUUtilization": { "anyOf": [ { "type": "object" }, { "type": "number" } ], "markdownDescription": "The target average CPU utilization percentage (https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/0-100.html) for scaling decisions. When the average CPU utilization exceeds this threshold, the capacity provider will scale up Amazon EC2 instances. When specified, AWS SAM constructs [`CapacityProviderScalingConfig`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-capacityprovider.html#cfn-lambda-capacityprovider-capacityproviderscalingconfig) of an `AWS::Lambda::CapacityProvider` resource with the [`ScalingMode`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-capacityprovider-capacityproviderscalingconfig.html#cfn-lambda-capacityprovider-capacityproviderscalingconfig-scalingmode) set to `'Manual'` and [`ScalingPolicies`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-capacityprovider-capacityproviderscalingconfig.html#cfn-lambda-capacityprovider-capacityproviderscalingconfig-scalingpolicies) set to `[{PredefinedMetricType: 'LambdaCapacityProviderAverageCPUUtilization', TargetValue: }]`. \n*Type*: Double \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "AverageCPUUtilization" }, "MaxVCpuCount": { "anyOf": [ { "type": "object" }, { "type": "integer" } ], "markdownDescription": "The maximum number of vCPUs that the capacity provider can provision across all compute instances. \n*Type*: Integer \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`MaxVCpuCount`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-capacityprovider-capacityproviderscalingconfig.html#cfn-lambda-capacityprovider-capacityproviderscalingconfig-maxvcpucount) property of [`CapacityProviderScalingConfig`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-capacityprovider.html#cfn-lambda-capacityprovider-capacityproviderscalingconfig) of an `AWS::Lambda::CapacityProvider` resource.", "title": "MaxVCpuCount" } }, "title": "ScalingConfig", "type": "object" }, "ScheduleEventProperties": { "additionalProperties": false, "properties": { "DeadLetterConfig": { "allOf": [ { "$ref": "#/definitions/samtranslator__internal__schema_source__aws_serverless_statemachine__DeadLetterConfig" } ], "markdownDescription": "Configure the Amazon Simple Queue Service (Amazon SQS) queue where EventBridge sends events after a failed target invocation. Invocation can fail, for example, when sending an event to a Lambda function that doesn't exist, or when EventBridge has insufficient permissions to invoke the Lambda function. For more information, see [Event retry policy and using dead-letter queues](https://docs.aws.amazon.com/eventbridge/latest/userguide/rule-dlq.html) in the *Amazon EventBridge User Guide*. \n*Type*: [DeadLetterConfig](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-statemachine-statemachinescheduledeadletterconfig.html) \n*Required*: No \n*CloudFormation compatibility*: This property is similar to the [`DeadLetterConfig`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-target.html#cfn-events-rule-target-deadletterconfig) property of the `AWS::Events::Rule` `Target` data type. The AWS SAM version of this property includes additional subproperties, in case you want AWS SAM to create the dead-letter queue for you.", "title": "DeadLetterConfig" }, "Description": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "A description of the rule. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`Description`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-rule.html#cfn-events-rule-description) property of an `AWS::Events::Rule` resource.", "title": "Description" }, "Enabled": { "markdownDescription": "Indicates whether the rule is enabled. \nTo disable the rule, set this property to `false`. \nSpecify either the `Enabled` or `State` property, but not both.\n*Type*: Boolean \n*Required*: No \n*CloudFormation compatibility*: This property is similar to the [`State`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-rule.html#cfn-events-rule-state) property of an `AWS::Events::Rule` resource. If this property is set to `true` then AWS SAM passes `ENABLED`, otherwise it passes `DISABLED`.", "title": "Enabled", "type": "boolean" }, "Input": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "Valid JSON text passed to the target. If you use this property, nothing from the event text itself is passed to the target. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`Input`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-target.html#cfn-events-rule-target-input) property of an `AWS::Events::Rule Target` resource.", "title": "Input" }, "Name": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The name of the rule. If you don't specify a name, CloudFormation generates a unique physical ID and uses that ID for the rule name. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`Name`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-rule.html#cfn-events-rule-name) property of an `AWS::Events::Rule` resource.", "title": "Name" }, "RetryPolicy": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "A `RetryPolicy` object that includes information about the retry policy settings. For more information, see [Event retry policy and using dead-letter queues](https://docs.aws.amazon.com/eventbridge/latest/userguide/rule-dlq.html) in the *Amazon EventBridge User Guide*. \n*Type*: [RetryPolicy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-target.html#cfn-events-rule-target-retrypolicy) \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`RetryPolicy`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-target.html#cfn-events-rule-target-retrypolicy) property of the `AWS::Events::Rule` `Target` data type.", "title": "RetryPolicy" }, "RoleArn": { "__samPassThrough": { "markdownDescriptionOverride": "The ARN of the IAM role that EventBridge Scheduler will use for the target when the schedule is invoked. \n*Type*: [RoleArn](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-scheduler-schedule-target.html#cfn-scheduler-schedule-target-rolearn) \n*Required*: No. If not provided, a new role will be created and used. \n*CloudFormation compatibility*: This property is passed directly to the [`RoleArn`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-scheduler-schedule-target.html#cfn-scheduler-schedule-target-rolearn) property of the `AWS::Scheduler::Schedule` `Target` data type.", "schemaPath": [ "definitions", "AWS::Scheduler::Schedule.Target", "properties", "RoleArn" ] }, "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "title": "RoleArn" }, "Schedule": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The scheduling expression that determines when and how often the rule runs. For more information, see [Schedule Expressions for Rules](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-create-rule-schedule.html). \n*Type*: String \n*Required*: Yes \n*CloudFormation compatibility*: This property is passed directly to the [`ScheduleExpression`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-rule.html#cfn-events-rule-scheduleexpression) property of an `AWS::Events::Rule` resource.", "title": "Schedule" }, "State": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The state of the rule. \n*Accepted values:* `DISABLED | ENABLED` \nSpecify either the `Enabled` or `State` property, but not both.\n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`State`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-rule.html#cfn-events-rule-state) property of an `AWS::Events::Rule` resource.", "title": "State" }, "Target": { "allOf": [ { "$ref": "#/definitions/ScheduleTarget" } ], "markdownDescription": "The AWS resource that EventBridge invokes when a rule is triggered. You can use this property to specify the logical ID of the target. If this property is not specified, then AWS SAM generates the logical ID of the target. \n*Type*: [Target](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-statemachine-statemachinetarget.html) \n*Required*: No \n*CloudFormation compatibility*: This property is similar to the [`Targets`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-rule.html#cfn-events-rule-targets) property of an `AWS::Events::Rule` resource. The AWS SAM version of this property only allows you to specify the logical ID of a single target.", "title": "Target" } }, "title": "ScheduleEventProperties", "type": "object" }, "ScheduleTarget": { "additionalProperties": false, "properties": { "Id": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The logical ID of the target. \nThe value of `Id` can include alphanumeric characters, periods (`.`), hyphens (`-`), and underscores (`_`). \n*Type*: String \n*Required*: Yes \n*CloudFormation compatibility*: This property is passed directly to the [`Id`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-target.html#cfn-events-rule-target-id) property of the `AWS::Events::Rule` `Target` data type.", "title": "Id" } }, "required": [ "Id" ], "title": "ScheduleTarget", "type": "object" }, "SelfManagedKafkaEvent": { "additionalProperties": false, "properties": { "Properties": { "allOf": [ { "$ref": "#/definitions/SelfManagedKafkaEventProperties" } ], "markdownDescription": "Object describing properties of this event mapping. The set of properties must conform to the defined Type. \n*Type*: [AlexaSkill](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-alexaskill.html) \\$1 [Api](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-api.html) \\$1 [CloudWatchEvent](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-cloudwatchevent.html) \\$1 [CloudWatchLogs](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-cloudwatchlogs.html) \\$1 [Cognito](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-cognito.html) \\$1 [DocumentDB](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-documentdb.html) \\$1 [DynamoDB](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-dynamodb.html) \\$1 [EventBridgeRule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-eventbridgerule.html) \\$1 [HttpApi](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-httpapi.html) \\$1 [IoTRule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-iotrule.html) \\$1 [Kinesis](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-kinesis.html) \\$1 [MQ](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-mq.html) \\$1 [MSK](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-msk.html) \\$1 [S3](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-s3.html) \\$1 [Schedule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-schedule.html) \\$1 [ScheduleV2](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-schedulev2.html) \\$1 [SelfManagedKafka](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-selfmanagedkafka.html) \\$1 [SNS](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-sns.html) \\$1 [SQS](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-sqs.html) \n*Required*: Yes \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "Properties" }, "Type": { "enum": [ "SelfManagedKafka" ], "markdownDescription": "The event type. \n*Valid values*: `AlexaSkill`, `Api`, `CloudWatchEvent`, `CloudWatchLogs`, `Cognito`, `DocumentDB`, `DynamoDB`, `EventBridgeRule`, `HttpApi`, `IoTRule`, `Kinesis`, `MQ`, `MSK`, `S3`, `Schedule`, `ScheduleV2`, `SelfManagedKafka`, `SNS`, `SQS` \n*Type*: String \n*Required*: Yes \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "Type", "type": "string" } }, "required": [ "Type", "Properties" ], "title": "SelfManagedKafkaEvent", "type": "object" }, "SelfManagedKafkaEventProperties": { "additionalProperties": false, "properties": { "BatchSize": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The maximum number of records in each batch that Lambda pulls from your stream and sends to your function. \n*Type*: Integer \n*Required*: No \n*Default*: 100 \n*CloudFormation compatibility*: This property is passed directly to the [`BatchSize`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-batchsize) property of an `AWS::Lambda::EventSourceMapping` resource. \n*Minimum*: `1` \n*Maximum*: `10000`", "title": "BatchSize" }, "BisectBatchOnFunctionError": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "If the function returns an error, split the batch in two and retry. \n*Type*: Boolean \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`BisectBatchOnFunctionError`](http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-bisectbatchonfunctionerror) property of an `AWS::Lambda::EventSourceMapping` resource.", "title": "BisectBatchOnFunctionError" }, "ConsumerGroupId": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "A string that configures how events will be read from Kafka topics. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`SelfManagedKafkaConfiguration`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html) property of an `AWS::Lambda::EventSourceMapping` resource.", "title": "ConsumerGroupId" }, "Enabled": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "Disables the event source mapping to pause polling and invocation. \n*Type*: Boolean \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`Enabled`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-enabled) property of an `AWS::Lambda::EventSourceMapping` resource.", "title": "Enabled" }, "FilterCriteria": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "A object that defines the criteria to determine whether Lambda should process an event. For more information, see [AWS Lambda event filtering](https://docs.aws.amazon.com/lambda/latest/dg/invocation-eventfiltering.html) in the *AWS Lambda Developer Guide*. \n*Type*: [FilterCriteria](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-filtercriteria.html) \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`FilterCriteria`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-filtercriteria.html) property of an `AWS::Lambda::EventSourceMapping` resource.", "title": "FilterCriteria" }, "FunctionResponseTypes": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "A list of the response types currently applied to the event source mapping. For more information, see [Reporting batch item failures](https://docs.aws.amazon.com/lambda/latest/dg/kafka-retry-configurations.html) in the *AWS Lambda Developer Guide*. \n*Valid values*: `ReportBatchItemFailures` \n*Type*: List \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`FunctionResponseTypes`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-functionresponsetypes) property of an `AWS::Lambda::EventSourceMapping` resource.", "title": "FunctionResponseTypes" }, "KafkaBootstrapServers": { "items": { "anyOf": [ { "type": "string" }, { "type": "object" } ] }, "markdownDescription": "The list of bootstrap servers for your Kafka brokers. Include the port, for example `broker.example.com:xxxx` \n*Type*: List \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "KafkaBootstrapServers", "type": "array" }, "KmsKeyArn": { "__samPassThrough": { "markdownDescriptionOverride": "The ARN of an AWS Key Management Service (AWS KMS) key that Lambda uses to encrypt and decrypt your function's environment variables. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`KmsKeyArn`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-kmskeyarn) property of an `AWS::Lambda::Function` resource.", "schemaPath": [ "definitions", "AWS::Lambda::EventSourceMapping", "properties", "Properties", "properties", "KmsKeyArn" ] }, "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "title": "KmsKeyArn" }, "LoggingConfig": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "A configuration object that specifies the logging configuration for the event source mapping\\. \n*Type*: [LoggingConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-loggingconfig.html) \n*Required*: No \n*AWS CloudFormation compatibility*: This property is passed directly to the [`LoggingConfig`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-loggingconfig.html) property of an `AWS::Lambda::EventSourceMapping` resource\\.", "title": "LoggingConfig" }, "MaximumRecordAgeInSeconds": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The maximum age of a record that Lambda sends to a function for processing. \n*Type*: Integer \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`MaximumRecordAgeInSeconds`](http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-maximumrecordageinseconds) property of an `AWS::Lambda::EventSourceMapping` resource.", "title": "MaximumRecordAgeInSeconds" }, "MaximumRetryAttempts": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The maximum number of times to retry when the function returns an error. \n*Type*: Integer \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`MaximumRetryAttempts`](http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-maximumretryattempts) property of an `AWS::Lambda::EventSourceMapping` resource.", "title": "MaximumRetryAttempts" }, "MetricsConfig": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "A configuration object that specifies the metrics configuration for the event source mapping\\. \n*Type*: [MetricsConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-metricsconfig.html) \n*Required*: No \n*AWS CloudFormation compatibility*: This property is passed directly to the [`MetricsConfig`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-metricsconfig.html) property of an `AWS::Lambda::EventSourceMapping` resource\\.", "title": "MetricsConfig" }, "ProvisionedPollerConfig": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "Configuration to increase the amount of pollers used to compute event source mappings. This configuration allows for a minumum of 1 poller and a maximum of 2000 pollers. For an example, refer to [ProvisionedPollerConfig example](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/#sam-property-function-selfmanagedkafka-example-provisionedpollerconfig.html#sam-property-function-selfmanagedkafka-example-provisionedpollerconfig) \n*Type*: [ProvisionedPollerConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-provisionedpollerconfig) \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`ProvisionedPollerConfig`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-provisionedpollerconfig) property of an `AWS::Lambda::EventSourceMapping` resource.", "title": "ProvisionedPollerConfig" }, "SchemaRegistryConfig": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "Configuration for using a schema registry with the self-managed Kafka event source. \nThis feature requires `ProvisionedPollerConfig` to be configured.\n*Type*: SchemaRegistryConfig \n*Required*: No \n*CloudFormation compatibility:* This property is passed directly to the [`SelfManagedKafkaEventSourceConfig`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-selfmanagedkafkaeventsourceconfig) property of an `AWS::Lambda::EventSourceMapping` resource.", "title": "SchemaRegistryConfig" }, "SourceAccessConfigurations": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "An array of the authentication protocol, VPC components, or virtual host to secure and define your event source. \n*Valid values*: `BASIC_AUTH | CLIENT_CERTIFICATE_TLS_AUTH | SASL_SCRAM_256_AUTH | SASL_SCRAM_512_AUTH | SERVER_ROOT_CA_CERTIFICATE` \n*Type*: List of [SourceAccessConfiguration](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-sourceaccessconfiguration.html) \n*Required*: Yes \n*CloudFormation compatibility:* This property is part of the [SelfManagedKafkaEventSourceConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-properties-lambda-eventsourcemapping-selfmanagedkafkaeventsourceconfig) property of an `AWS::Lambda::EventSourceMapping` resource.", "title": "SourceAccessConfigurations" }, "StartingPosition": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The position in a stream from which to start reading. \n+ `AT_TIMESTAMP` \u2013 Specify a time from which to start reading records.\n+ `LATEST` \u2013 Read only new records.\n+ `TRIM_HORIZON` \u2013 Process all available records.\n*Valid values*: `AT_TIMESTAMP` \\$1 `LATEST` \\$1 `TRIM_HORIZON` \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`StartingPosition`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-startingposition) property of an `AWS::Lambda::EventSourceMapping` resource.", "title": "StartingPosition" }, "StartingPositionTimestamp": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The time from which to start reading, in Unix time seconds. Define `StartingPositionTimestamp` when `StartingPosition` is specified as `AT_TIMESTAMP`. \n*Type*: Double \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`StartingPositionTimestamp`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-startingpositiontimestamp) property of an `AWS::Lambda::EventSourceMapping` resource.", "title": "StartingPositionTimestamp" }, "Topics": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The name of the Kafka topic. \n*Type*: List \n*Required*: Yes \n*CloudFormation compatibility*: This property is passed directly to the [`Topics`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-topics) property of an `AWS::Lambda::EventSourceMapping` resource.", "title": "Topics" } }, "required": [ "SourceAccessConfigurations", "Topics" ], "title": "SelfManagedKafkaEventProperties", "type": "object" }, "SourceReferenceProperties": { "additionalProperties": false, "properties": { "Qualifier": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "A qualifier for a resource that narrows its scope. `Qualifier` replaces the `*` value at the end of a resource constraint ARN. \nQualifier definition varies per resource type. For a list of supported source and destination resource types, see [AWS SAM connector reference](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/reference-sam-connector.html).\n*Type*: String \n*Required*: Conditional \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "Qualifier" } }, "title": "SourceReferenceProperties", "type": "object" }, "SqsSubscription": { "additionalProperties": false, "properties": { "BatchSize": { "anyOf": [ { "type": "object" }, { "type": "string" } ], "markdownDescription": "The maximum number of items to retrieve in a single batch for the SQS queue. \n*Type*: String \n*Required*: No \n*Default*: 10 \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "BatchSize" }, "Enabled": { "markdownDescription": "Disables the SQS event source mapping to pause polling and invocation. \n*Type*: Boolean \n*Required*: No \n*Default*: True \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "Enabled", "type": "boolean" }, "QueueArn": { "anyOf": [ { "type": "object" }, { "type": "string" } ], "markdownDescription": "Specify an existing SQS queue arn. \n*Type*: String \n*Required*: Yes \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "QueueArn" }, "QueuePolicyLogicalId": { "markdownDescription": "Give a custom logicalId name for the [AWS::SQS::QueuePolicy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sqs-policy.html) resource. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "QueuePolicyLogicalId", "type": "string" }, "QueueUrl": { "anyOf": [ { "type": "object" }, { "type": "string" } ], "markdownDescription": "Specify the queue URL associated with the `QueueArn` property. \n*Type*: String \n*Required*: Yes \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "QueueUrl" } }, "required": [ "QueueArn", "QueueUrl" ], "title": "SqsSubscription", "type": "object" }, "Sync": { "additionalProperties": false, "properties": { "ConflictDetection": { "$ref": "#/definitions/PassThroughProp" }, "ConflictHandler": { "$ref": "#/definitions/PassThroughProp" }, "LambdaConflictHandlerConfig": { "$ref": "#/definitions/LambdaConflictHandlerConfig" } }, "required": [ "ConflictDetection" ], "title": "Sync", "type": "object" }, "UsagePlan": { "additionalProperties": false, "properties": { "CreateUsagePlan": { "anyOf": [ { "type": "object" }, { "enum": [ "PER_API", "SHARED", "NONE" ], "type": "string" } ], "markdownDescription": "Determines how this usage plan is configured. Valid values are `PER_API`, `SHARED`, and `NONE`. \n`PER_API` creates [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplan.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplan.html), [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-apikey.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-apikey.html), and [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplankey.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplankey.html) resources that are specific to this API. These resources have logical IDs of `UsagePlan`, `ApiKey`, and `UsagePlanKey`, respectively. \n`SHARED` creates [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplan.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplan.html), [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-apikey.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-apikey.html), and [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplankey.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplankey.html) resources that are shared across any API that also has `CreateUsagePlan: SHARED` in the same AWS SAM template. These resources have logical IDs of `ServerlessUsagePlan`, `ServerlessApiKey`, and `ServerlessUsagePlanKey`, respectively. If you use this option, we recommend that you add additional configuration for this usage plan on only one API resource to avoid conflicting definitions and an uncertain state. \n`NONE` disables the creation or association of a usage plan with this API. This is only necessary if `SHARED` or `PER_API` is specified in the [Globals section of the AWS SAM template](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-specification-template-anatomy-globals.html). \n*Valid values*: `PER_API`, `SHARED`, and `NONE` \n*Type*: String \n*Required*: Yes \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "CreateUsagePlan" }, "Description": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "A description of the usage plan. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`Description`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplan.html#cfn-apigateway-usageplan-description) property of an `AWS::ApiGateway::UsagePlan` resource.", "title": "Description" }, "Quota": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "Configures the number of requests that users can make within a given interval. \n*Type*: [QuotaSettings](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplan.html#cfn-apigateway-usageplan-quota) \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`Quota`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplan.html#cfn-apigateway-usageplan-quota) property of an `AWS::ApiGateway::UsagePlan` resource.", "title": "Quota" }, "Tags": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "An array of arbitrary tags (key-value pairs) to associate with the usage plan. \nThis property uses the [CloudFormation Tag Type](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resource-tags.html). \n*Type*: List \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`Tags`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplan.html#cfn-apigateway-usageplan-tags) property of an `AWS::ApiGateway::UsagePlan` resource.", "title": "Tags" }, "Throttle": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "Configures the overall request rate (average requests per second) and burst capacity. \n*Type*: [ThrottleSettings](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplan.html#cfn-apigateway-usageplan-throttle) \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`Throttle`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplan.html#cfn-apigateway-usageplan-throttle) property of an `AWS::ApiGateway::UsagePlan` resource.", "title": "Throttle" }, "UsagePlanName": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "A name for the usage plan. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`UsagePlanName`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplan.html#cfn-apigateway-usageplan-usageplanname) property of an `AWS::ApiGateway::UsagePlan` resource.", "title": "UsagePlanName" } }, "required": [ "CreateUsagePlan" ], "title": "UsagePlan", "type": "object" }, "UserPoolConfig": { "additionalProperties": false, "properties": { "AppIdClientRegex": { "$ref": "#/definitions/PassThroughProp" }, "AwsRegion": { "$ref": "#/definitions/PassThroughProp" }, "DefaultAction": { "$ref": "#/definitions/PassThroughProp" }, "UserPoolId": { "$ref": "#/definitions/PassThroughProp" } }, "required": [ "UserPoolId" ], "title": "UserPoolConfig", "type": "object" }, "VpcConfig": { "additionalProperties": false, "properties": { "SecurityGroupIds": { "anyOf": [ { "type": "object" }, { "items": { "anyOf": [ { "type": "string" }, { "type": "object" } ] }, "type": "array" } ], "markdownDescription": "A list of security group IDs to associate with the EC2 instances. If not specified, the default security group for the VPC will be used. \n*Type*: List \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`SecurityGroupIds`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-capacityprovider-capacityprovidervpcconfig.html#cfn-lambda-capacityprovider-capacityprovidervpcconfig-securitygroupids) property of [`VpcConfig`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-capacityprovider.html#cfn-lambda-capacityprovider-vpcconfig) property of an `AWS::Lambda::CapacityProvider` resource.", "title": "SecurityGroupIds" }, "SubnetIds": { "anyOf": [ { "type": "object" }, { "items": { "anyOf": [ { "type": "string" }, { "type": "object" } ] }, "type": "array" } ], "markdownDescription": "A list of subnet IDs where EC2 instances will be launched. At least one subnet must be specified. \n*Type*: List \n*Required*: Yes \n*CloudFormation compatibility*: This property is passed directly to the [`SubnetIds`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-capacityprovider-capacityprovidervpcconfig.html#cfn-lambda-capacityprovider-capacityprovidervpcconfig-subnetids) property of `[VpcConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-capacityprovider.html#cfn-lambda-capacityprovider-vpcconfig) ` of an `AWS::Lambda::CapacityProvider` resource.", "title": "SubnetIds" } }, "required": [ "SubnetIds" ], "title": "VpcConfig", "type": "object" }, "__main____Globals": { "additionalProperties": false, "properties": { "Api": { "$ref": "#/definitions/samtranslator__internal__schema_source__aws_serverless_api__Globals" }, "CapacityProvider": { "$ref": "#/definitions/samtranslator__internal__schema_source__aws_serverless_capacity_provider__Globals" }, "Function": { "$ref": "#/definitions/samtranslator__internal__schema_source__aws_serverless_function__Globals" }, "HttpApi": { "$ref": "#/definitions/samtranslator__internal__schema_source__aws_serverless_httpapi__Globals" }, "LayerVersion": { "$ref": "#/definitions/samtranslator__internal__schema_source__aws_serverless_layerversion__Globals" }, "SimpleTable": { "$ref": "#/definitions/samtranslator__internal__schema_source__aws_serverless_simpletable__Globals" }, "StateMachine": { "$ref": "#/definitions/samtranslator__internal__schema_source__aws_serverless_statemachine__Globals" } }, "title": "Globals", "type": "object" }, "samtranslator__internal__schema_source__any_cfn_resource__Resource": { "properties": { "Type": { "pattern": "^(?!AWS::Serverless::).+$", "title": "Type", "type": "string" } }, "required": [ "Type" ], "title": "Resource", "type": "object" }, "samtranslator__internal__schema_source__aws_serverless_api__Auth": { "additionalProperties": false, "properties": { "AddApiKeyRequiredToCorsPreflight": { "markdownDescription": "If the `ApiKeyRequired` and `Cors` properties are set, then setting `AddApiKeyRequiredToCorsPreflight` will cause the API key to be added to the `Options` property. \n*Type*: Boolean \n*Required*: No \n*Default*: `True` \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "AddApiKeyRequiredToCorsPreflight", "type": "boolean" }, "AddDefaultAuthorizerToCorsPreflight": { "markdownDescription": "If the `DefaultAuthorizer` and `Cors` properties are set, then setting `AddDefaultAuthorizerToCorsPreflight` will cause the default authorizer to be added to the `Options` property in the OpenAPI section. \n*Type*: Boolean \n*Required*: No \n*Default*: True \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "AddDefaultAuthorizerToCorsPreflight", "type": "boolean" }, "ApiKeyRequired": { "markdownDescription": "If set to true then an API key is required for all API events. For more information about API keys see [Create and Use Usage Plans with API Keys](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-api-usage-plans.html) in the *API Gateway Developer Guide*. \n*Type*: Boolean \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "ApiKeyRequired", "type": "boolean" }, "Authorizers": { "additionalProperties": { "anyOf": [ { "$ref": "#/definitions/CognitoAuthorizer" }, { "$ref": "#/definitions/LambdaTokenAuthorizer" }, { "$ref": "#/definitions/LambdaRequestAuthorizer" } ] }, "markdownDescription": "The authorizer used to control access to your API Gateway API. \nFor more information, see [Control API access with your AWS SAM template](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/serverless-controlling-access-to-apis.html). \n*Type*: [CognitoAuthorizer](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-api-cognitoauthorizer.html) \\$1 [LambdaTokenAuthorizer](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-api-lambdatokenauthorizer.html) \\$1 [LambdaRequestAuthorizer](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-api-lambdarequestauthorizer.html) \\$1 AWS\\$1IAM \n*Required*: No \n*Default*: None \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent. \n*Additional notes*: SAM adds the Authorizers to the OpenApi definition of an Api.", "title": "Authorizers", "type": "object" }, "DefaultAuthorizer": { "markdownDescription": "Specify a default authorizer for an API Gateway API, which will be used for authorizing API calls by default. \nIf the Api EventSource for the function associated with this API is configured to use IAM Permissions, then this property must be set to `AWS_IAM`, otherwise an error will result.\n*Type*: String \n*Required*: No \n*Default*: None \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "DefaultAuthorizer", "type": "string" }, "InvokeRole": { "markdownDescription": "Sets integration credentials for all resources and methods to this value. \n`CALLER_CREDENTIALS` maps to `arn:aws:iam:::/`, which uses the caller credentials to invoke the endpoint. \n*Valid values*: `CALLER_CREDENTIALS`, `NONE`, `IAMRoleArn` \n*Type*: String \n*Required*: No \n*Default*: `CALLER_CREDENTIALS` \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "InvokeRole", "type": "string" }, "ResourcePolicy": { "allOf": [ { "$ref": "#/definitions/samtranslator__internal__schema_source__aws_serverless_api__ResourcePolicy" } ], "markdownDescription": "Configure Resource Policy for all methods and paths on an API. \n*Type*: [ResourcePolicyStatement](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-api-resourcepolicystatement.html) \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent. \n*Additional notes*: This setting can also be defined on individual `AWS::Serverless::Function` using the [ApiFunctionAuth](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-apifunctionauth.html). This is required for APIs with `EndpointConfiguration: PRIVATE`.", "title": "ResourcePolicy" }, "UsagePlan": { "allOf": [ { "$ref": "#/definitions/UsagePlan" } ], "markdownDescription": "Configures a usage plan associated with this API. For more information about usage plans see [Create and Use Usage Plans with API Keys](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-api-usage-plans.html) in the *API Gateway Developer Guide*. \nThis AWS SAM property generates three additional CloudFormation resources when this property is set: an [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplan.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplan.html), an [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplankey.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplankey.html), and an [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-apikey.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-apikey.html). For information about this scenario, see [UsagePlan property is specified](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-specification-generated-resources-api.html#sam-specification-generated-resources-api-usage-plan). For general information about generated CloudFormation resources, see [Generated CloudFormation resources for AWS SAM](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-specification-generated-resources.html). \n*Type*: [ApiUsagePlan](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-api-apiusageplan.html) \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "UsagePlan" } }, "title": "Auth", "type": "object" }, "samtranslator__internal__schema_source__aws_serverless_api__DefinitionUri": { "additionalProperties": false, "properties": { "Bucket": { "__samPassThrough": { "markdownDescriptionOverride": "The name of the Amazon S3 bucket where the OpenAPI file is stored. \n*Type*: String \n*Required*: Yes \n*CloudFormation compatibility*: This property is passed directly to the [`Bucket`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-restapi-s3location.html#cfn-apigateway-restapi-s3location-bucket) property of the `AWS::ApiGateway::RestApi` `S3Location` data type.", "schemaPath": [ "definitions", "AWS::ApiGateway::RestApi.S3Location", "properties", "Bucket" ] }, "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "title": "Bucket" }, "Key": { "__samPassThrough": { "markdownDescriptionOverride": "The Amazon S3 key of the OpenAPI file. \n*Type*: String \n*Required*: Yes \n*CloudFormation compatibility*: This property is passed directly to the [`Key`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-restapi-s3location.html#cfn-apigateway-restapi-s3location-key) property of the `AWS::ApiGateway::RestApi` `S3Location` data type.", "schemaPath": [ "definitions", "AWS::ApiGateway::RestApi.S3Location", "properties", "Key" ] }, "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "title": "Key" }, "Version": { "__samPassThrough": { "markdownDescriptionOverride": "For versioned objects, the version of the OpenAPI file. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`Version`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-restapi-s3location.html#cfn-apigateway-restapi-s3location-version) property of the `AWS::ApiGateway::RestApi` `S3Location` data type.", "schemaPath": [ "definitions", "AWS::ApiGateway::RestApi.S3Location", "properties", "Version" ] }, "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "title": "Version" } }, "required": [ "Bucket", "Key" ], "title": "DefinitionUri", "type": "object" }, "samtranslator__internal__schema_source__aws_serverless_api__Domain": { "additionalProperties": false, "properties": { "AccessAssociation": { "$ref": "#/definitions/AccessAssociation" }, "BasePath": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "A list of the basepaths to configure with the Amazon API Gateway domain name. \n*Type*: List \n*Required*: No \n*Default*: / \n*CloudFormation compatibility*: This property is similar to the [`BasePath`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-basepathmapping.html#cfn-apigateway-basepathmapping-basepath) property of an `AWS::ApiGateway::BasePathMapping` resource. AWS SAM creates multiple `AWS::ApiGateway::BasePathMapping` resources, one per `BasePath` specified in this property.", "title": "BasePath" }, "CertificateArn": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The Amazon Resource Name (https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/ARN.html) of an AWS managed certificate this domain name's endpoint. AWS Certificate Manager is the only supported source. \n*Type*: String \n*Required*: Yes \n*CloudFormation compatibility*: This property is similar to the [`CertificateArn`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-domainname.html#cfn-apigateway-domainname-certificatearn) property of an `AWS::ApiGateway::DomainName` resource. If `EndpointConfiguration` is set to `REGIONAL` (the default value), `CertificateArn` maps to [RegionalCertificateArn](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-domainname.html#cfn-apigateway-domainname-regionalcertificatearn) in `AWS::ApiGateway::DomainName`. If the `EndpointConfiguration` is set to `EDGE`, `CertificateArn` maps to [CertificateArn](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-domainname.html#cfn-apigateway-domainname-certificatearn) in `AWS::ApiGateway::DomainName`. If `EndpointConfiguration` is set to `PRIVATE`, this property is passed to the [AWS::ApiGateway::DomainNameV2](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-domainnamev2) resource. \n*Additional notes*: For an `EDGE` endpoint, you must create the certificate in the `us-east-1` AWS Region.", "title": "CertificateArn" }, "DomainName": { "__samPassThrough": { "markdownDescriptionOverride": "The custom domain name for your API Gateway API. Uppercase letters are not supported. \nAWS SAM generates an [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-domainname.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-domainname.html) resource when this property is set. For information about this scenario, see [DomainName property is specified](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-specification-generated-resources-api.html#sam-specification-generated-resources-api-domain-name). For information about generated CloudFormation resources, see [Generated CloudFormation resources for AWS SAM](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-specification-generated-resources.html). \n*Type*: String \n*Required*: Yes \n*CloudFormation compatibility*: This property is passed directly to the [`DomainName`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-domainname.html#cfn-apigateway-domainname-domainname) property of an `AWS::ApiGateway::DomainName` resource, or to [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-domainnamev2](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-domainnamev2) when EndpointConfiguration is set to `PRIVATE`.", "schemaPath": [ "definitions", "AWS::ApiGateway::DomainName", "properties", "Properties", "properties", "DomainName" ] }, "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "title": "DomainName" }, "EndpointConfiguration": { "anyOf": [ { "type": "object" }, { "enum": [ "REGIONAL", "EDGE", "PRIVATE" ], "type": "string" } ], "markdownDescription": "Defines the type of API Gateway endpoint to map to the custom domain. The value of this property determines how the `CertificateArn` property is mapped in CloudFormation. \n*Valid values*: `EDGE`, `REGIONAL`, or `PRIVATE` \n*Type*: String \n*Required*: No \n*Default*: `REGIONAL` \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "EndpointConfiguration" }, "IpAddressType": { "$ref": "#/definitions/PassThroughProp" }, "MutualTlsAuthentication": { "__samPassThrough": { "markdownDescriptionOverride": "The mutual Transport Layer Security (https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/TLS.html) authentication configuration for a custom domain name. \n*Type*: [MutualTlsAuthentication](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-domainname.html#cfn-apigateway-domainname-mutualtlsauthentication) \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`MutualTlsAuthentication`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-domainname.html#cfn-apigateway-domainname-mutualtlsauthentication) property of an `AWS::ApiGateway::DomainName` resource.", "schemaPath": [ "definitions", "AWS::ApiGateway::DomainName", "properties", "Properties", "properties", "MutualTlsAuthentication" ] }, "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "title": "MutualTlsAuthentication" }, "NormalizeBasePath": { "markdownDescription": "Indicates whether non-alphanumeric characters are allowed in basepaths defined by the `BasePath` property. When set to `True`, non-alphanumeric characters are removed from basepaths. \nUse `NormalizeBasePath` with the `BasePath` property. \n*Type*: Boolean \n*Required*: No \n*Default*: True \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "NormalizeBasePath", "type": "boolean" }, "OwnershipVerificationCertificateArn": { "__samPassThrough": { "markdownDescriptionOverride": "The ARN of the public certificate issued by ACM to validate ownership of your custom domain. Required only when you configure mutual TLS and you specify an ACM imported or private CA certificate ARN for the `CertificateArn`. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`OwnershipVerificationCertificateArn`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-domainname.html#cfn-apigateway-domainname-ownershipverificationcertificatearn) property of an `AWS::ApiGateway::DomainName` resource.", "schemaPath": [ "definitions", "AWS::ApiGateway::DomainName", "properties", "Properties", "properties", "OwnershipVerificationCertificateArn" ] }, "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "title": "OwnershipVerificationCertificateArn" }, "Policy": { "$ref": "#/definitions/PassThroughProp" }, "Route53": { "allOf": [ { "$ref": "#/definitions/samtranslator__internal__schema_source__aws_serverless_api__Route53" } ], "markdownDescription": "Defines an Amazon Route\u00a053 configuration. \n*Type*: [Route53Configuration](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-api-route53configuration.html) \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "Route53" }, "SecurityPolicy": { "__samPassThrough": { "markdownDescriptionOverride": "The TLS version plus cipher suite for this domain name. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`SecurityPolicy`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-domainname.html#cfn-apigateway-domainname-securitypolicy) property of an `AWS::ApiGateway::DomainName` resource, or to [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-domainnamev2](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-domainnamev2) when `EndpointConfiguration` is set to `PRIVATE`. For `PRIVATE` endpoints, only TLS\\$11\\$12 is supported.", "schemaPath": [ "definitions", "AWS::ApiGateway::DomainName", "properties", "Properties", "properties", "SecurityPolicy" ] }, "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "title": "SecurityPolicy" } }, "required": [ "CertificateArn", "DomainName" ], "title": "Domain", "type": "object" }, "samtranslator__internal__schema_source__aws_serverless_api__Globals": { "additionalProperties": false, "properties": { "AccessLogSetting": { "__samPassThrough": { "markdownDescriptionOverride": "Configures Access Log Setting for a stage. \n*Type*: [AccessLogSetting](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html#cfn-apigateway-stage-accesslogsetting) \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`AccessLogSetting`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html#cfn-apigateway-stage-accesslogsetting) property of an `AWS::ApiGateway::Stage` resource.", "schemaPath": [ "definitions", "AWS::ApiGateway::Stage", "properties", "Properties", "properties", "AccessLogSetting" ] }, "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "title": "AccessLogSetting" }, "AlwaysDeploy": { "markdownDescription": "Always deploys the API, even when no changes to the API have been detected. \n*Type*: Boolean \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "AlwaysDeploy", "type": "boolean" }, "Auth": { "allOf": [ { "$ref": "#/definitions/samtranslator__internal__schema_source__aws_serverless_api__Auth" } ], "markdownDescription": "Configure authorization to control access to your API Gateway API. \nFor more information about configuring access using AWS SAM see [Control API access with your AWS SAM template](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/serverless-controlling-access-to-apis.html). For an example showing how to override a global authorizer, see [Override a global authorizer for your Amazon API Gateway REST API](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-apifunctionauth.html#sam-property-function-apifunctionauth--examples--override). \n*Type*: [ApiAuth](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-api-apiauth.html) \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "Auth" }, "BinaryMediaTypes": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "List of MIME types that your API could return. Use this to enable binary support for APIs. \n*Type*: List \n*Required*: No \n*CloudFormation compatibility*: This property is similar to the [`BinaryMediaTypes`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html#cfn-apigateway-restapi-binarymediatypes) property of an `AWS::ApiGateway::RestApi` resource. The list of BinaryMediaTypes is added to both the CloudFormation resource and the OpenAPI document.", "title": "BinaryMediaTypes" }, "CacheClusterEnabled": { "__samPassThrough": { "markdownDescriptionOverride": "Indicates whether caching is enabled for the stage. To cache responses, you must also set `CachingEnabled` to `true` under `MethodSettings`. \n*Type*: Boolean \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`CacheClusterEnabled`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html#cfn-apigateway-stage-cacheclusterenabled) property of an `AWS::ApiGateway::Stage` resource.", "schemaPath": [ "definitions", "AWS::ApiGateway::Stage", "properties", "Properties", "properties", "CacheClusterEnabled" ] }, "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "title": "CacheClusterEnabled" }, "CacheClusterSize": { "__samPassThrough": { "markdownDescriptionOverride": "The stage's cache cluster size. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`CacheClusterSize`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html#cfn-apigateway-stage-cacheclustersize) property of an `AWS::ApiGateway::Stage` resource.", "schemaPath": [ "definitions", "AWS::ApiGateway::Stage", "properties", "Properties", "properties", "CacheClusterSize" ] }, "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "title": "CacheClusterSize" }, "CanarySetting": { "__samPassThrough": { "markdownDescriptionOverride": "Configure a canary setting to a stage of a regular deployment. \n*Type*: [CanarySetting](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html#cfn-apigateway-stage-canarysetting) \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`CanarySetting`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html#cfn-apigateway-stage-canarysetting) property of an `AWS::ApiGateway::Stage` resource.", "schemaPath": [ "definitions", "AWS::ApiGateway::Stage", "properties", "Properties", "properties", "CanarySetting" ] }, "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "title": "CanarySetting" }, "Cors": { "anyOf": [ { "type": "object" }, { "type": "string" }, { "$ref": "#/definitions/Cors" } ], "markdownDescription": "Manage Cross-origin resource sharing (https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/CORS.html) for all your API Gateway APIs. Specify the domain to allow as a string or specify a dictionary with additional Cors configuration. \nhttps://docs.aws.amazon.com/serverless-application-model/latest/developerguide/CORS.html requires AWS SAM to modify your OpenAPI definition. Create an inline OpenAPI definition in the `DefinitionBody` to turn on https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/CORS.html.\nFor more information about https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/CORS.html, see [Enable https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/CORS.html for an API Gateway REST API Resource](https://docs.aws.amazon.com/apigateway/latest/developerguide/how-to-cors.html) in the *API Gateway Developer Guide*. \n*Type*: String \\$1 [CorsConfiguration](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-api-corsconfiguration.html) \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "Cors" }, "DefinitionUri": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "Amazon S3 Uri, local file path, or location object of the the OpenAPI document defining the API. The Amazon S3 object this property references must be a valid OpenAPI file. If neither `DefinitionUri` nor `DefinitionBody` are specified, SAM will generate a `DefinitionBody` for you based on your template configuration. \nIf a local file path is provided, the template must go through the workflow that includes the `sam deploy` or `sam package` command, in order for the definition to be transformed properly. \nIntrinsic functions are not supported in external OpenApi files referenced by `DefinitionUri`. Use instead the `DefinitionBody` property with the [Include Transform](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/create-reusable-transform-function-snippets-and-add-to-your-template-with-aws-include-transform.html) to import an OpenApi definition into the template. \n*Type*: String \\$1 [ApiDefinition](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-api-apidefinition.html) \n*Required*: No \n*CloudFormation compatibility*: This property is similar to the [`BodyS3Location`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html#cfn-apigateway-restapi-bodys3location) property of an `AWS::ApiGateway::RestApi` resource. The nested Amazon S3 properties are named differently.", "title": "DefinitionUri" }, "Domain": { "allOf": [ { "$ref": "#/definitions/samtranslator__internal__schema_source__aws_serverless_api__Domain" } ], "markdownDescription": "Configures a custom domain for this API Gateway API. \n*Type*: [DomainConfiguration](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-api-domainconfiguration.html) \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "Domain" }, "EndpointConfiguration": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The endpoint type of a REST API. \n*Type*: [EndpointConfiguration](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-api-endpointconfiguration.html) \n*Required*: No \n*CloudFormation compatibility*: This property is similar to the [`EndpointConfiguration`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html#cfn-apigateway-restapi-endpointconfiguration) property of an `AWS::ApiGateway::RestApi` resource. The nested configuration properties are named differently.", "title": "EndpointConfiguration" }, "GatewayResponses": { "markdownDescription": "Configures Gateway Responses for an API. Gateway Responses are responses returned by API Gateway, either directly or through the use of Lambda Authorizers. For more information, see the documentation for the [Api Gateway OpenApi extension for Gateway Responses](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-swagger-extensions-gateway-responses.html). \n*Type*: Map \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "GatewayResponses", "type": "object" }, "MergeDefinitions": { "markdownDescription": "AWS SAM generates an OpenAPI specification from your API event source. Specify `true` to have AWS SAM merge this into the inline OpenAPI specification defined in your `AWS::Serverless::Api` resource. Specify `false` to not merge. \n`MergeDefinitions` requires the `DefinitionBody` property for `AWS::Serverless::Api` to be defined. `MergeDefinitions` is not compatible with the `DefinitionUri` property for `AWS::Serverless::Api`. \n*Default value*: `false` \n*Type*: Boolean \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "MergeDefinitions", "type": "boolean" }, "MethodSettings": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "Configures all settings for API stage including Logging, Metrics, CacheTTL, Throttling. \n*Type*: List of [ MethodSetting](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-stage-methodsetting.html) \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`MethodSettings`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html#cfn-apigateway-stage-methodsettings) property of an `AWS::ApiGateway::Stage` resource.", "title": "MethodSettings" }, "MinimumCompressionSize": { "__samPassThrough": { "markdownDescriptionOverride": "Allow compression of response bodies based on client's Accept-Encoding header. Compression is triggered when response body size is greater than or equal to your configured threshold. The maximum body size threshold is 10 MB (10,485,760 Bytes). - The following compression types are supported: gzip, deflate, and identity. \n*Type*: Integer \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`MinimumCompressionSize`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html#cfn-apigateway-restapi-minimumcompressionsize) property of an `AWS::ApiGateway::RestApi` resource.", "schemaPath": [ "definitions", "AWS::ApiGateway::RestApi", "properties", "Properties", "properties", "MinimumCompressionSize" ] }, "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "title": "MinimumCompressionSize" }, "Name": { "__samPassThrough": { "markdownDescriptionOverride": "A name for the API Gateway RestApi resource \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`Name`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html#cfn-apigateway-restapi-name) property of an `AWS::ApiGateway::RestApi` resource.", "schemaPath": [ "definitions", "AWS::ApiGateway::RestApi", "properties", "Properties", "properties", "Name" ] }, "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "title": "Name" }, "OpenApiVersion": { "anyOf": [ { "type": "number" }, { "type": "string" } ], "markdownDescription": "Version of OpenApi to use. This can either be `2.0` for the Swagger specification, or one of the OpenApi 3.0 versions, like `3.0.1`. For more information about OpenAPI, see the [OpenAPI Specification](https://swagger.io/specification/). \n AWS SAM creates a stage called `Stage` by default. Setting this property to any valid value will prevent the creation of the stage `Stage`. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "OpenApiVersion" }, "PropagateTags": { "markdownDescription": "Indicate whether or not to pass tags from the `Tags` property to your [AWS::Serverless::Api](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-specification-generated-resources-api.html) generated resources. Specify `True` to propagate tags in your generated resources. \n*Type*: Boolean \n*Required*: No \n*Default*: `False` \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "PropagateTags", "type": "boolean" }, "SecurityPolicy": { "__samPassThrough": { "markdownDescriptionOverride": "The Transport Layer Security (TLS) version + cipher suite for this RestApi. \n*Type*: String \n*Required*: No \n*AWS CloudFormation compatibility*: This property is passed directly to the [`SecurityPolicy`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html#cfn-apigateway-restapi-securitypolicy) property of an `AWS::ApiGateway::RestApi` resource\\.", "schemaPath": [ "definitions", "AWS::ApiGateway::RestApi", "properties", "Properties", "properties", "SecurityPolicy" ] }, "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "title": "SecurityPolicy" }, "TracingEnabled": { "__samPassThrough": { "markdownDescriptionOverride": "Indicates whether active tracing with X-Ray is enabled for the stage. For more information about X-Ray, see [Tracing user requests to REST APIs using X-Ray](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-xray.html) in the *API Gateway Developer Guide*. \n*Type*: Boolean \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`TracingEnabled`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html#cfn-apigateway-stage-tracingenabled) property of an `AWS::ApiGateway::Stage` resource.", "schemaPath": [ "definitions", "AWS::ApiGateway::Stage", "properties", "Properties", "properties", "TracingEnabled" ] }, "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "title": "TracingEnabled" }, "Variables": { "__samPassThrough": { "markdownDescriptionOverride": "A map (string to string) 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._~:/?#&=,-]+`. \n*Type*: Map \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`Variables`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html#cfn-apigateway-stage-variables) property of an `AWS::ApiGateway::Stage` resource.", "schemaPath": [ "definitions", "AWS::ApiGateway::Stage", "properties", "Properties", "properties", "Variables" ] }, "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "title": "Variables" } }, "title": "Globals", "type": "object" }, "samtranslator__internal__schema_source__aws_serverless_api__Properties": { "additionalProperties": false, "properties": { "AccessLogSetting": { "__samPassThrough": { "markdownDescriptionOverride": "Configures Access Log Setting for a stage. \n*Type*: [AccessLogSetting](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html#cfn-apigateway-stage-accesslogsetting) \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`AccessLogSetting`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html#cfn-apigateway-stage-accesslogsetting) property of an `AWS::ApiGateway::Stage` resource.", "schemaPath": [ "definitions", "AWS::ApiGateway::Stage", "properties", "Properties", "properties", "AccessLogSetting" ] }, "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "title": "AccessLogSetting" }, "AlwaysDeploy": { "markdownDescription": "Always deploys the API, even when no changes to the API have been detected. \n*Type*: Boolean \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "AlwaysDeploy", "type": "boolean" }, "ApiKeySourceType": { "__samPassThrough": { "markdownDescriptionOverride": "The source of the API key for metering requests according to a usage plan. Valid values are `HEADER` and `AUTHORIZER`. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`ApiKeySourceType`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html#cfn-apigateway-restapi-apikeysourcetype) property of an `AWS::ApiGateway::RestApi` resource.", "schemaPath": [ "definitions", "AWS::ApiGateway::RestApi", "properties", "Properties", "properties", "ApiKeySourceType" ] }, "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "title": "ApiKeySourceType" }, "Auth": { "allOf": [ { "$ref": "#/definitions/samtranslator__internal__schema_source__aws_serverless_api__Auth" } ], "markdownDescription": "Configure authorization to control access to your API Gateway API. \nFor more information about configuring access using AWS SAM see [Control API access with your AWS SAM template](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/serverless-controlling-access-to-apis.html). For an example showing how to override a global authorizer, see [Override a global authorizer for your Amazon API Gateway REST API](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-apifunctionauth.html#sam-property-function-apifunctionauth--examples--override). \n*Type*: [ApiAuth](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-api-apiauth.html) \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "Auth" }, "BinaryMediaTypes": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "List of MIME types that your API could return. Use this to enable binary support for APIs. \n*Type*: List \n*Required*: No \n*CloudFormation compatibility*: This property is similar to the [`BinaryMediaTypes`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html#cfn-apigateway-restapi-binarymediatypes) property of an `AWS::ApiGateway::RestApi` resource. The list of BinaryMediaTypes is added to both the CloudFormation resource and the OpenAPI document.", "title": "BinaryMediaTypes" }, "CacheClusterEnabled": { "__samPassThrough": { "markdownDescriptionOverride": "Indicates whether caching is enabled for the stage. To cache responses, you must also set `CachingEnabled` to `true` under `MethodSettings`. \n*Type*: Boolean \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`CacheClusterEnabled`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html#cfn-apigateway-stage-cacheclusterenabled) property of an `AWS::ApiGateway::Stage` resource.", "schemaPath": [ "definitions", "AWS::ApiGateway::Stage", "properties", "Properties", "properties", "CacheClusterEnabled" ] }, "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "title": "CacheClusterEnabled" }, "CacheClusterSize": { "__samPassThrough": { "markdownDescriptionOverride": "The stage's cache cluster size. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`CacheClusterSize`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html#cfn-apigateway-stage-cacheclustersize) property of an `AWS::ApiGateway::Stage` resource.", "schemaPath": [ "definitions", "AWS::ApiGateway::Stage", "properties", "Properties", "properties", "CacheClusterSize" ] }, "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "title": "CacheClusterSize" }, "CanarySetting": { "__samPassThrough": { "markdownDescriptionOverride": "Configure a canary setting to a stage of a regular deployment. \n*Type*: [CanarySetting](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html#cfn-apigateway-stage-canarysetting) \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`CanarySetting`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html#cfn-apigateway-stage-canarysetting) property of an `AWS::ApiGateway::Stage` resource.", "schemaPath": [ "definitions", "AWS::ApiGateway::Stage", "properties", "Properties", "properties", "CanarySetting" ] }, "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "title": "CanarySetting" }, "Cors": { "anyOf": [ { "type": "object" }, { "type": "string" }, { "$ref": "#/definitions/Cors" } ], "markdownDescription": "Manage Cross-origin resource sharing (https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/CORS.html) for all your API Gateway APIs. Specify the domain to allow as a string or specify a dictionary with additional Cors configuration. \nhttps://docs.aws.amazon.com/serverless-application-model/latest/developerguide/CORS.html requires AWS SAM to modify your OpenAPI definition. Create an inline OpenAPI definition in the `DefinitionBody` to turn on https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/CORS.html.\nFor more information about https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/CORS.html, see [Enable https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/CORS.html for an API Gateway REST API Resource](https://docs.aws.amazon.com/apigateway/latest/developerguide/how-to-cors.html) in the *API Gateway Developer Guide*. \n*Type*: String \\$1 [CorsConfiguration](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-api-corsconfiguration.html) \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "Cors" }, "DefinitionBody": { "markdownDescription": "OpenAPI specification that describes your API. If neither `DefinitionUri` nor `DefinitionBody` are specified, SAM will generate a `DefinitionBody` for you based on your template configuration. \nTo reference a local OpenAPI file that defines your API, use the `AWS::Include` transform. To learn more, see [How AWS SAM uploads local files](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/deploy-upload-local-files.html). \n*Type*: JSON \n*Required*: No \n*CloudFormation compatibility*: This property is similar to the [`Body`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html#cfn-apigateway-restapi-body) property of an `AWS::ApiGateway::RestApi` resource. If certain properties are provided, content may be inserted or modified into the DefinitionBody before being passed to CloudFormation. Properties include `Auth`, `BinaryMediaTypes`, `Cors`, `GatewayResponses`, `Models`, and an `EventSource` of type Api for a corresponding `AWS::Serverless::Function`.", "title": "DefinitionBody", "type": "object" }, "DefinitionUri": { "anyOf": [ { "type": "string" }, { "$ref": "#/definitions/samtranslator__internal__schema_source__aws_serverless_api__DefinitionUri" } ], "markdownDescription": "Amazon S3 Uri, local file path, or location object of the the OpenAPI document defining the API. The Amazon S3 object this property references must be a valid OpenAPI file. If neither `DefinitionUri` nor `DefinitionBody` are specified, SAM will generate a `DefinitionBody` for you based on your template configuration. \nIf a local file path is provided, the template must go through the workflow that includes the `sam deploy` or `sam package` command, in order for the definition to be transformed properly. \nIntrinsic functions are not supported in external OpenApi files referenced by `DefinitionUri`. Use instead the `DefinitionBody` property with the [Include Transform](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/create-reusable-transform-function-snippets-and-add-to-your-template-with-aws-include-transform.html) to import an OpenApi definition into the template. \n*Type*: String \\$1 [ApiDefinition](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-api-apidefinition.html) \n*Required*: No \n*CloudFormation compatibility*: This property is similar to the [`BodyS3Location`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html#cfn-apigateway-restapi-bodys3location) property of an `AWS::ApiGateway::RestApi` resource. The nested Amazon S3 properties are named differently.", "title": "DefinitionUri" }, "Description": { "__samPassThrough": { "markdownDescriptionOverride": "A description of the Api resource. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`Description`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html#cfn-apigateway-restapi-description) property of an `AWS::ApiGateway::RestApi` resource.", "schemaPath": [ "definitions", "AWS::ApiGateway::Stage", "properties", "Properties", "properties", "Description" ] }, "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "title": "Description" }, "DisableExecuteApiEndpoint": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "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`. To require that clients use a custom domain name to invoke your API, specify `True`. \n*Type*: Boolean \n*Required*: No \n*CloudFormation compatibility*: This property is similar to the `[ DisableExecuteApiEndpoint](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html#cfn-apigateway-restapi-disableexecuteapiendpoint)` property of an `AWS::ApiGateway::RestApi` resource. It is passed directly to the `disableExecuteApiEndpoint` property of an `[ x-amazon-apigateway-endpoint-configuration](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-swagger-extensions-endpoint-configuration.html)` extension, which gets added to the ` [ Body](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html#cfn-apigateway-restapi-body)` property of an `AWS::ApiGateway::RestApi` resource.", "title": "DisableExecuteApiEndpoint" }, "Domain": { "allOf": [ { "$ref": "#/definitions/samtranslator__internal__schema_source__aws_serverless_api__Domain" } ], "markdownDescription": "Configures a custom domain for this API Gateway API. \n*Type*: [DomainConfiguration](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-api-domainconfiguration.html) \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "Domain" }, "EndpointConfiguration": { "anyOf": [ { "type": "object" }, { "$ref": "#/definitions/EndpointConfiguration" } ], "markdownDescription": "The endpoint type of a REST API. \n*Type*: [EndpointConfiguration](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-api-endpointconfiguration.html) \n*Required*: No \n*CloudFormation compatibility*: This property is similar to the [`EndpointConfiguration`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html#cfn-apigateway-restapi-endpointconfiguration) property of an `AWS::ApiGateway::RestApi` resource. The nested configuration properties are named differently.", "title": "EndpointConfiguration" }, "FailOnWarnings": { "__samPassThrough": { "markdownDescriptionOverride": "Specifies whether to roll back the API creation (`true`) or not (`false`) when a warning is encountered. The default value is `false`. \n*Type*: Boolean \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`FailOnWarnings`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html#cfn-apigateway-restapi-failonwarnings) property of an `AWS::ApiGateway::RestApi` resource.", "schemaPath": [ "definitions", "AWS::ApiGateway::RestApi", "properties", "Properties", "properties", "FailOnWarnings" ] }, "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "title": "FailOnWarnings" }, "GatewayResponses": { "markdownDescription": "Configures Gateway Responses for an API. Gateway Responses are responses returned by API Gateway, either directly or through the use of Lambda Authorizers. For more information, see the documentation for the [Api Gateway OpenApi extension for Gateway Responses](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-swagger-extensions-gateway-responses.html). \n*Type*: Map \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "GatewayResponses", "type": "object" }, "MergeDefinitions": { "markdownDescription": "AWS SAM generates an OpenAPI specification from your API event source. Specify `true` to have AWS SAM merge this into the inline OpenAPI specification defined in your `AWS::Serverless::Api` resource. Specify `false` to not merge. \n`MergeDefinitions` requires the `DefinitionBody` property for `AWS::Serverless::Api` to be defined. `MergeDefinitions` is not compatible with the `DefinitionUri` property for `AWS::Serverless::Api`. \n*Default value*: `false` \n*Type*: Boolean \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "MergeDefinitions", "type": "boolean" }, "MethodSettings": { "__samPassThrough": { "markdownDescriptionOverride": "Configures all settings for API stage including Logging, Metrics, CacheTTL, Throttling. \n*Type*: List of [ MethodSetting](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-stage-methodsetting.html) \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`MethodSettings`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html#cfn-apigateway-stage-methodsettings) property of an `AWS::ApiGateway::Stage` resource.", "schemaPath": [ "definitions", "AWS::ApiGateway::Stage", "properties", "Properties", "properties", "MethodSettings" ] }, "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "title": "MethodSettings" }, "MinimumCompressionSize": { "__samPassThrough": { "markdownDescriptionOverride": "Allow compression of response bodies based on client's Accept-Encoding header. Compression is triggered when response body size is greater than or equal to your configured threshold. The maximum body size threshold is 10 MB (10,485,760 Bytes). - The following compression types are supported: gzip, deflate, and identity. \n*Type*: Integer \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`MinimumCompressionSize`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html#cfn-apigateway-restapi-minimumcompressionsize) property of an `AWS::ApiGateway::RestApi` resource.", "schemaPath": [ "definitions", "AWS::ApiGateway::RestApi", "properties", "Properties", "properties", "MinimumCompressionSize" ] }, "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "title": "MinimumCompressionSize" }, "Mode": { "__samPassThrough": { "markdownDescriptionOverride": "This property applies only when you use OpenAPI to define your REST API. The `Mode` determines how API Gateway handles resource updates. For more information, see [Mode](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html#cfn-apigateway-restapi-mode) property of the [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html) resource type. \n*Valid values*: `overwrite` or `merge` \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`Mode`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html#cfn-apigateway-restapi-mode) property of an `AWS::ApiGateway::RestApi` resource.", "schemaPath": [ "definitions", "AWS::ApiGateway::RestApi", "properties", "Properties", "properties", "Mode" ] }, "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "title": "Mode" }, "Models": { "markdownDescription": "The schemas to be used by your API methods. These schemas can be described using JSON or YAML. See the Examples section at the bottom of this page for example models. \n*Type*: Map \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "Models", "type": "object" }, "Name": { "__samPassThrough": { "markdownDescriptionOverride": "A name for the API Gateway RestApi resource \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`Name`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html#cfn-apigateway-restapi-name) property of an `AWS::ApiGateway::RestApi` resource.", "schemaPath": [ "definitions", "AWS::ApiGateway::RestApi", "properties", "Properties", "properties", "Name" ] }, "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "title": "Name" }, "OpenApiVersion": { "anyOf": [ { "type": "number" }, { "type": "string" } ], "markdownDescription": "Version of OpenApi to use. This can either be `2.0` for the Swagger specification, or one of the OpenApi 3.0 versions, like `3.0.1`. For more information about OpenAPI, see the [OpenAPI Specification](https://swagger.io/specification/). \n AWS SAM creates a stage called `Stage` by default. Setting this property to any valid value will prevent the creation of the stage `Stage`. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "OpenApiVersion" }, "Policy": { "__samPassThrough": { "markdownDescriptionOverride": "A policy document that contains the permissions for the API. To set the ARN for the policy, use the `!Join` intrinsic function with `\"\"` as delimiter and values of `\"execute-api:/\"` and `\"*\"`. \n*Type*: JSON \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [ Policy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html#cfn-apigateway-restapi-policy) property of an `AWS::ApiGateway::RestApi` resource.", "schemaPath": [ "definitions", "AWS::ApiGateway::RestApi", "properties", "Properties", "properties", "Policy" ] }, "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "title": "Policy" }, "PropagateTags": { "markdownDescription": "Indicate whether or not to pass tags from the `Tags` property to your [AWS::Serverless::Api](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-specification-generated-resources-api.html) generated resources. Specify `True` to propagate tags in your generated resources. \n*Type*: Boolean \n*Required*: No \n*Default*: `False` \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "PropagateTags", "type": "boolean" }, "SecurityPolicy": { "__samPassThrough": { "markdownDescriptionOverride": "The Transport Layer Security (TLS) version + cipher suite for this RestApi. \n*Type*: String \n*Required*: No \n*AWS CloudFormation compatibility*: This property is passed directly to the [`SecurityPolicy`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html#cfn-apigateway-restapi-securitypolicy) property of an `AWS::ApiGateway::RestApi` resource\\.", "schemaPath": [ "definitions", "AWS::ApiGateway::RestApi", "properties", "Properties", "properties", "SecurityPolicy" ] }, "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "title": "SecurityPolicy" }, "StageName": { "anyOf": [ { "type": "object" }, { "type": "string" } ], "markdownDescription": "The name of the stage, which API Gateway uses as the first path segment in the invoke Uniform Resource Identifier (https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/URI.html). \nTo reference the stage resource, use `.Stage`. For more information about referencing resources generated when an [AWS::Serverless::Api](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/#sam-resource-api.html#sam-resource-api) resource is specified, see [CloudFormation resources generated when AWS::Serverless::Api is specified](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-specification-generated-resources-api.html). For general information about generated CloudFormation resources, see [Generated CloudFormation resources for AWS SAM](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-specification-generated-resources.html). \n*Type*: String \n*Required*: Yes \n*CloudFormation compatibility*: This property is similar to the [`StageName`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html#cfn-apigateway-stage-stagename) property of an `AWS::ApiGateway::Stage` resource. It is required in SAM, but not required in API Gateway \n*Additional notes*: The Implicit API has a stage name of \"Prod\".", "title": "StageName" }, "Tags": { "markdownDescription": "A map (string to string) that specifies the tags to be added to this API Gateway stage. For details about valid keys and values for tags, see [Resource tag](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resource-tags.html) in the *AWS CloudFormation User Guide*. \n*Type*: Map \n*Required*: No \n*CloudFormation compatibility*: This property is similar to the [`Tags`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html#cfn-apigateway-stage-tags) property of an `AWS::ApiGateway::Stage` resource. The Tags property in SAM consists of Key:Value pairs; in CloudFormation it consists of a list of Tag objects.", "title": "Tags", "type": "object" }, "TracingEnabled": { "__samPassThrough": { "markdownDescriptionOverride": "Indicates whether active tracing with X-Ray is enabled for the stage. For more information about X-Ray, see [Tracing user requests to REST APIs using X-Ray](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-xray.html) in the *API Gateway Developer Guide*. \n*Type*: Boolean \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`TracingEnabled`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html#cfn-apigateway-stage-tracingenabled) property of an `AWS::ApiGateway::Stage` resource.", "schemaPath": [ "definitions", "AWS::ApiGateway::Stage", "properties", "Properties", "properties", "TracingEnabled" ] }, "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "title": "TracingEnabled" }, "Variables": { "__samPassThrough": { "markdownDescriptionOverride": "A map (string to string) 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._~:/?#&=,-]+`. \n*Type*: Map \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`Variables`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html#cfn-apigateway-stage-variables) property of an `AWS::ApiGateway::Stage` resource.", "schemaPath": [ "definitions", "AWS::ApiGateway::Stage", "properties", "Properties", "properties", "Variables" ] }, "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "title": "Variables" } }, "required": [ "StageName" ], "title": "Properties", "type": "object" }, "samtranslator__internal__schema_source__aws_serverless_api__Resource": { "additionalProperties": false, "properties": { "Condition": { "$ref": "#/definitions/PassThroughProp" }, "Connectors": { "additionalProperties": { "$ref": "#/definitions/EmbeddedConnector" }, "title": "Connectors", "type": "object" }, "DeletionPolicy": { "$ref": "#/definitions/PassThroughProp" }, "DependsOn": { "$ref": "#/definitions/PassThroughProp" }, "IgnoreGlobals": { "anyOf": [ { "type": "string" }, { "items": { "type": "string" }, "type": "array" } ], "title": "Ignoreglobals" }, "Metadata": { "$ref": "#/definitions/PassThroughProp" }, "Properties": { "$ref": "#/definitions/samtranslator__internal__schema_source__aws_serverless_api__Properties" }, "Type": { "enum": [ "AWS::Serverless::Api" ], "title": "Type", "type": "string" }, "UpdateReplacePolicy": { "$ref": "#/definitions/PassThroughProp" } }, "required": [ "Type", "Properties" ], "title": "Resource", "type": "object" }, "samtranslator__internal__schema_source__aws_serverless_api__ResourcePolicy": { "additionalProperties": false, "properties": { "AwsAccountBlacklist": { "items": { "anyOf": [ { "type": "string" }, { "type": "object" } ] }, "markdownDescription": "The AWS accounts to block. \n*Type*: List of String \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "AwsAccountBlacklist", "type": "array" }, "AwsAccountWhitelist": { "items": { "anyOf": [ { "type": "string" }, { "type": "object" } ] }, "markdownDescription": "The AWS accounts to allow. For an example use of this property, see the Examples section at the bottom of this page. \n*Type*: List of String \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "AwsAccountWhitelist", "type": "array" }, "CustomStatements": { "items": { "anyOf": [ { "type": "string" }, { "type": "object" } ] }, "markdownDescription": "A list of custom resource policy statements to apply to this API. For an example use of this property, see the Examples section at the bottom of this page. \n*Type*: List \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "CustomStatements", "type": "array" }, "IntrinsicVpcBlacklist": { "items": { "anyOf": [ { "type": "string" }, { "type": "object" } ] }, "markdownDescription": "The list of virtual private clouds (https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/VPCs.html) to block, where each VPC is specified as a reference such as a [dynamic reference](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/dynamic-references.html) or the `Ref` [intrinsic function](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-ref.html). For an example use of this property, see the Examples section at the bottom of this page. \n*Type*: List \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "IntrinsicVpcBlacklist", "type": "array" }, "IntrinsicVpcWhitelist": { "items": { "anyOf": [ { "type": "string" }, { "type": "object" } ] }, "markdownDescription": "The list of VPCs to allow, where each VPC is specified as a reference such as a [dynamic reference](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/dynamic-references.html) or the `Ref` [intrinsic function](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-ref.html). \n*Type*: List \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "IntrinsicVpcWhitelist", "type": "array" }, "IntrinsicVpceBlacklist": { "items": { "anyOf": [ { "type": "string" }, { "type": "object" } ] }, "markdownDescription": "The list of VPC endpoints to block, where each VPC endpoint is specified as a reference such as a [dynamic reference](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/dynamic-references.html) or the `Ref` [intrinsic function](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-ref.html). \n*Type*: List \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "IntrinsicVpceBlacklist", "type": "array" }, "IntrinsicVpceWhitelist": { "items": { "anyOf": [ { "type": "string" }, { "type": "object" } ] }, "markdownDescription": "The list of VPC endpoints to allow, where each VPC endpoint is specified as a reference such as a [dynamic reference](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/dynamic-references.html) or the `Ref` [intrinsic function](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-ref.html). For an example use of this property, see the Examples section at the bottom of this page. \n*Type*: List \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "IntrinsicVpceWhitelist", "type": "array" }, "IpRangeBlacklist": { "items": { "anyOf": [ { "type": "string" }, { "type": "object" } ] }, "markdownDescription": "The IP addresses or address ranges to block. For an example use of this property, see the Examples section at the bottom of this page. \n*Type*: List \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "IpRangeBlacklist", "type": "array" }, "IpRangeWhitelist": { "items": { "anyOf": [ { "type": "string" }, { "type": "object" } ] }, "markdownDescription": "The IP addresses or address ranges to allow. \n*Type*: List \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "IpRangeWhitelist", "type": "array" }, "SourceVpcBlacklist": { "items": { "anyOf": [ { "type": "string" }, { "type": "object" } ] }, "markdownDescription": "The source VPC or VPC endpoints to block. Source VPC names must start with `\"vpc-\"` and source VPC endpoint names must start with `\"vpce-\"`. For an example use of this property, see the Examples section at the bottom of this page. \n*Type*: List \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "SourceVpcBlacklist", "type": "array" }, "SourceVpcWhitelist": { "items": { "anyOf": [ { "type": "string" }, { "type": "object" } ] }, "markdownDescription": "The source VPC or VPC endpoints to allow. Source VPC names must start with `\"vpc-\"` and source VPC endpoint names must start with `\"vpce-\"`. \n*Type*: List \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "SourceVpcWhitelist", "type": "array" } }, "title": "ResourcePolicy", "type": "object" }, "samtranslator__internal__schema_source__aws_serverless_api__Route53": { "additionalProperties": false, "properties": { "DistributionDomainName": { "__samPassThrough": { "markdownDescriptionOverride": "Configures a custom distribution of the API custom domain name. \n*Type*: String \n*Required*: No \n*Default*: Use the API Gateway distribution. \n*CloudFormation compatibility*: This property is passed directly to the [`DNSName`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-aliastarget-1.html#cfn-route53-aliastarget-dnshostname) property of an `AWS::Route53::RecordSetGroup AliasTarget` resource. \n*Additional notes*: The domain name of a [CloudFront distribution](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-distribution.html).", "schemaPath": [ "definitions", "AWS::Route53::RecordSetGroup.AliasTarget", "properties", "DNSName" ] }, "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "title": "DistributionDomainName" }, "EvaluateTargetHealth": { "__samPassThrough": { "markdownDescriptionOverride": "When EvaluateTargetHealth is true, an alias record inherits the health of the referenced AWS resource, such as an Elastic Load Balancing load balancer or another record in the hosted zone. \n*Type*: Boolean \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`EvaluateTargetHealth`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-aliastarget.html#cfn-route53-aliastarget-evaluatetargethealth) property of an `AWS::Route53::RecordSetGroup AliasTarget` resource. \n*Additional notes*: You can't set EvaluateTargetHealth to true when the alias target is a CloudFront distribution.", "schemaPath": [ "definitions", "AWS::Route53::RecordSetGroup.AliasTarget", "properties", "EvaluateTargetHealth" ] }, "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "title": "EvaluateTargetHealth" }, "HostedZoneId": { "__samPassThrough": { "markdownDescriptionOverride": "The ID of the hosted zone that you want to create records in. \nSpecify either `HostedZoneName` or `HostedZoneId`, but not both. If you have multiple hosted zones with the same domain name, you must specify the hosted zone using `HostedZoneId`. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`HostedZoneId`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset-1.html#cfn-route53-recordset-hostedzoneid) property of an `AWS::Route53::RecordSetGroup RecordSet` resource.", "schemaPath": [ "definitions", "AWS::Route53::RecordSetGroup.RecordSet", "properties", "HostedZoneId" ] }, "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "title": "HostedZoneId" }, "HostedZoneName": { "__samPassThrough": { "markdownDescriptionOverride": "The name of the hosted zone that you want to create records in. \nSpecify either `HostedZoneName` or `HostedZoneId`, but not both. If you have multiple hosted zones with the same domain name, you must specify the hosted zone using `HostedZoneId`. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`HostedZoneName`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset-1.html#cfn-route53-recordset-hostedzonename) property of an `AWS::Route53::RecordSetGroup RecordSet` resource.", "schemaPath": [ "definitions", "AWS::Route53::RecordSetGroup.RecordSet", "properties", "HostedZoneName" ] }, "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "title": "HostedZoneName" }, "IpV6": { "markdownDescription": "When this property is set, AWS SAM creates a `AWS::Route53::RecordSet` resource and sets [Type](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset.html#cfn-route53-recordset-type) to `AAAA` for the provided HostedZone. \n*Type*: Boolean \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "IpV6", "type": "boolean" }, "Region": { "__samPassThrough": { "markdownDescriptionOverride": "*Latency-based resource record sets only:* The Amazon EC2 Region where you created the resource that this resource record set refers to. The resource typically is an AWS resource, such as an EC2 instance or an ELB load balancer, and is referred to by an IP address or a DNS domain name, depending on the record type. \nWhen Amazon Route\u00a053 receives a DNS query for a domain name and type for which you have created latency resource record sets, Route\u00a053 selects the latency resource record set that has the lowest latency between the end user and the associated Amazon EC2 Region. Route\u00a053 then returns the value that is associated with the selected resource record set. \nNote the following: \n+ You can only specify one `ResourceRecord` per latency resource record set.\n+ You can only create one latency resource record set for each Amazon EC2 Region.\n+ You aren't required to create latency resource record sets for all Amazon EC2 Regions. Route\u00a053 will choose the region with the best latency from among the regions that you create latency resource record sets for.\n+ You can't create non-latency resource record sets that have the same values for the `Name` and `Type` elements as latency resource record sets.\n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the `[ Region](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset-1.html#cfn-route53-recordset-region)` property of an `AWS::Route53::RecordSetGroup` `RecordSet` data type.", "schemaPath": [ "definitions", "AWS::Route53::RecordSetGroup.RecordSet", "properties", "Region" ] }, "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "title": "Region" }, "SeparateRecordSetGroup": { "title": "Separaterecordsetgroup", "type": "boolean" }, "SetIdentifier": { "__samPassThrough": { "markdownDescriptionOverride": "*Resource record sets that have a routing policy other than simple:* An identifier that differentiates among multiple resource record sets that have the same combination of name and type, such as multiple weighted resource record sets named acme.example.com that have a type of A. In a group of resource record sets that have the same name and type, the value of `SetIdentifier` must be unique for each resource record set. \nFor information about routing policies, see [Choosing a routing policy](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/routing-policy.html) in the *Amazon Route\u00a053 Developer Guide*. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the `[ SetIdentifier](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset-1.html#cfn-route53-recordset-setidentifier)` property of an `AWS::Route53::RecordSetGroup` `RecordSet` data type.", "schemaPath": [ "definitions", "AWS::Route53::RecordSetGroup.RecordSet", "properties", "SetIdentifier" ] }, "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "title": "SetIdentifier" }, "VpcEndpointDomainName": { "__samPassThrough": { "markdownDescriptionOverride": "A DNS name of the VPC interface endpoint associated with the API Gateway VPC service. This property is required only for private domains. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`DNSName`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset-aliastarget.html) property of an `AWS::Route53::RecordSet` `AliasTarget` field.", "schemaPath": [ "definitions", "AWS::Route53::RecordSet.AliasTarget", "properties", "DNSName" ] }, "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "title": "VpcEndpointDomainName" }, "VpcEndpointHostedZoneId": { "__samPassThrough": { "markdownDescriptionOverride": "The hosted zone ID of the VPC interface endpoint associated with the API Gateway VPC service. This property is required only for private domains. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`HostedZoneId`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset-aliastarget.html) property of an `AWS::Route53::RecordSet` `AliasTarget` field.", "schemaPath": [ "definitions", "AWS::Route53::RecordSet.AliasTarget", "properties", "HostedZoneId" ] }, "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "title": "VpcEndpointHostedZoneId" } }, "title": "Route53", "type": "object" }, "samtranslator__internal__schema_source__aws_serverless_application__Properties": { "additionalProperties": false, "properties": { "Location": { "anyOf": [ { "type": "string" }, { "$ref": "#/definitions/Location" } ], "markdownDescription": "Template URL, file path, or location object of a nested application. \nIf a template URL is provided, it must follow the format specified in the [CloudFormation TemplateUrl documentation](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-stack.html#cfn-cloudformation-stack-templateurl) and contain a valid CloudFormation or SAM template. An [ApplicationLocationObject](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-application-applicationlocationobject.html) can be used to specify an application that has been published to the [AWS Serverless Application Repository](https://docs.aws.amazon.com/serverlessrepo/latest/devguide/what-is-serverlessrepo.html). \nIf a local file path is provided, the template must go through the workflow that includes the `sam deploy` or `sam package` command, in order for the application to be transformed properly. \n*Type*: String \\$1 [ApplicationLocationObject](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-application-applicationlocationobject.html) \n*Required*: Yes \n*CloudFormation compatibility*: This property is similar to the [`TemplateURL`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-stack.html#cfn-cloudformation-stack-templateurl) property of an `AWS::CloudFormation::Stack` resource. The CloudFormation version does not take an [ApplicationLocationObject](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-application-applicationlocationobject.html) to retrieve an application from the AWS Serverless Application Repository.", "title": "Location" }, "NotificationARNs": { "__samPassThrough": { "markdownDescriptionOverride": "A list of existing Amazon SNS topics where notifications about stack events are sent. \n*Type*: List \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`NotificationARNs`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-stack.html#cfn-cloudformation-stack-notificationarns) property of an `AWS::CloudFormation::Stack` resource.", "schemaPath": [ "definitions", "AWS::CloudFormation::Stack", "properties", "Properties", "properties", "NotificationARNs" ] }, "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "title": "NotificationARNs" }, "Parameters": { "__samPassThrough": { "markdownDescriptionOverride": "Application parameter values. \n*Type*: Map \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`Parameters`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-stack.html#cfn-cloudformation-stack-parameters) property of an `AWS::CloudFormation::Stack` resource.", "schemaPath": [ "definitions", "AWS::CloudFormation::Stack", "properties", "Properties", "properties", "Parameters" ] }, "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "title": "Parameters" }, "Tags": { "markdownDescription": "A map (string to string) that specifies the tags to be added to this application. Keys and values are limited to alphanumeric characters. Keys can be 1 to 127 Unicode characters in length and cannot be prefixed with aws:. Values can be 1 to 255 Unicode characters in length. \n*Type*: Map \n*Required*: No \n*CloudFormation compatibility*: This property is similar to the [`Tags`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-stack.html#cfn-cloudformation-stack-tags) property of an `AWS::CloudFormation::Stack` resource. The Tags property in SAM consists of Key:Value pairs; in CloudFormation it consists of a list of Tag objects. When the stack is created, SAM will automatically add a `lambda:createdBy:SAM` tag to this application. In addition, if this application is from the AWS Serverless Application Repository, then SAM will also automatically the two additional tags `serverlessrepo:applicationId:ApplicationId` and `serverlessrepo:semanticVersion:SemanticVersion`.", "title": "Tags", "type": "object" }, "TimeoutInMinutes": { "__samPassThrough": { "markdownDescriptionOverride": "The length of time, in minutes, that CloudFormation waits for the nested stack to reach the `CREATE_COMPLETE` state. The default is no timeout. When CloudFormation detects that the nested stack has reached the `CREATE_COMPLETE` state, it marks the nested stack resource as `CREATE_COMPLETE` in the parent stack and resumes creating the parent stack. If the timeout period expires before the nested stack reaches `CREATE_COMPLETE`, CloudFormation marks the nested stack as failed and rolls back both the nested stack and parent stack. \n*Type*: Integer \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`TimeoutInMinutes`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-stack.html#cfn-cloudformation-stack-timeoutinminutes) property of an `AWS::CloudFormation::Stack` resource.", "schemaPath": [ "definitions", "AWS::CloudFormation::Stack", "properties", "Properties", "properties", "TimeoutInMinutes" ] }, "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "title": "TimeoutInMinutes" } }, "required": [ "Location" ], "title": "Properties", "type": "object" }, "samtranslator__internal__schema_source__aws_serverless_application__Resource": { "additionalProperties": false, "properties": { "Condition": { "$ref": "#/definitions/PassThroughProp" }, "DeletionPolicy": { "$ref": "#/definitions/PassThroughProp" }, "DependsOn": { "$ref": "#/definitions/PassThroughProp" }, "IgnoreGlobals": { "anyOf": [ { "type": "string" }, { "items": { "type": "string" }, "type": "array" } ], "title": "Ignoreglobals" }, "Metadata": { "$ref": "#/definitions/PassThroughProp" }, "Properties": { "$ref": "#/definitions/samtranslator__internal__schema_source__aws_serverless_application__Properties" }, "Type": { "enum": [ "AWS::Serverless::Application" ], "title": "Type", "type": "string" }, "UpdateReplacePolicy": { "$ref": "#/definitions/PassThroughProp" } }, "required": [ "Type", "Properties" ], "title": "Resource", "type": "object" }, "samtranslator__internal__schema_source__aws_serverless_capacity_provider__Globals": { "additionalProperties": false, "properties": { "InstanceRequirements": { "allOf": [ { "$ref": "#/definitions/InstanceRequirements" } ], "markdownDescription": "Specifications for the types of compute instances that the capacity provider can use. This includes architecture requirements and `allowed` or `excluded` instance types. \n*Type*: [InstanceRequirements](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-capacityprovider-instancerequirements.html) \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`InstanceRequirements`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-capacityprovider.html#cfn-lambda-capacityprovider-instancerequirements) property of an `AWS::Lambda::CapacityProvider` resource.", "title": "InstanceRequirements" }, "KmsKeyArn": { "__samPassThrough": { "markdownDescriptionOverride": "The ARN of the AWS KMS key used to encrypt data at rest and in transit for the capacity provider. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`KmsKeyArn`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-capacityprovider.html#cfn-lambda-capacityprovider-kmskeyarn) property of an `AWS::Lambda::CapacityProvider` resource.", "schemaPath": [ "definitions", "AWS::Lambda::CapacityProvider", "properties", "Properties", "properties", "KmsKeyArn" ] }, "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "title": "KmsKeyArn" }, "OperatorRole": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The ARN of the operator role for Lambda with permissions to create and manage Amazon EC2 instances and related resources in the customer account. If not provided, AWS SAM automatically generates a role with the necessary permissions. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`CapacityProviderOperatorRoleArn`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-capacityprovider-capacityproviderpermissionsconfig.html#cfn-lambda-capacityprovider-capacityproviderpermissionsconfig-capacityprovideroperatorrolearn) property of [`PermissionsConfig`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-capacityprovider.html#cfn-lambda-capacityprovider-permissionsconfig) of an `AWS::Lambda::CapacityProvider` resource.", "title": "OperatorRole" }, "PropagateTags": { "markdownDescription": "Indicates whether or not to pass tags from the Tags property to your `AWS::Serverless::CapacityProvider` generated resources. Set this to `True` to propagate tags in your generated resources. \n*Type*: Boolean \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "PropagateTags", "type": "boolean" }, "ScalingConfig": { "allOf": [ { "$ref": "#/definitions/ScalingConfig" } ], "markdownDescription": "The scaling configuration for the capacity provider. Defines how the capacity provider scales Amazon EC2 instances based on demand. \n*Type*: [ScalingConfig](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-capacityprovider-scalingconfig.html) \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`CapacityProviderScalingConfig`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-capacityprovider.html#cfn-lambda-capacityprovider-capacityproviderscalingconfig) property of an `AWS::Lambda::CapacityProvider` resource.", "title": "ScalingConfig" }, "Tags": { "markdownDescription": "A map of key-value pairs to apply to the capacity provider and its associated resources. \n*Type*: Map \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`Tags`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-capacityprovider.html#cfn-lambda-capacityprovider-tags) property of an `AWS::Lambda::CapacityProvider` resource. The `Tags` property in AWS SAM consists of key-value pairs (whereas in CloudFormation this property consists of a list of Tag objects). Also, AWS SAM automatically adds a `lambda:createdBy:SAM` tag to this Lambda function, and to the default roles generated for this function.", "title": "Tags", "type": "object" }, "VpcConfig": { "allOf": [ { "$ref": "#/definitions/VpcConfig" } ], "markdownDescription": "The VPC configuration for the capacity provider. Specifies the VPC subnets and security groups where Amazon EC2 instances will be launched. \n*Type*: [VpcConfig](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-capacityprovider-vpcconfig.html) \n*Required*: Yes \n*CloudFormation compatibility*: This property is passed directly to the [`VpcConfig`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-capacityprovider.html#cfn-lambda-capacityprovider-vpcconfig) property of an `AWS::Lambda::CapacityProvider` resource.", "title": "VpcConfig" } }, "title": "Globals", "type": "object" }, "samtranslator__internal__schema_source__aws_serverless_capacity_provider__Properties": { "additionalProperties": false, "properties": { "CapacityProviderName": { "__samPassThrough": { "markdownDescriptionOverride": "The name of the capacity provider. This name must be unique within your AWS account and region. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`CapacityProviderName`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-capacityprovider.html#cfn-lambda-capacityprovider-capacityprovidername) property of an `AWS::Lambda::CapacityProvider` resource.", "schemaPath": [ "definitions", "AWS::Lambda::CapacityProvider", "properties", "Properties", "properties", "CapacityProviderName" ] }, "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "title": "CapacityProviderName" }, "InstanceRequirements": { "allOf": [ { "$ref": "#/definitions/InstanceRequirements" } ], "markdownDescription": "Specifications for the types of compute instances that the capacity provider can use. This includes architecture requirements and `allowed` or `excluded` instance types. \n*Type*: [InstanceRequirements](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-capacityprovider-instancerequirements.html) \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`InstanceRequirements`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-capacityprovider.html#cfn-lambda-capacityprovider-instancerequirements) property of an `AWS::Lambda::CapacityProvider` resource.", "title": "InstanceRequirements" }, "KmsKeyArn": { "__samPassThrough": { "markdownDescriptionOverride": "The ARN of the AWS KMS key used to encrypt data at rest and in transit for the capacity provider. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`KmsKeyArn`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-capacityprovider.html#cfn-lambda-capacityprovider-kmskeyarn) property of an `AWS::Lambda::CapacityProvider` resource.", "schemaPath": [ "definitions", "AWS::Lambda::CapacityProvider", "properties", "Properties", "properties", "KmsKeyArn" ] }, "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "title": "KmsKeyArn" }, "OperatorRole": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The ARN of the operator role for Lambda with permissions to create and manage Amazon EC2 instances and related resources in the customer account. If not provided, AWS SAM automatically generates a role with the necessary permissions. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`CapacityProviderOperatorRoleArn`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-capacityprovider-capacityproviderpermissionsconfig.html#cfn-lambda-capacityprovider-capacityproviderpermissionsconfig-capacityprovideroperatorrolearn) property of [`PermissionsConfig`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-capacityprovider.html#cfn-lambda-capacityprovider-permissionsconfig) of an `AWS::Lambda::CapacityProvider` resource.", "title": "OperatorRole" }, "PropagateTags": { "markdownDescription": "Indicates whether or not to pass tags from the Tags property to your `AWS::Serverless::CapacityProvider` generated resources. Set this to `True` to propagate tags in your generated resources. \n*Type*: Boolean \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "PropagateTags", "type": "boolean" }, "ScalingConfig": { "allOf": [ { "$ref": "#/definitions/ScalingConfig" } ], "markdownDescription": "The scaling configuration for the capacity provider. Defines how the capacity provider scales Amazon EC2 instances based on demand. \n*Type*: [ScalingConfig](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-capacityprovider-scalingconfig.html) \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`CapacityProviderScalingConfig`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-capacityprovider.html#cfn-lambda-capacityprovider-capacityproviderscalingconfig) property of an `AWS::Lambda::CapacityProvider` resource.", "title": "ScalingConfig" }, "Tags": { "markdownDescription": "A map of key-value pairs to apply to the capacity provider and its associated resources. \n*Type*: Map \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`Tags`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-capacityprovider.html#cfn-lambda-capacityprovider-tags) property of an `AWS::Lambda::CapacityProvider` resource. The `Tags` property in AWS SAM consists of key-value pairs (whereas in CloudFormation this property consists of a list of Tag objects). Also, AWS SAM automatically adds a `lambda:createdBy:SAM` tag to this Lambda function, and to the default roles generated for this function.", "title": "Tags", "type": "object" }, "VpcConfig": { "allOf": [ { "$ref": "#/definitions/VpcConfig" } ], "markdownDescription": "The VPC configuration for the capacity provider. Specifies the VPC subnets and security groups where Amazon EC2 instances will be launched. \n*Type*: [VpcConfig](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-capacityprovider-vpcconfig.html) \n*Required*: Yes \n*CloudFormation compatibility*: This property is passed directly to the [`VpcConfig`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-capacityprovider.html#cfn-lambda-capacityprovider-vpcconfig) property of an `AWS::Lambda::CapacityProvider` resource.", "title": "VpcConfig" } }, "required": [ "VpcConfig" ], "title": "Properties", "type": "object" }, "samtranslator__internal__schema_source__aws_serverless_capacity_provider__Resource": { "additionalProperties": false, "properties": { "Condition": { "$ref": "#/definitions/PassThroughProp" }, "DeletionPolicy": { "$ref": "#/definitions/PassThroughProp" }, "DependsOn": { "$ref": "#/definitions/PassThroughProp" }, "IgnoreGlobals": { "anyOf": [ { "type": "string" }, { "items": { "type": "string" }, "type": "array" } ], "title": "Ignoreglobals" }, "Metadata": { "$ref": "#/definitions/PassThroughProp" }, "Properties": { "$ref": "#/definitions/samtranslator__internal__schema_source__aws_serverless_capacity_provider__Properties" }, "Type": { "enum": [ "AWS::Serverless::CapacityProvider" ], "title": "Type", "type": "string" }, "UpdateReplacePolicy": { "$ref": "#/definitions/PassThroughProp" } }, "required": [ "Type", "Properties" ], "title": "Resource", "type": "object" }, "samtranslator__internal__schema_source__aws_serverless_connector__Properties": { "additionalProperties": false, "properties": { "Destination": { "anyOf": [ { "$ref": "#/definitions/ResourceReference" }, { "items": { "$ref": "#/definitions/ResourceReference" }, "type": "array" } ], "markdownDescription": "The destination resource. \n*Type*: [ ResourceReference](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-connector-resourcereference.html) \\$1 List of [ResourceReference](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-connector-resourcereference.html) \n*Required*: Yes \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "Destination" }, "Permissions": { "items": { "enum": [ "Read", "Write" ], "type": "string" }, "markdownDescription": "The permission type that the source resource is allowed to perform on the destination resource. \n`Read` includes AWS Identity and Access Management (https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/IAM.html) actions that allow reading data from the resource. \n`Write` inclues https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/IAM.html actions that allow initiating and writing data to a resource. \n*Valid values*: `Read` or `Write` \n*Type*: List \n*Required*: Yes \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "Permissions", "type": "array" }, "Source": { "allOf": [ { "$ref": "#/definitions/ResourceReference" } ], "markdownDescription": "The source resource. Required when using the `AWS::Serverless::Connector` syntax. \n*Type*: [ResourceReference](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-connector-resourcereference.html) \n*Required*: Conditional \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "Source" } }, "required": [ "Source", "Destination", "Permissions" ], "title": "Properties", "type": "object" }, "samtranslator__internal__schema_source__aws_serverless_connector__Resource": { "additionalProperties": false, "properties": { "Condition": { "$ref": "#/definitions/PassThroughProp" }, "DeletionPolicy": { "$ref": "#/definitions/PassThroughProp" }, "DependsOn": { "$ref": "#/definitions/PassThroughProp" }, "IgnoreGlobals": { "anyOf": [ { "type": "string" }, { "items": { "type": "string" }, "type": "array" } ], "title": "Ignoreglobals" }, "Metadata": { "$ref": "#/definitions/PassThroughProp" }, "Properties": { "$ref": "#/definitions/samtranslator__internal__schema_source__aws_serverless_connector__Properties" }, "Type": { "enum": [ "AWS::Serverless::Connector" ], "title": "Type", "type": "string" }, "UpdateReplacePolicy": { "$ref": "#/definitions/PassThroughProp" } }, "required": [ "Type", "Properties" ], "title": "Resource", "type": "object" }, "samtranslator__internal__schema_source__aws_serverless_function__ApiEvent": { "additionalProperties": false, "properties": { "Properties": { "allOf": [ { "$ref": "#/definitions/samtranslator__internal__schema_source__aws_serverless_function__ApiEventProperties" } ], "markdownDescription": "Object describing properties of this event mapping. The set of properties must conform to the defined Type. \n*Type*: [AlexaSkill](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-alexaskill.html) \\$1 [Api](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-api.html) \\$1 [CloudWatchEvent](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-cloudwatchevent.html) \\$1 [CloudWatchLogs](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-cloudwatchlogs.html) \\$1 [Cognito](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-cognito.html) \\$1 [DocumentDB](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-documentdb.html) \\$1 [DynamoDB](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-dynamodb.html) \\$1 [EventBridgeRule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-eventbridgerule.html) \\$1 [HttpApi](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-httpapi.html) \\$1 [IoTRule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-iotrule.html) \\$1 [Kinesis](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-kinesis.html) \\$1 [MQ](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-mq.html) \\$1 [MSK](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-msk.html) \\$1 [S3](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-s3.html) \\$1 [Schedule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-schedule.html) \\$1 [ScheduleV2](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-schedulev2.html) \\$1 [SelfManagedKafka](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-selfmanagedkafka.html) \\$1 [SNS](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-sns.html) \\$1 [SQS](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-sqs.html) \n*Required*: Yes \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "Properties" }, "Type": { "enum": [ "Api" ], "markdownDescription": "The event type. \n*Valid values*: `AlexaSkill`, `Api`, `CloudWatchEvent`, `CloudWatchLogs`, `Cognito`, `DocumentDB`, `DynamoDB`, `EventBridgeRule`, `HttpApi`, `IoTRule`, `Kinesis`, `MQ`, `MSK`, `S3`, `Schedule`, `ScheduleV2`, `SelfManagedKafka`, `SNS`, `SQS` \n*Type*: String \n*Required*: Yes \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "Type", "type": "string" } }, "required": [ "Type", "Properties" ], "title": "ApiEvent", "type": "object" }, "samtranslator__internal__schema_source__aws_serverless_function__ApiEventProperties": { "additionalProperties": false, "properties": { "Auth": { "allOf": [ { "$ref": "#/definitions/ApiAuth" } ], "markdownDescription": "Auth configuration for this specific Api\\$1Path\\$1Method. \nUseful for overriding the API's `DefaultAuthorizer` setting auth config on an individual path when no `DefaultAuthorizer` is specified or overriding the default `ApiKeyRequired` setting. \n*Type*: [ApiFunctionAuth](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-apifunctionauth.html) \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "Auth" }, "Method": { "markdownDescription": "HTTP method for which this function is invoked. Options include `DELETE`, `GET`, `HEAD`, `OPTIONS`, `PATCH`, `POST`, `PUT`, and `ANY`. Refer to [Set up an HTTP method](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-method-settings-method-request.html#setup-method-add-http-method) in the *API Gateway Developer Guide* for details. \n*Type*: String \n*Required*: Yes \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "Method", "type": "string" }, "Path": { "markdownDescription": "Uri path for which this function is invoked. Must start with `/`. \n*Type*: String \n*Required*: Yes \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "Path", "type": "string" }, "RequestModel": { "allOf": [ { "$ref": "#/definitions/RequestModel" } ], "markdownDescription": "Request model to use for this specific Api\\$1Path\\$1Method. This should reference the name of a model specified in the `Models` section of an [AWS::Serverless::Api](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-resource-api.html) resource. \n*Type*: [RequestModel](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-requestmodel.html) \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "RequestModel" }, "RequestParameters": { "items": { "anyOf": [ { "type": "string" }, { "additionalProperties": { "$ref": "#/definitions/RequestParameters" }, "type": "object" } ] }, "markdownDescription": "Request parameters configuration for this specific Api\\$1Path\\$1Method. All parameter names must start with `method.request` and must be limited to `method.request.header`, `method.request.querystring`, or `method.request.path`. \nA list can contain both parameter name strings and [RequestParameter](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-requestparameter.html) objects. For strings, the `Required` and `Caching` properties will default to `false`. \n*Type*: List of [ String \\$1 [RequestParameter](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-requestparameter.html) ] \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "RequestParameters", "type": "array" }, "RestApiId": { "anyOf": [ { "type": "string" }, { "$ref": "#/definitions/Ref" } ], "markdownDescription": "Identifier of a RestApi resource, which must contain an operation with the given path and method. Typically, this is set to reference an [AWS::Serverless::Api](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-resource-api.html) resource defined in this template. \nIf you don't define this property, AWS SAM creates a default [AWS::Serverless::Api](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-resource-api.html) resource using a generated `OpenApi` document. That resource contains a union of all paths and methods defined by `Api` events in the same template that do not specify a `RestApiId`. \nThis cannot reference an [AWS::Serverless::Api](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-resource-api.html) resource defined in another template. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "RestApiId" }, "TimeoutInMillis": { "__samPassThrough": { "markdownDescriptionOverride": "Custom timeout between 50 and 29,000 milliseconds. \nWhen you specify this property, AWS SAM modifies your OpenAPI definition. The OpenAPI definition must be specified inline using the `DefinitionBody` property. \n*Type*: Integer \n*Required*: No \n*Default*: 29,000 milliseconds or 29 seconds \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "schemaPath": [ "definitions", "AWS::ApiGateway::Method.Integration", "properties", "TimeoutInMillis" ] }, "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "title": "TimeoutInMillis" } }, "required": [ "Method", "Path" ], "title": "ApiEventProperties", "type": "object" }, "samtranslator__internal__schema_source__aws_serverless_function__CloudWatchEvent": { "additionalProperties": false, "properties": { "Properties": { "allOf": [ { "$ref": "#/definitions/samtranslator__internal__schema_source__aws_serverless_function__CloudWatchEventProperties" } ], "markdownDescription": "Object describing properties of this event mapping. The set of properties must conform to the defined Type. \n*Type*: [AlexaSkill](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-alexaskill.html) \\$1 [Api](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-api.html) \\$1 [CloudWatchEvent](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-cloudwatchevent.html) \\$1 [CloudWatchLogs](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-cloudwatchlogs.html) \\$1 [Cognito](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-cognito.html) \\$1 [DocumentDB](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-documentdb.html) \\$1 [DynamoDB](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-dynamodb.html) \\$1 [EventBridgeRule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-eventbridgerule.html) \\$1 [HttpApi](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-httpapi.html) \\$1 [IoTRule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-iotrule.html) \\$1 [Kinesis](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-kinesis.html) \\$1 [MQ](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-mq.html) \\$1 [MSK](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-msk.html) \\$1 [S3](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-s3.html) \\$1 [Schedule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-schedule.html) \\$1 [ScheduleV2](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-schedulev2.html) \\$1 [SelfManagedKafka](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-selfmanagedkafka.html) \\$1 [SNS](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-sns.html) \\$1 [SQS](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-sqs.html) \n*Required*: Yes \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "Properties" }, "Type": { "enum": [ "CloudWatchEvent" ], "markdownDescription": "The event type. \n*Valid values*: `AlexaSkill`, `Api`, `CloudWatchEvent`, `CloudWatchLogs`, `Cognito`, `DocumentDB`, `DynamoDB`, `EventBridgeRule`, `HttpApi`, `IoTRule`, `Kinesis`, `MQ`, `MSK`, `S3`, `Schedule`, `ScheduleV2`, `SelfManagedKafka`, `SNS`, `SQS` \n*Type*: String \n*Required*: Yes \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "Type", "type": "string" } }, "required": [ "Type", "Properties" ], "title": "CloudWatchEvent", "type": "object" }, "samtranslator__internal__schema_source__aws_serverless_function__CloudWatchEventProperties": { "additionalProperties": false, "properties": { "Enabled": { "markdownDescription": "Indicates whether the rule is enabled. \nTo disable the rule, set this property to `false`. \nSpecify either the `Enabled` or `State` property, but not both.\n*Type*: Boolean \n*Required*: No \n*CloudFormation compatibility*: This property is similar to the [`State`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-rule.html#cfn-events-rule-state) property of an `AWS::Events::Rule` resource. If this property is set to `true` then AWS SAM passes `ENABLED`, otherwise it passes `DISABLED`.", "title": "Enabled", "type": "boolean" }, "EventBusName": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The event bus to associate with this rule. If you omit this property, AWS SAM uses the default event bus. \n*Type*: String \n*Required*: No \n*Default*: Default event bus \n*CloudFormation compatibility*: This property is passed directly to the [`EventBusName`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-rule.html#cfn-events-rule-eventbusname) property of an `AWS::Events::Rule` resource.", "title": "EventBusName" }, "Input": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "Valid JSON text passed to the target. If you use this property, nothing from the event text itself is passed to the target. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`Input`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-target.html#cfn-events-rule-target-input) property of an `AWS::Events::Rule Target` resource.", "title": "Input" }, "InputPath": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "When you don't want to pass the entire matched event to the target, use the `InputPath` property to describe which part of the event to pass. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`InputPath`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-target.html#cfn-events-rule-target-inputpath) property of an `AWS::Events::Rule Target` resource.", "title": "InputPath" }, "Pattern": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "Describes which events are routed to the specified target. For more information, see [Events and Event Patterns in EventBridge](https://docs.aws.amazon.com/eventbridge/latest/userguide/eventbridge-and-event-patterns.html) in the *Amazon EventBridge User Guide*. \n*Type*: [EventPattern](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-rule.html#cfn-events-rule-eventpattern) \n*Required*: Yes \n*CloudFormation compatibility*: This property is passed directly to the [`EventPattern`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-rule.html#cfn-events-rule-eventpattern) property of an `AWS::Events::Rule` resource.", "title": "Pattern" }, "State": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The state of the rule. \n*Accepted values:* `DISABLED | ENABLED` \nSpecify either the `Enabled` or `State` property, but not both.\n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`State`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-rule.html#cfn-events-rule-state) property of an `AWS::Events::Rule` resource.", "title": "State" } }, "title": "CloudWatchEventProperties", "type": "object" }, "samtranslator__internal__schema_source__aws_serverless_function__DeadLetterConfig": { "additionalProperties": false, "properties": { "Arn": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The Amazon Resource Name (https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/ARN.html) of the Amazon SQS queue specified as the target for the dead-letter queue. \nSpecify either the `Type` property or `Arn` property, but not both.\n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`Arn`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-deadletterconfig.html#cfn-events-rule-deadletterconfig-arn) property of the `AWS::Events::Rule` `DeadLetterConfig` data type.", "title": "Arn" }, "QueueLogicalId": { "markdownDescription": "The custom name of the dead letter queue that AWS SAM creates if `Type` is specified. \nIf the `Type` property is not set, this property is ignored.\n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "QueueLogicalId", "type": "string" }, "Type": { "enum": [ "SQS" ], "markdownDescription": "The type of the queue. When this property is set, AWS SAM automatically creates a dead-letter queue and attaches necessary [resource-based policy](https://docs.aws.amazon.com/eventbridge/latest/userguide/rule-dlq.html#dlq-perms) to grant permission to rule resource to send events to the queue. \nSpecify either the `Type` property or `Arn` property, but not both.\n*Valid values*: `SQS` \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "Type", "type": "string" } }, "title": "DeadLetterConfig", "type": "object" }, "samtranslator__internal__schema_source__aws_serverless_function__EventBridgeRuleEvent": { "additionalProperties": false, "properties": { "Properties": { "allOf": [ { "$ref": "#/definitions/samtranslator__internal__schema_source__aws_serverless_function__EventBridgeRuleEventProperties" } ], "markdownDescription": "Object describing properties of this event mapping. The set of properties must conform to the defined Type. \n*Type*: [AlexaSkill](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-alexaskill.html) \\$1 [Api](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-api.html) \\$1 [CloudWatchEvent](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-cloudwatchevent.html) \\$1 [CloudWatchLogs](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-cloudwatchlogs.html) \\$1 [Cognito](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-cognito.html) \\$1 [DocumentDB](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-documentdb.html) \\$1 [DynamoDB](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-dynamodb.html) \\$1 [EventBridgeRule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-eventbridgerule.html) \\$1 [HttpApi](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-httpapi.html) \\$1 [IoTRule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-iotrule.html) \\$1 [Kinesis](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-kinesis.html) \\$1 [MQ](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-mq.html) \\$1 [MSK](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-msk.html) \\$1 [S3](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-s3.html) \\$1 [Schedule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-schedule.html) \\$1 [ScheduleV2](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-schedulev2.html) \\$1 [SelfManagedKafka](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-selfmanagedkafka.html) \\$1 [SNS](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-sns.html) \\$1 [SQS](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-sqs.html) \n*Required*: Yes \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "Properties" }, "Type": { "enum": [ "EventBridgeRule" ], "markdownDescription": "The event type. \n*Valid values*: `AlexaSkill`, `Api`, `CloudWatchEvent`, `CloudWatchLogs`, `Cognito`, `DocumentDB`, `DynamoDB`, `EventBridgeRule`, `HttpApi`, `IoTRule`, `Kinesis`, `MQ`, `MSK`, `S3`, `Schedule`, `ScheduleV2`, `SelfManagedKafka`, `SNS`, `SQS` \n*Type*: String \n*Required*: Yes \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "Type", "type": "string" } }, "required": [ "Type", "Properties" ], "title": "EventBridgeRuleEvent", "type": "object" }, "samtranslator__internal__schema_source__aws_serverless_function__EventBridgeRuleEventProperties": { "additionalProperties": false, "properties": { "DeadLetterConfig": { "allOf": [ { "$ref": "#/definitions/samtranslator__internal__schema_source__aws_serverless_function__DeadLetterConfig" } ], "markdownDescription": "Configure the Amazon Simple Queue Service (Amazon SQS) queue where EventBridge sends events after a failed target invocation. Invocation can fail, for example, when sending an event to a Lambda function that doesn't exist, or when EventBridge has insufficient permissions to invoke the Lambda function. For more information, see [Event retry policy and using dead-letter queues](https://docs.aws.amazon.com/eventbridge/latest/userguide/rule-dlq.html) in the *Amazon EventBridge User Guide*. \nThe [AWS::Serverless::Function](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-resource-function.html) resource type has a similar data type, `DeadLetterQueue`, which handles failures that occur after successful invocation of the target Lambda function. Examples of these types of failures include Lambda throttling, or errors returned by the Lambda target function. For more information about the function `DeadLetterQueue` property, see [Dead-letter queues](https://docs.aws.amazon.com/lambda/latest/dg/invocation-async.html#invocation-dlq) in the *AWS Lambda Developer Guide*.\n*Type*: [DeadLetterConfig](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-deadletterconfig.html) \n*Required*: No \n*CloudFormation compatibility*: This property is similar to the [`DeadLetterConfig`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-target.html#cfn-events-rule-target-deadletterconfig) property of the `AWS::Events::Rule` `Target` data type. The AWS SAM version of this property includes additional subproperties, in case you want AWS SAM to create the dead-letter queue for you.", "title": "DeadLetterConfig" }, "EventBusName": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The event bus to associate with this rule. If you omit this property, AWS SAM uses the default event bus. \n*Type*: String \n*Required*: No \n*Default*: Default event bus \n*CloudFormation compatibility*: This property is passed directly to the [`EventBusName`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-rule.html#cfn-events-rule-eventbusname) property of an `AWS::Events::Rule` resource.", "title": "EventBusName" }, "Input": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "Valid JSON text passed to the target. If you use this property, nothing from the event text itself is passed to the target. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`Input`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-target.html#cfn-events-rule-target-input) property of an `AWS::Events::Rule Target` resource.", "title": "Input" }, "InputPath": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "When you don't want to pass the entire matched event to the target, use the `InputPath` property to describe which part of the event to pass. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`InputPath`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-target.html#cfn-events-rule-target-inputpath) property of an `AWS::Events::Rule Target` resource.", "title": "InputPath" }, "InputTransformer": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "Settings to enable you to provide custom input to a target based on certain event data. You can extract one or more key-value pairs from the event and then use that data to send customized input to the target. For more information, see [Amazon EventBridge input transformation](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-transform-target-input.html) in the *Amazon EventBridge User Guide*. \n*Type*: [InputTransformer](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-target.html#cfn-events-rule-target-inputtransformer) \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`InputTransformer`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-inputtransformer.html) property of an `AWS::Events::Rule` `Target` data type.", "title": "InputTransformer" }, "Pattern": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "Describes which events are routed to the specified target. For more information, see [Amazon EventBridge events](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-events.html) and [EventBridge event patterns](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-event-patterns.html) in the *Amazon EventBridge User Guide*. \n*Type*: [EventPattern](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-rule.html#cfn-events-rule-eventpattern) \n*Required*: Yes \n*CloudFormation compatibility*: This property is passed directly to the [`EventPattern`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-rule.html#cfn-events-rule-eventpattern) property of an `AWS::Events::Rule` resource.", "title": "Pattern" }, "RetryPolicy": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "A `RetryPolicy` object that includes information about the retry policy settings. For more information, see [Event retry policy and using dead-letter queues](https://docs.aws.amazon.com/eventbridge/latest/userguide/rule-dlq.html) in the *Amazon EventBridge User Guide*. \n*Type*: [RetryPolicy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-target.html#cfn-events-rule-target-retrypolicy) \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`RetryPolicy`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-target.html#cfn-events-rule-target-retrypolicy) property of the `AWS::Events::Rule` `Target` data type.", "title": "RetryPolicy" }, "RuleName": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The name of the rule. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`Name`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-rule.html#cfn-events-rule-name) property of an `AWS::Events::Rule` resource.", "title": "RuleName" }, "Target": { "allOf": [ { "$ref": "#/definitions/samtranslator__internal__schema_source__aws_serverless_function__EventBridgeRuleTarget" } ], "markdownDescription": "The AWS resource that EventBridge invokes when a rule is triggered. You can use this property to specify the logical ID of the target. If this property is not specified, then AWS SAM generates the logical ID of the target. \n*Type*: [Target](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-target.html) \n*Required*: No \n*CloudFormation compatibility*: This property is similar to the [`Targets`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-rule.html#cfn-events-rule-targets) property of an `AWS::Events::Rule` resource. `Amazon EC2 RebootInstances API call` is an example of a target property. The AWS SAM version of this property only allows you to specify the logical ID of a single target.", "title": "Target" } }, "required": [ "Pattern" ], "title": "EventBridgeRuleEventProperties", "type": "object" }, "samtranslator__internal__schema_source__aws_serverless_function__EventBridgeRuleTarget": { "additionalProperties": false, "properties": { "Id": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The logical ID of the target. \nThe value of `Id` can include alphanumeric characters, periods (`.`), hyphens (`-`), and underscores (`_`). \n*Type*: String \n*Required*: Yes \n*CloudFormation compatibility*: This property is passed directly to the [`Id`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-target.html#cfn-events-rule-target-id) property of the `AWS::Events::Rule` `Target` data type.", "title": "Id" } }, "required": [ "Id" ], "title": "EventBridgeRuleTarget", "type": "object" }, "samtranslator__internal__schema_source__aws_serverless_function__Globals": { "additionalProperties": false, "properties": { "Architectures": { "__samPassThrough": { "markdownDescriptionOverride": "The instruction set architecture for the function. \nFor more information about this property, see [Lambda instruction set architectures](https://docs.aws.amazon.com/lambda/latest/dg/foundation-arch.html) in the *AWS Lambda Developer Guide*. \n*Valid values*: One of `x86_64` or `arm64` \n*Type*: List \n*Required*: No \n*Default*: `x86_64` \n*CloudFormation compatibility*: This property is passed directly to the [`Architectures`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-architectures) property of an `AWS::Lambda::Function` resource.", "schemaPath": [ "definitions", "AWS::Lambda::Function", "properties", "Properties", "properties", "Architectures" ] }, "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "title": "Architectures" }, "AssumeRolePolicyDocument": { "markdownDescription": "Adds an AssumeRolePolicyDocument for the default created `Role` for this function. If this property isn't specified, AWS SAM adds a default assume role for this function. \n*Type*: JSON \n*Required*: No \n*CloudFormation compatibility*: This property is similar to the [`AssumeRolePolicyDocument`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html#cfn-iam-role-assumerolepolicydocument) property of an `AWS::IAM::Role` resource. AWS SAM adds this property to the generated IAM role for this function. If a role's Amazon Resource Name (https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/ARN.html) is provided for this function, this property does nothing.", "title": "AssumeRolePolicyDocument", "type": "object" }, "AutoPublishAlias": { "anyOf": [ { "type": "object" }, { "type": "string" } ], "markdownDescription": "The name of the Lambda alias. For more information about Lambda aliases, see [Lambda function aliases](https://docs.aws.amazon.com/lambda/latest/dg/configuration-aliases.html) in the *AWS Lambda Developer Guide*. For examples that use this property, see [Deploying serverless applications gradually with AWS SAM](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/automating-updates-to-serverless-apps.html). \nAWS SAM generates [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-version.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-version.html) and [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-alias.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-alias.html) resources when this property is set. For information about this scenario, see [AutoPublishAlias property is specified](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-specification-generated-resources-function.html#sam-specification-generated-resources-function-autopublishalias). For general information about generated CloudFormation resources, see [Generated CloudFormation resources for AWS SAM](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-specification-generated-resources.html). \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "AutoPublishAlias" }, "CapacityProviderConfig": { "allOf": [ { "$ref": "#/definitions/CapacityProviderConfig" } ], "markdownDescription": "Configures the capacity provider to which published versions of the function will be attached. This enables the function to run on customer-owned EC2 instances managed by Lambda Managed Instances. \n*Type*: [CapacityProviderConfig](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-capacityproviderconfig.html) \n*Required*: No \n*CloudFormation compatibility*: SAM flattens the property passed to the [`CapacityProviderConfig`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-capacityproviderconfig) property of an `AWS::Lambda::Function` resource and reconstructs the nested structure.", "title": "CapacityProviderConfig" }, "CodeUri": { "anyOf": [ { "type": "string" }, { "$ref": "#/definitions/CodeUri" } ], "markdownDescription": "The code for the function. Accepted values include: \n+ The function's Amazon S3 URI. For example, `s3://bucket-123456789/sam-app/1234567890abcdefg`.\n+ The local path to the function. For example, `hello_world/`.\n+ A [FunctionCode](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-functioncode.html) object.\nIf you provide a function's Amazon S3 URI or [FunctionCode](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-functioncode.html) object, you must reference a valid [Lambda deployment package](https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-package.html). \nIf you provide a local file path, use the AWS SAM\u00a0CLI to upload the local file at deployment. To learn more, see [How AWS SAM uploads local files at deployment](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/deploy-upload-local-files.html). \nIf you use intrinsic functions in `CodeUri` property, AWS SAM will not be able to correctly parse the values. Consider using [AWS::LanguageExtensions transform](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/transform-aws-languageextensions.html) instead.\n*Type*: [ String \\$1 [FunctionCode](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-functioncode.html) ] \n*Required*: Conditional. When `PackageType` is set to `Zip`, one of `CodeUri` or `InlineCode` is required. \n*CloudFormation compatibility*: This property is similar to the `[ Code](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-code)` property of an `AWS::Lambda::Function` resource. The nested Amazon S3 properties are named differently.", "title": "CodeUri" }, "DeadLetterQueue": { "anyOf": [ { "type": "object" }, { "$ref": "#/definitions/DeadLetterQueue" } ], "markdownDescription": "Configures an Amazon Simple Notification Service (Amazon SNS) topic or Amazon Simple Queue Service (Amazon SQS) queue where Lambda sends events that it can't process. For more information about dead-letter queue functionality, see [Dead-letter queues](https://docs.aws.amazon.com/lambda/latest/dg/invocation-async-retain-records.html#invocation-dlq) in the *AWS Lambda Developer Guide*. \nIf your Lambda function's event source is an Amazon SQS queue, configure a dead-letter queue for the source queue, not for the Lambda function. The dead-letter queue that you configure for a function is used for the function's [asynchronous invocation queue](https://docs.aws.amazon.com/lambda/latest/dg/invocation-async.html), not for event source queues.\n*Type*: Map \\$1 [DeadLetterQueue](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-deadletterqueue.html) \n*Required*: No \n*CloudFormation compatibility*: This property is similar to the [`DeadLetterConfig`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-deadletterconfig.html) property of an `AWS::Lambda::Function` resource. In CloudFormation the type is derived from the `TargetArn`, whereas in AWS SAM you must pass the type along with the `TargetArn`.", "title": "DeadLetterQueue" }, "DeploymentPreference": { "allOf": [ { "$ref": "#/definitions/DeploymentPreference" } ], "markdownDescription": "The settings to enable gradual Lambda deployments. \nIf a `DeploymentPreference` object is specified, AWS SAM creates an [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-application.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-application.html) called `ServerlessDeploymentApplication` (one per stack), an [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-deploymentgroup.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-deploymentgroup.html) called `DeploymentGroup`, and an [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html) called `CodeDeployServiceRole`. \n*Type*: [DeploymentPreference](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-deploymentpreference.html) \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent. \n*See also*: For more information about this property, see [Deploying serverless applications gradually with AWS SAM](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/automating-updates-to-serverless-apps.html).", "title": "DeploymentPreference" }, "Description": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "A description of the function. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`Description`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-description) property of an `AWS::Lambda::Function` resource.", "title": "Description" }, "DurableConfig": { "__samPassThrough": { "markdownDescriptionOverride": "Configuration for durable functions. Enables stateful execution with automatic checkpointing and replay capabilities. \n*Type*: [DurableConfig](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-durableconfig.html) \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "schemaPath": [ "definitions", "AWS::Lambda::Function", "properties", "Properties", "properties", "DurableConfig" ] }, "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "title": "DurableConfig" }, "Environment": { "__samPassThrough": { "markdownDescriptionOverride": "The configuration for the runtime environment. \n*Type*: [Environment](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-environment.html) \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`Environment`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-environment.html) property of an `AWS::Lambda::Function` resource.", "schemaPath": [ "definitions", "AWS::Lambda::Function", "properties", "Properties", "properties", "Environment" ] }, "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "title": "Environment" }, "EphemeralStorage": { "__samPassThrough": { "markdownDescriptionOverride": "An object that specifies the disk space, in MB, available to your Lambda function in `/tmp`. \nFor more information about this property, see [Lambda execution environment](https://docs.aws.amazon.com/lambda/latest/dg/runtimes-context.html) in the *AWS Lambda Developer Guide*. \n*Type*: [EphemeralStorage](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-ephemeralstorage) \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`EphemeralStorage`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-ephemeralstorage) property of an `AWS::Lambda::Function` resource.", "schemaPath": [ "definitions", "AWS::Lambda::Function", "properties", "Properties", "properties", "EphemeralStorage" ] }, "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "title": "EphemeralStorage" }, "EventInvokeConfig": { "allOf": [ { "$ref": "#/definitions/EventInvokeConfig" } ], "markdownDescription": "The object that describes event invoke configuration on a Lambda function. \n*Type*: [EventInvokeConfiguration](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-eventinvokeconfiguration.html) \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "EventInvokeConfig" }, "FunctionScalingConfig": { "__samPassThrough": { "markdownDescriptionOverride": "Configures the scaling behavior for Lambda functions running on capacity providers. Defines the minimum and maximum number of execution environments. \n*Type*: [FunctionScalingConfig](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-functionscalingconfig.html) \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`FunctionScalingConfig`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-functionscalingconfig) property of an `AWS::Lambda::Function` resource.", "schemaPath": [ "definitions", "AWS::Lambda::Function", "properties", "Properties", "properties", "FunctionScalingConfig" ] }, "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "title": "FunctionScalingConfig" }, "Handler": { "__samPassThrough": { "markdownDescriptionOverride": "The function within your code that is called to begin execution. This property is only required if the `PackageType` property is set to `Zip`. \n*Type*: String \n*Required*: Conditional \n*CloudFormation compatibility*: This property is passed directly to the [`Handler`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-handler) property of an `AWS::Lambda::Function` resource.", "schemaPath": [ "definitions", "AWS::Lambda::Function", "properties", "Properties", "properties", "Handler" ] }, "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "title": "Handler" }, "KmsKeyArn": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The ARN of an AWS Key Management Service (AWS KMS) key that Lambda uses to encrypt and decrypt your function's environment variables. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`KmsKeyArn`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-kmskeyarn) property of an `AWS::Lambda::Function` resource.", "title": "KmsKeyArn" }, "Layers": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The list of `LayerVersion` ARNs that this function should use. The order specified here is the order in which they will be imported when running the Lambda function. The version is either a full ARN including the version or a reference to a LayerVersion resource. For example, a reference to a `LayerVersion` will be `!Ref MyLayer` while a full ARN including the version will be `arn:aws:lambda:region:account-id:layer:layer-name:version`. \n*Type*: List \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`Layers`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-layers) property of an `AWS::Lambda::Function` resource.", "title": "Layers" }, "LoggingConfig": { "__samPassThrough": { "markdownDescriptionOverride": "The function's Amazon CloudWatch Logs configuration settings. \n*Type*: [LoggingConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-loggingconfig.html) \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-loggingconfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-loggingconfig) property of an `AWS::Lambda::Function` resource.", "schemaPath": [ "definitions", "AWS::Lambda::Function", "properties", "Properties", "properties", "LoggingConfig" ] }, "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "title": "LoggingConfig" }, "MemorySize": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The size of the memory in MB allocated per invocation of the function. \n*Type*: Integer \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`MemorySize`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-memorysize) property of an `AWS::Lambda::Function` resource.", "title": "MemorySize" }, "PermissionsBoundary": { "__samPassThrough": { "markdownDescriptionOverride": "The ARN of a permissions boundary to use for this function's execution role. This property works only if the role is generated for you. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`PermissionsBoundary`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html#cfn-iam-role-permissionsboundary) property of an `AWS::IAM::Role` resource.", "schemaPath": [ "definitions", "AWS::IAM::Role", "properties", "Properties", "properties", "PermissionsBoundary" ] }, "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "title": "PermissionsBoundary" }, "PropagateTags": { "markdownDescription": "Indicate whether or not to pass tags from the `Tags` property to your [AWS::Serverless::Function](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-specification-generated-resources-function.html) generated resources. Specify `True` to propagate tags in your generated resources. \n*Type*: Boolean \n*Required*: No \n*Default*: `False` \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "PropagateTags", "type": "boolean" }, "ProvisionedConcurrencyConfig": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The provisioned concurrency configuration of a function's alias. \n`ProvisionedConcurrencyConfig` can be specified only if the `AutoPublishAlias` is set. Otherwise, an error results.\n*Type*: [ProvisionedConcurrencyConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-alias.html#cfn-lambda-alias-provisionedconcurrencyconfig) \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`ProvisionedConcurrencyConfig`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-alias.html#cfn-lambda-alias-provisionedconcurrencyconfig) property of an `AWS::Lambda::Alias` resource.", "title": "ProvisionedConcurrencyConfig" }, "PublishToLatestPublished": { "__samPassThrough": { "markdownDescriptionOverride": "Specifies whether to publish the latest function version when the function is updated. \n*Type*: Boolean \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`PublishToLatestPublished`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-publishtolatestpublished) property of an `AWS::Lambda::Function` resource.", "schemaPath": [ "definitions", "AWS::Lambda::Function", "properties", "Properties", "properties", "PublishToLatestPublished" ] }, "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "title": "PublishToLatestPublished" }, "RecursiveLoop": { "__samPassThrough": { "markdownDescriptionOverride": "The status of your function's recursive loop detection configuration. \nWhen this value is set to `Allow` and Lambda detects your function being invoked as part of a recursive loop, it doesn't take any action. \nWhen this value is set to `Terminate` and Lambda detects your function being invoked as part of a recursive loop, it stops your function being invoked and notifies you. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`RecursiveLoop`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-recursiveloop) property of the `AWS::Lambda::Function` resource.", "schemaPath": [ "definitions", "AWS::Lambda::Function", "properties", "Properties", "properties", "RecursiveLoop" ] }, "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "title": "RecursiveLoop" }, "ReservedConcurrentExecutions": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The maximum number of concurrent executions that you want to reserve for the function. \nFor more information about this property, see [Lambda Function Scaling](https://docs.aws.amazon.com/lambda/latest/dg/scaling.html) in the *AWS Lambda Developer Guide*. \n*Type*: Integer \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`ReservedConcurrentExecutions`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-reservedconcurrentexecutions) property of an `AWS::Lambda::Function` resource.", "title": "ReservedConcurrentExecutions" }, "RolePath": { "__samPassThrough": { "markdownDescriptionOverride": "The path to the function's IAM execution role. \nUse this property when the role is generated for you. Do not use when the role is specified with the `Role` property. \n*Type*: String \n*Required*: Conditional \n*CloudFormation compatibility*: This property is passed directly to the [`Path`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html#cfn-iam-role-path) property of an `AWS::IAM::Role` resource.", "schemaPath": [ "definitions", "AWS::IAM::Role", "properties", "Properties", "properties", "Path" ] }, "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "title": "RolePath" }, "Runtime": { "__samPassThrough": { "markdownDescriptionOverride": "The identifier of the function's [runtime](https://docs.aws.amazon.com/lambda/latest/dg/lambda-runtimes.html). This property is only required if the `PackageType` property is set to `Zip`. \nIf you specify the `provided` identifier for this property, you can use the `Metadata` resource attribute to instruct AWS SAM to build the custom runtime that this function requires. For more information about building custom runtimes, see [Building Lambda functions with custom runtimes in AWS SAM](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/building-custom-runtimes.html).\n*Type*: String \n*Required*: Conditional \n*CloudFormation compatibility*: This property is passed directly to the [`Runtime`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-runtime) property of an `AWS::Lambda::Function` resource.", "schemaPath": [ "definitions", "AWS::Lambda::Function", "properties", "Properties", "properties", "Runtime" ] }, "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "title": "Runtime" }, "RuntimeManagementConfig": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "Configure runtime management options for your Lambda functions such as runtime environment updates, rollback behavior, and selecting a specific runtime version. To learn more, see [Lambda runtime updates](https://docs.aws.amazon.com//lambda/latest/dg/runtimes-update.html) in the *AWS Lambda Developer Guide*. \n*Type*: [RuntimeManagementConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-runtimemanagementconfig.html) \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the `[ RuntimeManagementConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-runtimemanagementconfig.html)` property of an `AWS::Lambda::Function` resource.", "title": "RuntimeManagementConfig" }, "SnapStart": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "Create a snapshot of any new Lambda function version. A snapshot is a cached state of your initialized function, including all of its dependencies. The function is initialized just once and the cached state is reused for all future invocations, improving application performance by reducing the number of times your function must be initialized. To learn more, see [Improving startup performance with Lambda SnapStart](https://docs.aws.amazon.com/lambda/latest/dg/snapstart.html) in the *AWS Lambda Developer Guide*. \n*Type*: [SnapStart](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-snapstart.html) \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`SnapStart`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-snapstart.html) property of an `AWS::Lambda::Function` resource.", "title": "SnapStart" }, "SourceKMSKeyArn": { "__samPassThrough": { "markdownDescriptionOverride": "Represents a KMS key ARN that is used to encrypt the customer's ZIP function code. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`SourceKMSKeyArn`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-sourcekmskeyarn) property of an `AWS::Lambda::Function` `Code` data type.", "schemaPath": [ "definitions", "AWS::Lambda::Function.Code", "properties", "SourceKMSKeyArn" ] }, "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "title": "SourceKMSKeyArn" }, "Tags": { "markdownDescription": "A map (string to string) that specifies the tags added to this function. For details about valid keys and values for tags, see [Tag Key and Value Requirements](https://docs.aws.amazon.com/lambda/latest/dg/configuration-tags.html#configuration-tags-restrictions) in the *AWS Lambda Developer Guide*. \nWhen the stack is created, AWS SAM automatically adds a `lambda:createdBy:SAM` tag to this Lambda function, and to the default roles that are generated for this function. \n*Type*: Map \n*Required*: No \n*CloudFormation compatibility*: This property is similar to the [`Tags`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-tags) property of an `AWS::Lambda::Function` resource. The `Tags` property in AWS SAM consists of key-value pairs (whereas in CloudFormation this property consists of a list of `Tag` objects). Also, AWS SAM automatically adds a `lambda:createdBy:SAM` tag to this Lambda function, and to the default roles that are generated for this function.", "title": "Tags", "type": "object" }, "TenancyConfig": { "__samPassThrough": { "markdownDescriptionOverride": "Configuration for Lambda tenant isolation mode. Ensures execution environments are never shared between different tenant IDs, providing compute-level isolation for multi-tenant applications. \n*Type*: [TenancyConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-tenancyconfig.html) \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`TenancyConfig`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-tenancyconfig) property of an `AWS::Lambda::Function` resource.", "schemaPath": [ "definitions", "AWS::Lambda::Function", "properties", "Properties", "properties", "TenancyConfig" ] }, "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "title": "TenancyConfig" }, "Timeout": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The maximum time in seconds that the function can run before it is stopped. \n*Type*: Integer \n*Required*: No \n*Default*: 3 \n*CloudFormation compatibility*: This property is passed directly to the [`Timeout`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-timeout) property of an `AWS::Lambda::Function` resource.", "title": "Timeout" }, "Tracing": { "anyOf": [ { "type": "object" }, { "enum": [ "Active", "PassThrough", "Disabled" ], "type": "string" } ], "markdownDescription": "The string that specifies the function's X-Ray tracing mode. \n+ `Active` \u2013 Activates X-Ray tracing for the function.\n+ `Disabled` \u2013 Deactivates X-Ray for the function.\n+ `PassThrough` \u2013 Activates X-Ray tracing for the function. Sampling decision is delegated to the downstream services.\nIf specified as `Active` or `PassThrough` and the `Role` property is not set, AWS SAM adds the `arn:aws:iam::aws:policy/AWSXrayWriteOnlyAccess` policy to the Lambda execution role that it creates for you. \nFor more information about X-Ray, see [Using AWS Lambda with AWS X-Ray](https://docs.aws.amazon.com/lambda/latest/dg/lambda-x-ray.html) in the *AWS Lambda Developer Guide*. \n*Valid values*: [`Active`\\$1`Disabled`\\$1`PassThrough`] \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is similar to the [`TracingConfig`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-tracingconfig) property of an `AWS::Lambda::Function` resource.", "title": "Tracing" }, "VersionDeletionPolicy": { "anyOf": [ { "type": "object" }, { "type": "string" }, { "type": "boolean" } ], "markdownDescription": "Specifies the deletion policy for the Lambda version resource that is created when `AutoPublishAlias` is set. This controls whether the version resource is retained or deleted when the stack is deleted. \n*Valid values*: `Delete`, `Retain`, or `Snapshot` \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent. It sets the `DeletionPolicy` attribute on the generated `AWS::Lambda::Version` resource.", "title": "VersionDeletionPolicy" }, "VpcConfig": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The configuration that enables this function to access private resources within your virtual private cloud (https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/VPC.html). \n*Type*: [VpcConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-vpcconfig.html) \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`VpcConfig`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-vpcconfig.html) property of an `AWS::Lambda::Function` resource.", "title": "VpcConfig" } }, "title": "Globals", "type": "object" }, "samtranslator__internal__schema_source__aws_serverless_function__Properties": { "additionalProperties": false, "properties": { "Architectures": { "__samPassThrough": { "markdownDescriptionOverride": "The instruction set architecture for the function. \nFor more information about this property, see [Lambda instruction set architectures](https://docs.aws.amazon.com/lambda/latest/dg/foundation-arch.html) in the *AWS Lambda Developer Guide*. \n*Valid values*: One of `x86_64` or `arm64` \n*Type*: List \n*Required*: No \n*Default*: `x86_64` \n*CloudFormation compatibility*: This property is passed directly to the [`Architectures`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-architectures) property of an `AWS::Lambda::Function` resource.", "schemaPath": [ "definitions", "AWS::Lambda::Function", "properties", "Properties", "properties", "Architectures" ] }, "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "title": "Architectures" }, "AssumeRolePolicyDocument": { "markdownDescription": "Adds an AssumeRolePolicyDocument for the default created `Role` for this function. If this property isn't specified, AWS SAM adds a default assume role for this function. \n*Type*: JSON \n*Required*: No \n*CloudFormation compatibility*: This property is similar to the [`AssumeRolePolicyDocument`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html#cfn-iam-role-assumerolepolicydocument) property of an `AWS::IAM::Role` resource. AWS SAM adds this property to the generated IAM role for this function. If a role's Amazon Resource Name (https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/ARN.html) is provided for this function, this property does nothing.", "title": "AssumeRolePolicyDocument", "type": "object" }, "AutoPublishAlias": { "anyOf": [ { "type": "object" }, { "type": "string" } ], "markdownDescription": "The name of the Lambda alias. For more information about Lambda aliases, see [Lambda function aliases](https://docs.aws.amazon.com/lambda/latest/dg/configuration-aliases.html) in the *AWS Lambda Developer Guide*. For examples that use this property, see [Deploying serverless applications gradually with AWS SAM](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/automating-updates-to-serverless-apps.html). \nAWS SAM generates [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-version.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-version.html) and [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-alias.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-alias.html) resources when this property is set. For information about this scenario, see [AutoPublishAlias property is specified](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-specification-generated-resources-function.html#sam-specification-generated-resources-function-autopublishalias). For general information about generated CloudFormation resources, see [Generated CloudFormation resources for AWS SAM](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-specification-generated-resources.html). \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "AutoPublishAlias" }, "AutoPublishAliasAllProperties": { "markdownDescription": "Specifies when a new [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-version.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-version.html) is created. When `true`, a new Lambda version is created when any property in the Lambda function is modified. When `false`, a new Lambda version is created only when any of the following properties are modified: \n+ `Environment`, `MemorySize`, or `SnapStart`.\n+ Any change that results in an update to the `Code` property, such as `CodeDict`, `ImageUri`, or `InlineCode`.\nThis property requires `AutoPublishAlias` to be defined. \nIf `AutoPublishCodeSha256` is also specified, its behavior takes precedence over `AutoPublishAliasAllProperties: true`. \n*Type*: Boolean \n*Required*: No \n*Default value*: `false` \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "AutoPublishAliasAllProperties", "type": "boolean" }, "AutoPublishCodeSha256": { "anyOf": [ { "type": "object" }, { "type": "string" } ], "markdownDescription": "When used, this string works with the `CodeUri` value to determine if a new Lambda version needs to be published. This property is often used to resolve the following deployment issue: A deployment package is stored in an Amazon S3 location and is replaced by a new deployment package with updated Lambda function code but the `CodeUri` property remains unchanged (as opposed to the new deployment package being uploaded to a new Amazon S3 location and the `CodeUri` being changed to the new location). \nThis problem is marked by an AWS SAM template having the following characteristics: \n+ The `DeploymentPreference` object is configured for gradual deployments (as described in [Deploying serverless applications gradually with AWS SAM](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/automating-updates-to-serverless-apps.html))\n+ The `AutoPublishAlias` property is set and doesn't change between deployments\n+ The `CodeUri` property is set and doesn't change between deployments.\nIn this scenario, updating `AutoPublishCodeSha256` results in a new Lambda version being created successfully. However, new function code deployed to Amazon S3 will not be recognized. To recognize new function code, consider using versioning in your Amazon S3 bucket. Specify the `Version` property for your Lambda function and configure your bucket to always use the latest deployment package. \nIn this scenario, to trigger the gradual deployment successfully, you must provide a unique value for `AutoPublishCodeSha256`. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "AutoPublishCodeSha256" }, "CapacityProviderConfig": { "allOf": [ { "$ref": "#/definitions/CapacityProviderConfig" } ], "markdownDescription": "Configures the capacity provider to which published versions of the function will be attached. This enables the function to run on customer-owned EC2 instances managed by Lambda Managed Instances. \n*Type*: [CapacityProviderConfig](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-capacityproviderconfig.html) \n*Required*: No \n*CloudFormation compatibility*: SAM flattens the property passed to the [`CapacityProviderConfig`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-capacityproviderconfig) property of an `AWS::Lambda::Function` resource and reconstructs the nested structure.", "title": "CapacityProviderConfig" }, "CodeSigningConfigArn": { "__samPassThrough": { "markdownDescriptionOverride": "The ARN of the [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-codesigningconfig.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-codesigningconfig.html) resource, used to enable code signing for this function. For more information about code signing, see [Set up code signing for your AWS SAM application](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/authoring-codesigning.html). \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`CodeSigningConfigArn`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-codesigningconfigarn) property of an `AWS::Lambda::Function` resource.", "schemaPath": [ "definitions", "AWS::Lambda::Function", "properties", "Properties", "properties", "CodeSigningConfigArn" ] }, "anyOf": [ { "type": "object" }, { "type": "string" } ], "title": "CodeSigningConfigArn" }, "CodeUri": { "anyOf": [ { "type": "string" }, { "$ref": "#/definitions/CodeUri" } ], "markdownDescription": "The code for the function. Accepted values include: \n+ The function's Amazon S3 URI. For example, `s3://bucket-123456789/sam-app/1234567890abcdefg`.\n+ The local path to the function. For example, `hello_world/`.\n+ A [FunctionCode](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-functioncode.html) object.\nIf you provide a function's Amazon S3 URI or [FunctionCode](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-functioncode.html) object, you must reference a valid [Lambda deployment package](https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-package.html). \nIf you provide a local file path, use the AWS SAM\u00a0CLI to upload the local file at deployment. To learn more, see [How AWS SAM uploads local files at deployment](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/deploy-upload-local-files.html). \nIf you use intrinsic functions in `CodeUri` property, AWS SAM will not be able to correctly parse the values. Consider using [AWS::LanguageExtensions transform](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/transform-aws-languageextensions.html) instead.\n*Type*: [ String \\$1 [FunctionCode](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-functioncode.html) ] \n*Required*: Conditional. When `PackageType` is set to `Zip`, one of `CodeUri` or `InlineCode` is required. \n*CloudFormation compatibility*: This property is similar to the `[ Code](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-code)` property of an `AWS::Lambda::Function` resource. The nested Amazon S3 properties are named differently.", "title": "CodeUri" }, "DeadLetterQueue": { "anyOf": [ { "type": "object" }, { "$ref": "#/definitions/DeadLetterQueue" } ], "markdownDescription": "Configures an Amazon Simple Notification Service (Amazon SNS) topic or Amazon Simple Queue Service (Amazon SQS) queue where Lambda sends events that it can't process. For more information about dead-letter queue functionality, see [Dead-letter queues](https://docs.aws.amazon.com/lambda/latest/dg/invocation-async-retain-records.html#invocation-dlq) in the *AWS Lambda Developer Guide*. \nIf your Lambda function's event source is an Amazon SQS queue, configure a dead-letter queue for the source queue, not for the Lambda function. The dead-letter queue that you configure for a function is used for the function's [asynchronous invocation queue](https://docs.aws.amazon.com/lambda/latest/dg/invocation-async.html), not for event source queues.\n*Type*: Map \\$1 [DeadLetterQueue](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-deadletterqueue.html) \n*Required*: No \n*CloudFormation compatibility*: This property is similar to the [`DeadLetterConfig`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-deadletterconfig.html) property of an `AWS::Lambda::Function` resource. In CloudFormation the type is derived from the `TargetArn`, whereas in AWS SAM you must pass the type along with the `TargetArn`.", "title": "DeadLetterQueue" }, "DeploymentPreference": { "allOf": [ { "$ref": "#/definitions/DeploymentPreference" } ], "markdownDescription": "The settings to enable gradual Lambda deployments. \nIf a `DeploymentPreference` object is specified, AWS SAM creates an [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-application.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-application.html) called `ServerlessDeploymentApplication` (one per stack), an [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-deploymentgroup.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-deploymentgroup.html) called `DeploymentGroup`, and an [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html) called `CodeDeployServiceRole`. \n*Type*: [DeploymentPreference](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-deploymentpreference.html) \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent. \n*See also*: For more information about this property, see [Deploying serverless applications gradually with AWS SAM](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/automating-updates-to-serverless-apps.html).", "title": "DeploymentPreference" }, "Description": { "__samPassThrough": { "markdownDescriptionOverride": "A description of the function. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`Description`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-description) property of an `AWS::Lambda::Function` resource.", "schemaPath": [ "definitions", "AWS::Lambda::Function", "properties", "Properties", "properties", "Description" ] }, "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "title": "Description" }, "DurableConfig": { "__samPassThrough": { "markdownDescriptionOverride": "Configuration for durable functions. Enables stateful execution with automatic checkpointing and replay capabilities. \n*Type*: [DurableConfig](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-durableconfig.html) \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "schemaPath": [ "definitions", "AWS::Lambda::Function", "properties", "Properties", "properties", "DurableConfig" ] }, "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "title": "DurableConfig" }, "Environment": { "__samPassThrough": { "markdownDescriptionOverride": "The configuration for the runtime environment. \n*Type*: [Environment](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-environment.html) \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`Environment`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-environment.html) property of an `AWS::Lambda::Function` resource.", "schemaPath": [ "definitions", "AWS::Lambda::Function", "properties", "Properties", "properties", "Environment" ] }, "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "title": "Environment" }, "EphemeralStorage": { "__samPassThrough": { "markdownDescriptionOverride": "An object that specifies the disk space, in MB, available to your Lambda function in `/tmp`. \nFor more information about this property, see [Lambda execution environment](https://docs.aws.amazon.com/lambda/latest/dg/runtimes-context.html) in the *AWS Lambda Developer Guide*. \n*Type*: [EphemeralStorage](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-ephemeralstorage) \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`EphemeralStorage`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-ephemeralstorage) property of an `AWS::Lambda::Function` resource.", "schemaPath": [ "definitions", "AWS::Lambda::Function", "properties", "Properties", "properties", "EphemeralStorage" ] }, "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "title": "EphemeralStorage" }, "EventInvokeConfig": { "allOf": [ { "$ref": "#/definitions/EventInvokeConfig" } ], "markdownDescription": "The object that describes event invoke configuration on a Lambda function. \n*Type*: [EventInvokeConfiguration](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-eventinvokeconfiguration.html) \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "EventInvokeConfig" }, "Events": { "additionalProperties": { "anyOf": [ { "$ref": "#/definitions/S3Event" }, { "$ref": "#/definitions/SNSEvent" }, { "$ref": "#/definitions/KinesisEvent" }, { "$ref": "#/definitions/DynamoDBEvent" }, { "$ref": "#/definitions/DocumentDBEvent" }, { "$ref": "#/definitions/SQSEvent" }, { "$ref": "#/definitions/samtranslator__internal__schema_source__aws_serverless_function__ApiEvent" }, { "$ref": "#/definitions/samtranslator__internal__schema_source__aws_serverless_function__ScheduleEvent" }, { "$ref": "#/definitions/samtranslator__internal__schema_source__aws_serverless_function__ScheduleV2Event" }, { "$ref": "#/definitions/samtranslator__internal__schema_source__aws_serverless_function__CloudWatchEvent" }, { "$ref": "#/definitions/samtranslator__internal__schema_source__aws_serverless_function__EventBridgeRuleEvent" }, { "$ref": "#/definitions/CloudWatchLogsEvent" }, { "$ref": "#/definitions/IoTRuleEvent" }, { "$ref": "#/definitions/AlexaSkillEvent" }, { "$ref": "#/definitions/CognitoEvent" }, { "$ref": "#/definitions/HttpApiEvent" }, { "$ref": "#/definitions/MSKEvent" }, { "$ref": "#/definitions/MQEvent" }, { "$ref": "#/definitions/SelfManagedKafkaEvent" } ] }, "markdownDescription": "Specifies the events that trigger this function. Events consist of a type and a set of properties that depend on the type. \n*Type*: [EventSource](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-eventsource.html) \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "Events", "type": "object" }, "FileSystemConfigs": { "__samPassThrough": { "markdownDescriptionOverride": "List of [FileSystemConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-filesystemconfig.html) objects that specify the connection settings for an Amazon Elastic File System (Amazon EFS) file system. \nIf your template contains an [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-efs-mounttarget.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-efs-mounttarget.html) resource, you must also specify a `DependsOn` resource attribute to ensure that the mount target is created or updated before the function. \n*Type*: List \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`FileSystemConfigs`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-filesystemconfigs) property of an `AWS::Lambda::Function` resource.", "schemaPath": [ "definitions", "AWS::Lambda::Function", "properties", "Properties", "properties", "FileSystemConfigs" ] }, "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "title": "FileSystemConfigs" }, "FunctionName": { "__samPassThrough": { "markdownDescriptionOverride": "A name for the function. If you don't specify a name, a unique name is generated for you. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`FunctionName`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-functionname) property of an `AWS::Lambda::Function` resource.", "schemaPath": [ "definitions", "AWS::Lambda::Function", "properties", "Properties", "properties", "FunctionName" ] }, "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "title": "FunctionName" }, "FunctionScalingConfig": { "__samPassThrough": { "markdownDescriptionOverride": "Configures the scaling behavior for Lambda functions running on capacity providers. Defines the minimum and maximum number of execution environments. \n*Type*: [FunctionScalingConfig](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-functionscalingconfig.html) \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`FunctionScalingConfig`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-functionscalingconfig) property of an `AWS::Lambda::Function` resource.", "schemaPath": [ "definitions", "AWS::Lambda::Function", "properties", "Properties", "properties", "FunctionScalingConfig" ] }, "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "title": "FunctionScalingConfig" }, "FunctionUrlConfig": { "allOf": [ { "$ref": "#/definitions/FunctionUrlConfig" } ], "markdownDescription": "The object that describes a function URL. A function URL is an HTTPS endpoint that you can use to invoke your function. \nFor more information, see [Function URLs](https://docs.aws.amazon.com/lambda/latest/dg/lambda-urls.html) in the *AWS Lambda Developer Guide*. \n*Type*: [FunctionUrlConfig](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-functionurlconfig.html) \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "FunctionUrlConfig" }, "Handler": { "__samPassThrough": { "markdownDescriptionOverride": "The function within your code that is called to begin execution. This property is only required if the `PackageType` property is set to `Zip`. \n*Type*: String \n*Required*: Conditional \n*CloudFormation compatibility*: This property is passed directly to the [`Handler`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-handler) property of an `AWS::Lambda::Function` resource.", "schemaPath": [ "definitions", "AWS::Lambda::Function", "properties", "Properties", "properties", "Handler" ] }, "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "title": "Handler" }, "ImageConfig": { "__samPassThrough": { "markdownDescriptionOverride": "The object used to configure Lambda container image settings. For more information, see [Using container images with Lambda](https://docs.aws.amazon.com/lambda/latest/dg/lambda-images.html) in the *AWS Lambda Developer Guide*. \n*Type*: [ImageConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-imageconfig) \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`ImageConfig`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-imageconfig) property of an `AWS::Lambda::Function` resource.", "schemaPath": [ "definitions", "AWS::Lambda::Function", "properties", "Properties", "properties", "ImageConfig" ] }, "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "title": "ImageConfig" }, "ImageUri": { "__samPassThrough": { "markdownDescriptionOverride": "The URI of the Amazon Elastic Container Registry (Amazon ECR) repository for the Lambda function's container image. This property only applies if the `PackageType` property is set to `Image`, otherwise it is ignored. For more information, see [Using container images with Lambda](https://docs.aws.amazon.com/lambda/latest/dg/lambda-images.html) in the *AWS Lambda Developer Guide*. \nIf the `PackageType` property is set to `Image`, then either `ImageUri` is required, or you must build your application with necessary `Metadata` entries in the AWS SAM template file. For more information, see [Default build with AWS SAM](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/serverless-sam-cli-using-build.html).\nBuilding your application with necessary `Metadata` entries takes precedence over `ImageUri`, so if you specify both then `ImageUri` is ignored. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`ImageUri`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-code.html#cfn-lambda-function-code-imageuri) property of the `AWS::Lambda::Function` `Code` data type.", "schemaPath": [ "definitions", "AWS::Lambda::Function.Code", "properties", "ImageUri" ] }, "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "title": "ImageUri" }, "InlineCode": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The Lambda function code that is written directly in the template. This property only applies if the `PackageType` property is set to `Zip`, otherwise it is ignored. \nIf the `PackageType` property is set to `Zip` (https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/default.html), then one of `CodeUri` or `InlineCode` is required.\n*Type*: String \n*Required*: Conditional \n*CloudFormation compatibility*: This property is passed directly to the [`ZipFile`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-code.html#cfn-lambda-function-code-zipfile) property of the `AWS::Lambda::Function` `Code` data type.", "title": "InlineCode" }, "KmsKeyArn": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The ARN of an AWS Key Management Service (AWS KMS) key that Lambda uses to encrypt and decrypt your function's environment variables. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`KmsKeyArn`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-kmskeyarn) property of an `AWS::Lambda::Function` resource.", "title": "KmsKeyArn" }, "Layers": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The list of `LayerVersion` ARNs that this function should use. The order specified here is the order in which they will be imported when running the Lambda function. The version is either a full ARN including the version or a reference to a LayerVersion resource. For example, a reference to a `LayerVersion` will be `!Ref MyLayer` while a full ARN including the version will be `arn:aws:lambda:region:account-id:layer:layer-name:version`. \n*Type*: List \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`Layers`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-layers) property of an `AWS::Lambda::Function` resource.", "title": "Layers" }, "LoggingConfig": { "__samPassThrough": { "markdownDescriptionOverride": "The function's Amazon CloudWatch Logs configuration settings. \n*Type*: [LoggingConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-loggingconfig.html) \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-loggingconfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-loggingconfig) property of an `AWS::Lambda::Function` resource.", "schemaPath": [ "definitions", "AWS::Lambda::Function", "properties", "Properties", "properties", "LoggingConfig" ] }, "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "title": "LoggingConfig" }, "MemorySize": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The size of the memory in MB allocated per invocation of the function. \n*Type*: Integer \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`MemorySize`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-memorysize) property of an `AWS::Lambda::Function` resource.", "title": "MemorySize" }, "PackageType": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The deployment package type of the Lambda function. For more information, see [Lambda deployment packages](https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-package.html) in the *AWS Lambda Developer Guide*. \n**Notes**: \n1. If this property is set to `Zip` (https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/default.html), then either `CodeUri` or `InlineCode` applies, and `ImageUri` is ignored. \n2. If this property is set to `Image`, then only `ImageUri` applies, and both `CodeUri` and `InlineCode` are ignored. The Amazon ECR repository required to store the function's container image can be auto created by the AWS SAM\u00a0CLI. For more information, see [sam deploy](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-cli-command-reference-sam-deploy.html). \n*Valid values*: `Zip` or `Image` \n*Type*: String \n*Required*: No \n*Default*: `Zip` \n*CloudFormation compatibility*: This property is passed directly to the [`PackageType`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-packagetype) property of an `AWS::Lambda::Function` resource.", "title": "PackageType" }, "PermissionsBoundary": { "__samPassThrough": { "markdownDescriptionOverride": "The ARN of a permissions boundary to use for this function's execution role. This property works only if the role is generated for you. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`PermissionsBoundary`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html#cfn-iam-role-permissionsboundary) property of an `AWS::IAM::Role` resource.", "schemaPath": [ "definitions", "AWS::IAM::Role", "properties", "Properties", "properties", "PermissionsBoundary" ] }, "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "title": "PermissionsBoundary" }, "Policies": { "anyOf": [ { "type": "string" }, { "type": "object" }, { "items": { "anyOf": [ { "type": "string" }, { "type": "object" } ] }, "type": "array" } ], "markdownDescription": "Permission policies for this function. Policies will be appended to the function's default AWS Identity and Access Management (https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/IAM.html) execution role. \nThis property accepts a single value or list of values. Allowed values include: \n+ [AWS SAM\u00a0policy templates](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/serverless-policy-templates.html).\n+ The ARN of an [AWS managed policy](https://docs.aws.amazon.com/https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/IAM.html/latest/UserGuide/access_policies_managed-vs-inline.html#aws-managed-policies) or [ customer managed policy](https://docs.aws.amazon.com/https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/IAM.html/latest/UserGuide/access_policies_managed-vs-inline.html#customer-managed-policies).\n+ The name of an AWS managed policy from the following [ list](https://github.com/aws/serverless-application-model/blob/develop/samtranslator/internal/data/aws_managed_policies.json).\n+ An [ inline https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/IAM.html policy](https://docs.aws.amazon.com/https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/IAM.html/latest/UserGuide/access_policies_managed-vs-inline.html#inline-policies) formatted in YAML as a map.\nIf you set the `Role` property, this property is ignored.\n*Type*: String \\$1 List \\$1 Map \n*Required*: No \n*CloudFormation compatibility*: This property is similar to the [`Policies`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html#cfn-iam-role-policies) property of an `AWS::https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/IAM.html::Role` resource.", "title": "Policies" }, "PropagateTags": { "markdownDescription": "Indicate whether or not to pass tags from the `Tags` property to your [AWS::Serverless::Function](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-specification-generated-resources-function.html) generated resources. Specify `True` to propagate tags in your generated resources. \n*Type*: Boolean \n*Required*: No \n*Default*: `False` \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "PropagateTags", "type": "boolean" }, "ProvisionedConcurrencyConfig": { "__samPassThrough": { "markdownDescriptionOverride": "The provisioned concurrency configuration of a function's alias. \n`ProvisionedConcurrencyConfig` can be specified only if the `AutoPublishAlias` is set. Otherwise, an error results.\n*Type*: [ProvisionedConcurrencyConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-alias.html#cfn-lambda-alias-provisionedconcurrencyconfig) \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`ProvisionedConcurrencyConfig`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-alias.html#cfn-lambda-alias-provisionedconcurrencyconfig) property of an `AWS::Lambda::Alias` resource.", "schemaPath": [ "definitions", "AWS::Lambda::Alias", "properties", "Properties", "properties", "ProvisionedConcurrencyConfig" ] }, "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "title": "ProvisionedConcurrencyConfig" }, "PublishToLatestPublished": { "__samPassThrough": { "markdownDescriptionOverride": "Specifies whether to publish the latest function version when the function is updated. \n*Type*: Boolean \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`PublishToLatestPublished`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-publishtolatestpublished) property of an `AWS::Lambda::Function` resource.", "schemaPath": [ "definitions", "AWS::Lambda::Function", "properties", "Properties", "properties", "PublishToLatestPublished" ] }, "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "title": "PublishToLatestPublished" }, "RecursiveLoop": { "__samPassThrough": { "markdownDescriptionOverride": "The status of your function's recursive loop detection configuration. \nWhen this value is set to `Allow` and Lambda detects your function being invoked as part of a recursive loop, it doesn't take any action. \nWhen this value is set to `Terminate` and Lambda detects your function being invoked as part of a recursive loop, it stops your function being invoked and notifies you. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`RecursiveLoop`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-recursiveloop) property of the `AWS::Lambda::Function` resource.", "schemaPath": [ "definitions", "AWS::Lambda::Function", "properties", "Properties", "properties", "RecursiveLoop" ] }, "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "title": "RecursiveLoop" }, "ReservedConcurrentExecutions": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The maximum number of concurrent executions that you want to reserve for the function. \nFor more information about this property, see [Lambda Function Scaling](https://docs.aws.amazon.com/lambda/latest/dg/scaling.html) in the *AWS Lambda Developer Guide*. \n*Type*: Integer \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`ReservedConcurrentExecutions`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-reservedconcurrentexecutions) property of an `AWS::Lambda::Function` resource.", "title": "ReservedConcurrentExecutions" }, "Role": { "anyOf": [ { "type": "object" }, { "type": "string" } ], "markdownDescription": "The ARN of an IAM role to use as this function's execution role. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is similar to the [`Role`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-role) property of an `AWS::Lambda::Function` resource. This is required in CloudFormation but not in AWS SAM. If a role isn't specified, one is created for you with a logical ID of `Role`.", "title": "Role" }, "RolePath": { "__samPassThrough": { "markdownDescriptionOverride": "The path to the function's IAM execution role. \nUse this property when the role is generated for you. Do not use when the role is specified with the `Role` property. \n*Type*: String \n*Required*: Conditional \n*CloudFormation compatibility*: This property is passed directly to the [`Path`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html#cfn-iam-role-path) property of an `AWS::IAM::Role` resource.", "schemaPath": [ "definitions", "AWS::IAM::Role", "properties", "Properties", "properties", "Path" ] }, "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "title": "RolePath" }, "Runtime": { "__samPassThrough": { "markdownDescriptionOverride": "The identifier of the function's [runtime](https://docs.aws.amazon.com/lambda/latest/dg/lambda-runtimes.html). This property is only required if the `PackageType` property is set to `Zip`. \nIf you specify the `provided` identifier for this property, you can use the `Metadata` resource attribute to instruct AWS SAM to build the custom runtime that this function requires. For more information about building custom runtimes, see [Building Lambda functions with custom runtimes in AWS SAM](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/building-custom-runtimes.html).\n*Type*: String \n*Required*: Conditional \n*CloudFormation compatibility*: This property is passed directly to the [`Runtime`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-runtime) property of an `AWS::Lambda::Function` resource.", "schemaPath": [ "definitions", "AWS::Lambda::Function", "properties", "Properties", "properties", "Runtime" ] }, "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "title": "Runtime" }, "RuntimeManagementConfig": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "Configure runtime management options for your Lambda functions such as runtime environment updates, rollback behavior, and selecting a specific runtime version. To learn more, see [Lambda runtime updates](https://docs.aws.amazon.com//lambda/latest/dg/runtimes-update.html) in the *AWS Lambda Developer Guide*. \n*Type*: [RuntimeManagementConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-runtimemanagementconfig.html) \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the `[ RuntimeManagementConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-runtimemanagementconfig.html)` property of an `AWS::Lambda::Function` resource.", "title": "RuntimeManagementConfig" }, "SnapStart": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "Create a snapshot of any new Lambda function version. A snapshot is a cached state of your initialized function, including all of its dependencies. The function is initialized just once and the cached state is reused for all future invocations, improving application performance by reducing the number of times your function must be initialized. To learn more, see [Improving startup performance with Lambda SnapStart](https://docs.aws.amazon.com/lambda/latest/dg/snapstart.html) in the *AWS Lambda Developer Guide*. \n*Type*: [SnapStart](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-snapstart.html) \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`SnapStart`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-snapstart.html) property of an `AWS::Lambda::Function` resource.", "title": "SnapStart" }, "SourceKMSKeyArn": { "__samPassThrough": { "markdownDescriptionOverride": "Represents a KMS key ARN that is used to encrypt the customer's ZIP function code. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`SourceKMSKeyArn`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-sourcekmskeyarn) property of an `AWS::Lambda::Function` `Code` data type.", "schemaPath": [ "definitions", "AWS::Lambda::Function.Code", "properties", "SourceKMSKeyArn" ] }, "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "title": "SourceKMSKeyArn" }, "Tags": { "markdownDescription": "A map (string to string) that specifies the tags added to this function. For details about valid keys and values for tags, see [Tag Key and Value Requirements](https://docs.aws.amazon.com/lambda/latest/dg/configuration-tags.html#configuration-tags-restrictions) in the *AWS Lambda Developer Guide*. \nWhen the stack is created, AWS SAM automatically adds a `lambda:createdBy:SAM` tag to this Lambda function, and to the default roles that are generated for this function. \n*Type*: Map \n*Required*: No \n*CloudFormation compatibility*: This property is similar to the [`Tags`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-tags) property of an `AWS::Lambda::Function` resource. The `Tags` property in AWS SAM consists of key-value pairs (whereas in CloudFormation this property consists of a list of `Tag` objects). Also, AWS SAM automatically adds a `lambda:createdBy:SAM` tag to this Lambda function, and to the default roles that are generated for this function.", "title": "Tags", "type": "object" }, "TenancyConfig": { "__samPassThrough": { "markdownDescriptionOverride": "Configuration for Lambda tenant isolation mode. Ensures execution environments are never shared between different tenant IDs, providing compute-level isolation for multi-tenant applications. \n*Type*: [TenancyConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-tenancyconfig.html) \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`TenancyConfig`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-tenancyconfig) property of an `AWS::Lambda::Function` resource.", "schemaPath": [ "definitions", "AWS::Lambda::Function", "properties", "Properties", "properties", "TenancyConfig" ] }, "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "title": "TenancyConfig" }, "Timeout": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The maximum time in seconds that the function can run before it is stopped. \n*Type*: Integer \n*Required*: No \n*Default*: 3 \n*CloudFormation compatibility*: This property is passed directly to the [`Timeout`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-timeout) property of an `AWS::Lambda::Function` resource.", "title": "Timeout" }, "Tracing": { "anyOf": [ { "type": "object" }, { "enum": [ "Active", "PassThrough", "Disabled" ], "type": "string" } ], "markdownDescription": "The string that specifies the function's X-Ray tracing mode. \n+ `Active` \u2013 Activates X-Ray tracing for the function.\n+ `Disabled` \u2013 Deactivates X-Ray for the function.\n+ `PassThrough` \u2013 Activates X-Ray tracing for the function. Sampling decision is delegated to the downstream services.\nIf specified as `Active` or `PassThrough` and the `Role` property is not set, AWS SAM adds the `arn:aws:iam::aws:policy/AWSXrayWriteOnlyAccess` policy to the Lambda execution role that it creates for you. \nFor more information about X-Ray, see [Using AWS Lambda with AWS X-Ray](https://docs.aws.amazon.com/lambda/latest/dg/lambda-x-ray.html) in the *AWS Lambda Developer Guide*. \n*Valid values*: [`Active`\\$1`Disabled`\\$1`PassThrough`] \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is similar to the [`TracingConfig`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-tracingconfig) property of an `AWS::Lambda::Function` resource.", "title": "Tracing" }, "VersionDeletionPolicy": { "anyOf": [ { "type": "object" }, { "type": "string" }, { "type": "boolean" } ], "markdownDescription": "Specifies the deletion policy for the Lambda version resource that is created when `AutoPublishAlias` is set. This controls whether the version resource is retained or deleted when the stack is deleted. \n*Valid values*: `Delete`, `Retain`, or `Snapshot` \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent. It sets the `DeletionPolicy` attribute on the generated `AWS::Lambda::Version` resource.", "title": "VersionDeletionPolicy" }, "VersionDescription": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "Specifies the `Description` field that is added on the new Lambda version resource. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`Description`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-version.html#cfn-lambda-version-description) property of an `AWS::Lambda::Version` resource.", "title": "VersionDescription" }, "VpcConfig": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The configuration that enables this function to access private resources within your virtual private cloud (https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/VPC.html). \n*Type*: [VpcConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-vpcconfig.html) \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`VpcConfig`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-vpcconfig.html) property of an `AWS::Lambda::Function` resource.", "title": "VpcConfig" } }, "title": "Properties", "type": "object" }, "samtranslator__internal__schema_source__aws_serverless_function__Resource": { "additionalProperties": false, "properties": { "Condition": { "$ref": "#/definitions/PassThroughProp" }, "Connectors": { "additionalProperties": { "$ref": "#/definitions/EmbeddedConnector" }, "title": "Connectors", "type": "object" }, "DeletionPolicy": { "$ref": "#/definitions/PassThroughProp" }, "DependsOn": { "$ref": "#/definitions/PassThroughProp" }, "IgnoreGlobals": { "anyOf": [ { "type": "string" }, { "items": { "type": "string" }, "type": "array" } ], "title": "Ignoreglobals" }, "Metadata": { "$ref": "#/definitions/PassThroughProp" }, "Properties": { "$ref": "#/definitions/samtranslator__internal__schema_source__aws_serverless_function__Properties" }, "Type": { "enum": [ "AWS::Serverless::Function" ], "title": "Type", "type": "string" }, "UpdateReplacePolicy": { "$ref": "#/definitions/PassThroughProp" } }, "required": [ "Type" ], "title": "Resource", "type": "object" }, "samtranslator__internal__schema_source__aws_serverless_function__ResourcePolicy": { "additionalProperties": false, "properties": { "AwsAccountBlacklist": { "items": { "anyOf": [ { "type": "string" }, { "type": "object" } ] }, "markdownDescription": "The AWS accounts to block. \n*Type*: List of String \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "AwsAccountBlacklist", "type": "array" }, "AwsAccountWhitelist": { "items": { "anyOf": [ { "type": "string" }, { "type": "object" } ] }, "markdownDescription": "The AWS accounts to allow. For an example use of this property, see the Examples section at the bottom of this page. \n*Type*: List of String \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "AwsAccountWhitelist", "type": "array" }, "CustomStatements": { "items": { "anyOf": [ { "type": "string" }, { "type": "object" } ] }, "markdownDescription": "A list of custom resource policy statements to apply to this API. For an example use of this property, see the Examples section at the bottom of this page. \n*Type*: List \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "CustomStatements", "type": "array" }, "IntrinsicVpcBlacklist": { "items": { "anyOf": [ { "type": "string" }, { "type": "object" } ] }, "markdownDescription": "The list of virtual private clouds (https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/VPCs.html) to block, where each VPC is specified as a reference such as a [dynamic reference](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/dynamic-references.html) or the `Ref` [intrinsic function](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-ref.html). For an example use of this property, see the Examples section at the bottom of this page. \n*Type*: List \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "IntrinsicVpcBlacklist", "type": "array" }, "IntrinsicVpcWhitelist": { "items": { "anyOf": [ { "type": "string" }, { "type": "object" } ] }, "markdownDescription": "The list of VPCs to allow, where each VPC is specified as a reference such as a [dynamic reference](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/dynamic-references.html) or the `Ref` [intrinsic function](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-ref.html). \n*Type*: List \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "IntrinsicVpcWhitelist", "type": "array" }, "IntrinsicVpceBlacklist": { "items": { "anyOf": [ { "type": "string" }, { "type": "object" } ] }, "markdownDescription": "The list of VPC endpoints to block, where each VPC endpoint is specified as a reference such as a [dynamic reference](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/dynamic-references.html) or the `Ref` [intrinsic function](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-ref.html). \n*Type*: List \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "IntrinsicVpceBlacklist", "type": "array" }, "IntrinsicVpceWhitelist": { "items": { "anyOf": [ { "type": "string" }, { "type": "object" } ] }, "markdownDescription": "The list of VPC endpoints to allow, where each VPC endpoint is specified as a reference such as a [dynamic reference](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/dynamic-references.html) or the `Ref` [intrinsic function](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-ref.html). For an example use of this property, see the Examples section at the bottom of this page. \n*Type*: List \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "IntrinsicVpceWhitelist", "type": "array" }, "IpRangeBlacklist": { "items": { "anyOf": [ { "type": "string" }, { "type": "object" } ] }, "markdownDescription": "The IP addresses or address ranges to block. For an example use of this property, see the Examples section at the bottom of this page. \n*Type*: List \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "IpRangeBlacklist", "type": "array" }, "IpRangeWhitelist": { "items": { "anyOf": [ { "type": "string" }, { "type": "object" } ] }, "markdownDescription": "The IP addresses or address ranges to allow. \n*Type*: List \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "IpRangeWhitelist", "type": "array" }, "SourceVpcBlacklist": { "items": { "anyOf": [ { "type": "string" }, { "type": "object" } ] }, "markdownDescription": "The source VPC or VPC endpoints to block. Source VPC names must start with `\"vpc-\"` and source VPC endpoint names must start with `\"vpce-\"`. For an example use of this property, see the Examples section at the bottom of this page. \n*Type*: List \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "SourceVpcBlacklist", "type": "array" }, "SourceVpcWhitelist": { "items": { "anyOf": [ { "type": "string" }, { "type": "object" } ] }, "markdownDescription": "The source VPC or VPC endpoints to allow. Source VPC names must start with `\"vpc-\"` and source VPC endpoint names must start with `\"vpce-\"`. \n*Type*: List \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "SourceVpcWhitelist", "type": "array" } }, "title": "ResourcePolicy", "type": "object" }, "samtranslator__internal__schema_source__aws_serverless_function__ScheduleEvent": { "additionalProperties": false, "properties": { "Properties": { "allOf": [ { "$ref": "#/definitions/EventsScheduleProperties" } ], "markdownDescription": "Object describing properties of this event mapping. The set of properties must conform to the defined Type. \n*Type*: [AlexaSkill](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-alexaskill.html) \\$1 [Api](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-api.html) \\$1 [CloudWatchEvent](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-cloudwatchevent.html) \\$1 [CloudWatchLogs](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-cloudwatchlogs.html) \\$1 [Cognito](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-cognito.html) \\$1 [DocumentDB](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-documentdb.html) \\$1 [DynamoDB](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-dynamodb.html) \\$1 [EventBridgeRule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-eventbridgerule.html) \\$1 [HttpApi](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-httpapi.html) \\$1 [IoTRule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-iotrule.html) \\$1 [Kinesis](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-kinesis.html) \\$1 [MQ](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-mq.html) \\$1 [MSK](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-msk.html) \\$1 [S3](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-s3.html) \\$1 [Schedule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-schedule.html) \\$1 [ScheduleV2](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-schedulev2.html) \\$1 [SelfManagedKafka](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-selfmanagedkafka.html) \\$1 [SNS](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-sns.html) \\$1 [SQS](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-sqs.html) \n*Required*: Yes \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "Properties" }, "Type": { "enum": [ "Schedule" ], "markdownDescription": "The event type. \n*Valid values*: `AlexaSkill`, `Api`, `CloudWatchEvent`, `CloudWatchLogs`, `Cognito`, `DocumentDB`, `DynamoDB`, `EventBridgeRule`, `HttpApi`, `IoTRule`, `Kinesis`, `MQ`, `MSK`, `S3`, `Schedule`, `ScheduleV2`, `SelfManagedKafka`, `SNS`, `SQS` \n*Type*: String \n*Required*: Yes \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "Type", "type": "string" } }, "required": [ "Type", "Properties" ], "title": "ScheduleEvent", "type": "object" }, "samtranslator__internal__schema_source__aws_serverless_function__ScheduleV2Event": { "additionalProperties": false, "properties": { "Properties": { "allOf": [ { "$ref": "#/definitions/samtranslator__internal__schema_source__aws_serverless_function__ScheduleV2EventProperties" } ], "markdownDescription": "Object describing properties of this event mapping. The set of properties must conform to the defined Type. \n*Type*: [AlexaSkill](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-alexaskill.html) \\$1 [Api](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-api.html) \\$1 [CloudWatchEvent](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-cloudwatchevent.html) \\$1 [CloudWatchLogs](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-cloudwatchlogs.html) \\$1 [Cognito](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-cognito.html) \\$1 [DocumentDB](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-documentdb.html) \\$1 [DynamoDB](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-dynamodb.html) \\$1 [EventBridgeRule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-eventbridgerule.html) \\$1 [HttpApi](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-httpapi.html) \\$1 [IoTRule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-iotrule.html) \\$1 [Kinesis](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-kinesis.html) \\$1 [MQ](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-mq.html) \\$1 [MSK](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-msk.html) \\$1 [S3](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-s3.html) \\$1 [Schedule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-schedule.html) \\$1 [ScheduleV2](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-schedulev2.html) \\$1 [SelfManagedKafka](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-selfmanagedkafka.html) \\$1 [SNS](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-sns.html) \\$1 [SQS](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-sqs.html) \n*Required*: Yes \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "Properties" }, "Type": { "enum": [ "ScheduleV2" ], "markdownDescription": "The event type. \n*Valid values*: `AlexaSkill`, `Api`, `CloudWatchEvent`, `CloudWatchLogs`, `Cognito`, `DocumentDB`, `DynamoDB`, `EventBridgeRule`, `HttpApi`, `IoTRule`, `Kinesis`, `MQ`, `MSK`, `S3`, `Schedule`, `ScheduleV2`, `SelfManagedKafka`, `SNS`, `SQS` \n*Type*: String \n*Required*: Yes \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "Type", "type": "string" } }, "required": [ "Type", "Properties" ], "title": "ScheduleV2Event", "type": "object" }, "samtranslator__internal__schema_source__aws_serverless_function__ScheduleV2EventProperties": { "additionalProperties": false, "properties": { "DeadLetterConfig": { "allOf": [ { "$ref": "#/definitions/samtranslator__internal__schema_source__aws_serverless_function__DeadLetterConfig" } ], "markdownDescription": "Configure the Amazon Simple Queue Service (Amazon SQS) queue where EventBridge sends events after a failed target invocation. Invocation can fail, for example, when sending an event to a Lambda function that doesn't exist, or when EventBridge has insufficient permissions to invoke the Lambda function. For more information, see [Configuring a dead-letter queue for EventBridge Scheduler](https://docs.aws.amazon.com/scheduler/latest/UserGuide/configuring-schedule-dlq.html) in the *EventBridge Scheduler User Guide*. \nThe [AWS::Serverless::Function](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-resource-function.html) resource type has a similar data type, `DeadLetterQueue`, which handles failures that occur after successful invocation of the target Lambda function. Examples of these types of failures include Lambda throttling, or errors returned by the Lambda target function. For more information about the function `DeadLetterQueue` property, see [Dead-letter queues](https://docs.aws.amazon.com/lambda/latest/dg/invocation-async.html#invocation-dlq) in the *AWS Lambda Developer Guide*.\n*Type*: [DeadLetterConfig](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-scheduledeadletterconfig.html) \n*Required*: No \n*CloudFormation compatibility*: This property is similar to the [`DeadLetterConfig`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-scheduler-schedule-target.html#cfn-scheduler-schedule-target-deadletterconfig) property of the `AWS::Scheduler::Schedule` `Target` data type. The AWS SAM version of this property includes additional subproperties, in case you want AWS SAM to create the dead-letter queue for you.", "title": "DeadLetterConfig" }, "Description": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "A description of the schedule. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`Description`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-scheduler-schedule.html#cfn-scheduler-schedule-description) property of an `AWS::Scheduler::Schedule` resource.", "title": "Description" }, "EndDate": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The date, in UTC, before which the schedule can invoke its target. Depending on the schedule's recurrence expression, invocations might stop on, or before, the EndDate you specify. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`EndDate`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-scheduler-schedule.html#cfn-scheduler-schedule-enddate) property of an `AWS::Scheduler::Schedule` resource.", "title": "EndDate" }, "FlexibleTimeWindow": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "Allows configuration of a window within which a schedule can be invoked. \n*Type*: [FlexibleTimeWindow](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-scheduler-schedule.html#cfn-scheduler-schedule-flexibletimewindow) \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`FlexibleTimeWindow`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-scheduler-schedule.html#cfn-scheduler-schedule-flexibletimewindow) property of an `AWS::Scheduler::Schedule` resource.", "title": "FlexibleTimeWindow" }, "GroupName": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The name of the schedule group to associate with this schedule. If not defined, the default group is used. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`GroupName`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-scheduler-schedule.html#cfn-scheduler-schedule-groupname) property of an `AWS::Scheduler::Schedule` resource.", "title": "GroupName" }, "Input": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "Valid JSON text passed to the target. If you use this property, nothing from the event text itself is passed to the target. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`Input`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-scheduler-schedule-target.html#cfn-scheduler-schedule-target-input) property of an `AWS::Scheduler::Schedule Target` resource.", "title": "Input" }, "KmsKeyArn": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The ARN for a KMS Key that will be used to encrypt customer data. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`KmsKeyArn`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-scheduler-schedule.html#cfn-scheduler-schedule-kmskeyarn) property of an `AWS::Scheduler::Schedule` resource.", "title": "KmsKeyArn" }, "Name": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The name of the schedule. If you don't specify a name, AWS SAM generates a name in the format `Function-Logical-IDEvent-Source-Name` and uses that ID for the schedule name. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`Name`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-scheduler-schedule.html#cfn-scheduler-schedule-name) property of an `AWS::Scheduler::Schedule` resource.", "title": "Name" }, "OmitName": { "title": "Omitname", "type": "boolean" }, "PermissionsBoundary": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The ARN of the policy used to set the permissions boundary for the role. \nIf `PermissionsBoundary` is defined, AWS SAM will apply the same boundaries to the scheduler schedule's target IAM role.\n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`PermissionsBoundary`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html#cfn-iam-role-permissionsboundary) property of an `AWS::IAM::Role` resource.", "title": "PermissionsBoundary" }, "RetryPolicy": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "A RetryPolicy object that includes information about the retry policy settings. \n*Type*: [RetryPolicy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-scheduler-schedule-target.html#cfn-scheduler-schedule-target-retrypolicy) \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`RetryPolicy`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-scheduler-schedule-target.html#cfn-scheduler-schedule-target-retrypolicy) property of the `AWS::Scheduler::Schedule` `Target` data type.", "title": "RetryPolicy" }, "RoleArn": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The ARN of the IAM role that EventBridge Scheduler will use for the target when the schedule is invoked. \n*Type*: [RoleArn](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-scheduler-schedule-target.html#cfn-scheduler-schedule-target-rolearn) \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`RoleArn`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-scheduler-schedule-target.html#cfn-scheduler-schedule-target-rolearn) property of the `AWS::Scheduler::Schedule` `Target` data type.", "title": "RoleArn" }, "ScheduleExpression": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The scheduling expression that determines when and how often the scheduler schedule event runs. \n*Type*: String \n*Required*: Yes \n*CloudFormation compatibility*: This property is passed directly to the [`ScheduleExpression`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-scheduler-schedule.html#cfn-scheduler-schedule-scheduleexpression) property of an `AWS::Scheduler::Schedule` resource.", "title": "ScheduleExpression" }, "ScheduleExpressionTimezone": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The timezone in which the scheduling expression is evaluated. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`ScheduleExpressionTimezone`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-scheduler-schedule.html#cfn-scheduler-schedule-scheduleexpressiontimezone) property of an `AWS::Scheduler::Schedule` resource.", "title": "ScheduleExpressionTimezone" }, "StartDate": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The date, in UTC, after which the schedule can begin invoking a target. Depending on the schedule's recurrence expression, invocations might occur on, or after, the StartDate you specify. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`StartDate`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-scheduler-schedule.html#cfn-scheduler-schedule-startdate) property of an `AWS::Scheduler::Schedule` resource.", "title": "StartDate" }, "State": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The state of the Scheduler schedule. \n*Accepted values:* `DISABLED | ENABLED` \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`State`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-scheduler-schedule.html#cfn-scheduler-schedule-state) property of an `AWS::Scheduler::Schedule` resource.", "title": "State" } }, "title": "ScheduleV2EventProperties", "type": "object" }, "samtranslator__internal__schema_source__aws_serverless_graphqlapi__Auth": { "additionalProperties": false, "properties": { "Additional": { "items": { "$ref": "#/definitions/Authorizer" }, "markdownDescription": "A list of additional authorization types for your GraphQL API. \n*Type*: List of [ AuthProvider](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-graphqlapi-auth-authprovider.html) \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "Additional", "type": "array" }, "LambdaAuthorizer": { "$ref": "#/definitions/LambdaAuthorizerConfig" }, "OpenIDConnect": { "$ref": "#/definitions/OpenIDConnectConfig" }, "Type": { "enum": [ "AWS_IAM", "API_KEY", "AWS_LAMBDA", "OPENID_CONNECT", "AMAZON_COGNITO_USER_POOLS" ], "markdownDescription": "The default authorization type between applications and your AWS AppSync GraphQL API. \nFor a list and description of allowed values, see [Authorization and authentication](https://docs.aws.amazon.com/appsync/latest/devguide/security-authz.html) in the *AWS AppSync Developer Guide*. \nWhen you specify a Lambda authorizer (`AWS_LAMBDA`), AWS SAM creates an AWS Identity and Access Management (https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/IAM.html) policy to provision permissions between your GraphQL API and Lambda function. \n*Type*: String \n*Required*: Yes \n*CloudFormation compatibility*: This property is passed directly to the `[ AuthenticationType](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-additionalauthenticationprovider.html#cfn-appsync-graphqlapi-additionalauthenticationprovider-authenticationtype)` property of an `AWS::AppSync::GraphQLApi` `[ AdditionalAuthenticationProvider](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-additionalauthenticationprovider.html)` object.", "title": "Type", "type": "string" }, "UserPool": { "$ref": "#/definitions/UserPoolConfig" } }, "required": [ "Type" ], "title": "Auth", "type": "object" }, "samtranslator__internal__schema_source__aws_serverless_graphqlapi__Properties": { "additionalProperties": false, "properties": { "ApiKeys": { "additionalProperties": { "$ref": "#/definitions/ApiKey" }, "markdownDescription": "Create a unique key that can be used to perform GraphQL operations requiring an API key. \n*Type*: [ApiKeys](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-graphqlapi-apikeys.html) \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn\u2019t have an CloudFormation equivalent.", "title": "ApiKeys", "type": "object" }, "Auth": { "allOf": [ { "$ref": "#/definitions/samtranslator__internal__schema_source__aws_serverless_graphqlapi__Auth" } ], "markdownDescription": "Configure authentication for your GraphQL API. \n*Type*: [Auth](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-graphqlapi-auth.html) \n*Required*: Yes \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn\u2019t have an CloudFormation equivalent.", "title": "Auth" }, "Cache": { "allOf": [ { "$ref": "#/definitions/Cache" } ], "markdownDescription": "The input of a `CreateApiCache` operation. \n*Type*: [AWS::AppSync::ApiCache](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-apicache.html) \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [AWS::AppSync::ApiCache](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-apicache.html) resource.", "title": "Cache" }, "DataSources": { "allOf": [ { "$ref": "#/definitions/DataSources" } ], "markdownDescription": "Create data sources for functions in AWS AppSync to connect to. AWS SAM supports Amazon DynamoDB and AWS Lambda data sources. \n*Type*: [DataSource](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-graphqlapi-datasource.html) \n*Required*: Yes \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn\u2019t have an CloudFormation equivalent.", "title": "DataSources" }, "DomainName": { "allOf": [ { "$ref": "#/definitions/DomainName" } ], "markdownDescription": "Custom domain name for your GraphQL API. \n*Type*: [AWS::AppSync::DomainName](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-domainname.html) \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [AWS::AppSync::DomainName](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-domainname.html) resource. AWS SAM automatically generates the [AWS::AppSync::DomainNameApiAssociation](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-domainnameapiassociation.html) resource.", "title": "DomainName" }, "Functions": { "additionalProperties": { "$ref": "#/definitions/Function" }, "markdownDescription": "Configure functions in GraphQL APIs to perform certain operations. \n*Type*: [Function](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-graphqlapi-function.html) \n*Required*: Yes \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn\u2019t have an CloudFormation equivalent.", "title": "Functions", "type": "object" }, "IntrospectionConfig": { "$ref": "#/definitions/PassThroughProp" }, "Logging": { "anyOf": [ { "$ref": "#/definitions/Logging" }, { "type": "boolean" } ], "markdownDescription": "Configures Amazon CloudWatch logging for your GraphQL API. \nIf you don\u2019t specify this property, AWS SAM will generate `CloudWatchLogsRoleArn` and set the following values: \n+ `ExcludeVerboseContent: true`\n+ `FieldLogLevel: ALL`\nTo opt out of logging, specify the following:", "title": "Logging" }, "Name": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The name of your GraphQL API. Specify this property to override the `LogicalId` value. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`Name`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-graphqlapi.html#cfn-appsync-graphqlapi-name) property of an `AWS::AppSync::GraphQLApi` resource.", "title": "Name" }, "OwnerContact": { "$ref": "#/definitions/PassThroughProp" }, "QueryDepthLimit": { "$ref": "#/definitions/PassThroughProp" }, "ResolverCountLimit": { "$ref": "#/definitions/PassThroughProp" }, "Resolvers": { "additionalProperties": { "additionalProperties": { "$ref": "#/definitions/Resolver" }, "type": "object" }, "markdownDescription": "Configure resolvers for the fields of your GraphQL API. AWS SAM supports [JavaScript pipeline resolvers](https://docs.aws.amazon.com/appsync/latest/devguide/resolver-reference-overview-js.html#anatomy-of-a-pipeline-resolver-js). \n*Type*: [Resolver](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-graphqlapi-resolver.html) \n*Required*: Yes \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn\u2019t have an CloudFormation equivalent.", "title": "Resolvers", "type": "object" }, "SchemaInline": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The text representation of a GraphQL schema in SDL format. \n*Type*: String \n*Required*: Conditional. You must specify `SchemaInline` or `SchemaUri`. \n*CloudFormation compatibility*: This property is passed directly to the [`Definition`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-graphqlschema.html#cfn-appsync-graphqlschema-definition) property of an `AWS::AppSync::GraphQLSchema` resource.", "title": "SchemaInline" }, "SchemaUri": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The schema\u2019s Amazon Simple Storage Service (Amazon S3) bucket URI or path to a local folder. \nIf you specify a path to a local folder, CloudFormation requires that the file is first uploaded to Amazon S3 before deployment. You can use the AWS SAM\u00a0CLI to facilitate this process. For more information, see [How AWS SAM uploads local files at deployment](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/deploy-upload-local-files.html). \n*Type*: String \n*Required*: Conditional. You must specify `SchemaInline` or `SchemaUri`. \n*CloudFormation compatibility*: This property is passed directly to the [`DefinitionS3Location`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-graphqlschema.html#cfn-appsync-graphqlschema-definitions3location) property of an `AWS::AppSync::GraphQLSchema` resource.", "title": "SchemaUri" }, "Tags": { "markdownDescription": "Tags (key-value pairs) for this GraphQL API. Use tags to identify and categorize resources. \n*Type*: List of [Tag](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resource-tags.html) \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`Tag`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-graphqlapi.html#cfn-appsync-graphqlapi-tags) property of an `AWS::AppSync::GraphQLApi` resource.", "title": "Tags", "type": "object" }, "Visibility": { "$ref": "#/definitions/PassThroughProp" }, "XrayEnabled": { "markdownDescription": "Indicate whether to use [AWS X-Ray tracing](https://docs.aws.amazon.com/xray/latest/devguide/aws-xray.html) for this resource. \n*Type*: Boolean \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`XrayEnabled`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-graphqlapi.html#cfn-appsync-graphqlapi-xrayenabled) property of an `AWS::AppSync::GraphQLApi` resource.", "title": "XrayEnabled", "type": "boolean" } }, "required": [ "Auth" ], "title": "Properties", "type": "object" }, "samtranslator__internal__schema_source__aws_serverless_graphqlapi__Resource": { "additionalProperties": false, "properties": { "Properties": { "$ref": "#/definitions/samtranslator__internal__schema_source__aws_serverless_graphqlapi__Properties" }, "Type": { "enum": [ "AWS::Serverless::GraphQLApi" ], "title": "Type", "type": "string" } }, "required": [ "Type", "Properties" ], "title": "Resource", "type": "object" }, "samtranslator__internal__schema_source__aws_serverless_httpapi__Auth": { "additionalProperties": false, "properties": { "Authorizers": { "additionalProperties": { "anyOf": [ { "$ref": "#/definitions/OAuth2Authorizer" }, { "$ref": "#/definitions/LambdaAuthorizer" } ] }, "markdownDescription": "The authorizer used to control access to your API Gateway API. \n*Type*: [OAuth2Authorizer](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-httpapi-oauth2authorizer.html) \\$1 [LambdaAuthorizer](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-httpapi-lambdaauthorizer.html) \n*Required*: No \n*Default*: None \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent. \n*Additional notes*: AWS SAM adds the authorizers to the OpenAPI definition.", "title": "Authorizers", "type": "object" }, "DefaultAuthorizer": { "markdownDescription": "Specify the default authorizer to use for authorizing API calls to your API Gateway API. You can specify `AWS_IAM` as a default authorizer if `EnableIamAuthorizer` is set to `true`. Otherwise, specify an authorizer that you've defined in `Authorizers`. \n*Type*: String \n*Required*: No \n*Default*: None \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "DefaultAuthorizer", "type": "string" }, "EnableIamAuthorizer": { "markdownDescription": "Specify whether to use IAM authorization for the API route. \n*Type*: Boolean \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "EnableIamAuthorizer", "type": "boolean" } }, "title": "Auth", "type": "object" }, "samtranslator__internal__schema_source__aws_serverless_httpapi__DefinitionUri": { "additionalProperties": false, "properties": { "Bucket": { "markdownDescription": "The name of the Amazon S3 bucket where the OpenAPI file is stored. \n*Type*: String \n*Required*: Yes \n*CloudFormation compatibility*: This property is passed directly to the [`Bucket`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-api-bodys3location.html#cfn-apigatewayv2-api-bodys3location-bucket) property of the `AWS::ApiGatewayV2::Api` `BodyS3Location` data type.", "title": "Bucket", "type": "string" }, "Key": { "markdownDescription": "The Amazon S3 key of the OpenAPI file. \n*Type*: String \n*Required*: Yes \n*CloudFormation compatibility*: This property is passed directly to the [`Key`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-api-bodys3location.html#cfn-apigatewayv2-api-bodys3location-key) property of the `AWS::ApiGatewayV2::Api` `BodyS3Location` data type.", "title": "Key", "type": "string" }, "Version": { "markdownDescription": "For versioned objects, the version of the OpenAPI file. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`Version`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-api-bodys3location.html#cfn-apigatewayv2-api-bodys3location-version) property of the `AWS::ApiGatewayV2::Api` `BodyS3Location` data type.", "title": "Version", "type": "string" } }, "required": [ "Bucket", "Key" ], "title": "DefinitionUri", "type": "object" }, "samtranslator__internal__schema_source__aws_serverless_httpapi__Domain": { "additionalProperties": false, "properties": { "BasePath": { "items": { "type": "string" }, "markdownDescription": "A list of the basepaths to configure with the Amazon API Gateway domain name. \n*Type*: List \n*Required*: No \n*Default*: / \n*CloudFormation compatibility*: This property is similar to the [`ApiMappingKey`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-apimapping.html#cfn-apigatewayv2-apimapping-apimappingkey) property of an `AWS::ApiGatewayV2::ApiMapping` resource. AWS SAM creates multiple `AWS::ApiGatewayV2::ApiMapping` resources, one per value specified in this property.", "title": "BasePath", "type": "array" }, "CertificateArn": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The Amazon Resource Name (https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/ARN.html) of an AWS managed certificate for this domain name's endpoint. AWS Certificate Manager is the only supported source. \n*Type*: String \n*Required*: Yes \n*CloudFormation compatibility*: This property is passed directly to the [`CertificateArn`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-domainname-domainnameconfiguration.html#cfn-apigatewayv2-domainname-domainnameconfiguration-certificatearn) property of an `AWS::ApiGateway2::DomainName DomainNameConfiguration` resource.", "title": "CertificateArn" }, "DomainName": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The custom domain name for your API Gateway API. Uppercase letters are not supported. \nAWS SAM generates an `AWS::ApiGatewayV2::DomainName` resource when this property is set. For information about this scenario, see [DomainName property is specified](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-specification-generated-resources-httpapi.html#sam-specification-generated-resources-httpapi-domain-name). For information about generated CloudFormation resources, see [Generated CloudFormation resources for AWS SAM](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-specification-generated-resources.html). \n*Type*: String \n*Required*: Yes \n*CloudFormation compatibility*: This property is passed directly to the [`DomainName`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-domainname.html#cfn-apigatewayv2-domainname-domainname) property of an `AWS::ApiGateway2::DomainName` resource.", "title": "DomainName" }, "EndpointConfiguration": { "anyOf": [ { "type": "object" }, { "enum": [ "REGIONAL" ], "type": "string" } ], "markdownDescription": "Defines the type of API Gateway endpoint to map to the custom domain. The value of this property determines how the `CertificateArn` property is mapped in CloudFormation. \nThe only valid value for HTTP APIs is `REGIONAL`. \n*Type*: String \n*Required*: No \n*Default*: `REGIONAL` \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "EndpointConfiguration" }, "MutualTlsAuthentication": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The mutual transport layer security (https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/TLS.html) authentication configuration for a custom domain name. \n*Type*: [MutualTlsAuthentication](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-domainname.html#cfn-apigatewayv2-domainname-mutualtlsauthentication) \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`MutualTlsAuthentication`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-domainname.html#cfn-apigatewayv2-domainname-mutualtlsauthentication) property of an `AWS::ApiGatewayV2::DomainName` resource.", "title": "MutualTlsAuthentication" }, "OwnershipVerificationCertificateArn": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The ARN of the public certificate issued by ACM to validate ownership of your custom domain. Required only when you configure mutual TLS and you specify an ACM imported or private CA certificate ARN for the `CertificateArn`. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`OwnershipVerificationCertificateArn`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-domainname-domainnameconfiguration.html#cfn-apigatewayv2-domainname-domainnameconfiguration-ownershipverificationcertificatearn) property of the `AWS::ApiGatewayV2::DomainName` `DomainNameConfiguration` data type.", "title": "OwnershipVerificationCertificateArn" }, "Route53": { "allOf": [ { "$ref": "#/definitions/samtranslator__internal__schema_source__aws_serverless_httpapi__Route53" } ], "markdownDescription": "Defines an Amazon Route\u00a053 configuration. \n*Type*: [Route53Configuration](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-httpapi-route53configuration.html) \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "Route53" }, "SecurityPolicy": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The TLS version of the security policy for this domain name. \nThe only valid value for HTTP APIs is `TLS_1_2`. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`SecurityPolicy`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-domainname-domainnameconfiguration.html#cfn-apigatewayv2-domainname-domainnameconfiguration-securitypolicy) property of the `AWS::ApiGatewayV2::DomainName` `DomainNameConfiguration` data type.", "title": "SecurityPolicy" } }, "required": [ "CertificateArn", "DomainName" ], "title": "Domain", "type": "object" }, "samtranslator__internal__schema_source__aws_serverless_httpapi__Globals": { "additionalProperties": false, "properties": { "AccessLogSettings": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The settings for access logging in a stage. \n*Type*: [AccessLogSettings](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-stage.html#cfn-apigatewayv2-stage-accesslogsettings) \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`AccessLogSettings`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-stage.html#cfn-apigatewayv2-stage-accesslogsettings) property of an `AWS::ApiGatewayV2::Stage` resource.", "title": "AccessLogSettings" }, "Auth": { "allOf": [ { "$ref": "#/definitions/samtranslator__internal__schema_source__aws_serverless_httpapi__Auth" } ], "markdownDescription": "Configures authorization for controlling access to your API Gateway HTTP API. \nFor more information, see [Controlling access to HTTP APIs with JWT authorizers](https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-jwt-authorizer.html) in the *API Gateway Developer Guide*. \n*Type*: [HttpApiAuth](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-httpapi-httpapiauth.html) \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "Auth" }, "CorsConfiguration": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "Manages cross-origin resource sharing (https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/CORS.html) for all your API Gateway HTTP APIs. Specify the domain to allow as a string, or specify an `HttpApiCorsConfiguration` object. Note that https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/CORS.html requires AWS SAM to modify your OpenAPI definition, so https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/CORS.html works only if the `DefinitionBody` property is specified. \nFor more information, see [Configuring https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/CORS.html for an HTTP API](https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-cors.html) in the *API Gateway Developer Guide*. \nIf `CorsConfiguration` is set both in an OpenAPI definition and at the property level, then AWS SAM merges both configuration sources with the properties taking precedence. If this property is set to `true`, then all origins are allowed.\n*Type*: String \\$1 [HttpApiCorsConfiguration](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-httpapi-httpapicorsconfiguration.html) \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "CorsConfiguration" }, "DefaultRouteSettings": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The default route settings for this HTTP API. These settings apply to all routes unless overridden by the `RouteSettings` property for certain routes. \n*Type*: [RouteSettings](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-stage.html#cfn-apigatewayv2-stage-routesettings) \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`RouteSettings`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-stage.html#cfn-apigatewayv2-stage-routesettings) property of an `AWS::ApiGatewayV2::Stage` resource.", "title": "DefaultRouteSettings" }, "Domain": { "allOf": [ { "$ref": "#/definitions/samtranslator__internal__schema_source__aws_serverless_httpapi__Domain" } ], "markdownDescription": "Configures a custom domain for this API Gateway HTTP API. \n*Type*: [HttpApiDomainConfiguration](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-httpapi-httpapidomainconfiguration.html) \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "Domain" }, "FailOnWarnings": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "Specifies whether to roll back the HTTP API creation (`true`) or not (`false`) when a warning is encountered. The default value is `false`. \n*Type*: Boolean \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`FailOnWarnings`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-api.html#cfn-apigatewayv2-api-failonwarnings) property of an `AWS::ApiGatewayV2::Api` resource.", "title": "FailOnWarnings" }, "PropagateTags": { "markdownDescription": "Indicate whether or not to pass tags from the `Tags` property to your [AWS::Serverless::HttpApi](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-specification-generated-resources-httpapi.html) generated resources. Specify `True` to propagate tags in your generated resources. \n*Type*: Boolean \n*Required*: No \n*Default*: `False` \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "PropagateTags", "type": "boolean" }, "RouteSettings": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The route settings, per route, for this HTTP API. For more information, see [Working with routes for HTTP APIs](https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-develop-routes.html) in the *API Gateway Developer Guide*. \n*Type*: [RouteSettings](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-stage.html#cfn-apigatewayv2-stage-routesettings) \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`RouteSettings`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-stage.html#cfn-apigatewayv2-stage-routesettings) property of an `AWS::ApiGatewayV2::Stage` resource.", "title": "RouteSettings" }, "StageVariables": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "A map that defines the stage variables. Variable names can have alphanumeric and underscore characters. The values must match [A-Za-z0-9-.\\$1\\$1:/?\\$1&=,]\\$1. \n*Type*: [Json](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-stage.html#cfn-apigatewayv2-stage-stagevariables) \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`StageVariables`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-stage.html#cfn-apigatewayv2-stage-stagevariables) property of an `AWS::ApiGatewayV2::Stage` resource.", "title": "StageVariables" }, "Tags": { "markdownDescription": "A map (string to string) that specifies the tags to add to this API Gateway stage. Keys can be 1 to 128 Unicode characters in length and cannot include the prefix `aws:`. You can use any of the following characters: the set of Unicode letters, digits, whitespace, `_`, `.`, `/`, `=`, `+`, and `-`. Values can be 1 to 256 Unicode characters in length. \n*Type*: Map \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent. \n*Additional notes*: The `Tags` property requires AWS SAM to modify your OpenAPI definition, so tags are added only if the `DefinitionBody` property is specified\u2014no tags are added if the `DefinitionUri` property is specified. AWS SAM automatically adds an `httpapi:createdBy:SAM` tag. Tags are also added to the `AWS::ApiGatewayV2::Stage` resource and the `AWS::ApiGatewayV2::DomainName` resource (if `DomainName` is specified).", "title": "Tags", "type": "object" } }, "title": "Globals", "type": "object" }, "samtranslator__internal__schema_source__aws_serverless_httpapi__Properties": { "additionalProperties": false, "properties": { "AccessLogSettings": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The settings for access logging in a stage. \n*Type*: [AccessLogSettings](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-stage.html#cfn-apigatewayv2-stage-accesslogsettings) \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`AccessLogSettings`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-stage.html#cfn-apigatewayv2-stage-accesslogsettings) property of an `AWS::ApiGatewayV2::Stage` resource.", "title": "AccessLogSettings" }, "Auth": { "allOf": [ { "$ref": "#/definitions/samtranslator__internal__schema_source__aws_serverless_httpapi__Auth" } ], "markdownDescription": "Configures authorization for controlling access to your API Gateway HTTP API. \nFor more information, see [Controlling access to HTTP APIs with JWT authorizers](https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-jwt-authorizer.html) in the *API Gateway Developer Guide*. \n*Type*: [HttpApiAuth](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-httpapi-httpapiauth.html) \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "Auth" }, "CorsConfiguration": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "Manages cross-origin resource sharing (https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/CORS.html) for all your API Gateway HTTP APIs. Specify the domain to allow as a string, or specify an `HttpApiCorsConfiguration` object. Note that https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/CORS.html requires AWS SAM to modify your OpenAPI definition, so https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/CORS.html works only if the `DefinitionBody` property is specified. \nFor more information, see [Configuring https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/CORS.html for an HTTP API](https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-cors.html) in the *API Gateway Developer Guide*. \nIf `CorsConfiguration` is set both in an OpenAPI definition and at the property level, then AWS SAM merges both configuration sources with the properties taking precedence. If this property is set to `true`, then all origins are allowed.\n*Type*: String \\$1 [HttpApiCorsConfiguration](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-httpapi-httpapicorsconfiguration.html) \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "CorsConfiguration" }, "DefaultRouteSettings": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The default route settings for this HTTP API. These settings apply to all routes unless overridden by the `RouteSettings` property for certain routes. \n*Type*: [RouteSettings](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-stage.html#cfn-apigatewayv2-stage-routesettings) \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`RouteSettings`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-stage.html#cfn-apigatewayv2-stage-routesettings) property of an `AWS::ApiGatewayV2::Stage` resource.", "title": "DefaultRouteSettings" }, "DefinitionBody": { "markdownDescription": "The OpenAPI definition that describes your HTTP API. If you don't specify a `DefinitionUri` or a `DefinitionBody`, AWS SAM generates a `DefinitionBody` for you based on your template configuration. \n*Type*: JSON \n*Required*: No \n*CloudFormation compatibility*: This property is similar to the [`Body`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-api.html#cfn-apigatewayv2-api-body) property of an `AWS::ApiGatewayV2::Api` resource. If certain properties are provided, AWS SAM may insert content into or modify the `DefinitionBody` before it is passed to CloudFormation. Properties include `Auth` and an `EventSource` of type HttpApi for a corresponding `AWS::Serverless::Function` resource.", "title": "DefinitionBody", "type": "object" }, "DefinitionUri": { "anyOf": [ { "type": "string" }, { "$ref": "#/definitions/samtranslator__internal__schema_source__aws_serverless_httpapi__DefinitionUri" } ], "markdownDescription": "The Amazon Simple Storage Service (Amazon S3) URI, local file path, or location object of the the OpenAPI definition that defines the HTTP API. The Amazon S3 object that this property references must be a valid OpenAPI definition file. If you don't specify a `DefinitionUri` or a `DefinitionBody` are specified, AWS SAM generates a `DefinitionBody` for you based on your template configuration. \nIf you provide a local file path, the template must go through the workflow that includes the `sam deploy` or `sam package` command for the definition to be transformed properly. \nIntrinsic functions are not supported in external OpenApi definition files that you reference with `DefinitionUri`. To import an OpenApi definition into the template, use the `DefinitionBody` property with the [Include transform](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/create-reusable-transform-function-snippets-and-add-to-your-template-with-aws-include-transform.html). \n*Type*: String \\$1 [HttpApiDefinition](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-httpapi-httpapidefinition.html) \n*Required*: No \n*CloudFormation compatibility*: This property is similar to the [`BodyS3Location`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-api.html#cfn-apigatewayv2-api-bodys3location) property of an `AWS::ApiGatewayV2::Api` resource. The nested Amazon S3 properties are named differently.", "title": "DefinitionUri" }, "Description": { "markdownDescription": "The description of the HTTP API resource. \nWhen you specify `Description`, AWS SAM will modify the HTTP API resource's OpenApi definition by setting the `description` field. The following scenarios will result in an error: \n+ The `DefinitionBody` property is specified with the `description` field set in the Open API definition \u2013 This results in a conflict of the `description` field that AWS SAM won't resolve.\n+ The `DefinitionUri` property is specified \u2013 AWS SAM won't modify an Open API definition that is retrieved from Amazon S3.\n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "Description", "type": "string" }, "DisableExecuteApiEndpoint": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "Specifies whether clients can invoke your HTTP API by using the default `execute-api` endpoint `https://{api_id}.execute-api.{region}.amazonaws.com`. By default, clients can invoke your API with the default endpoint. To require that clients only use a custom domain name to invoke your API, disable the default endpoint. \nTo use this property, you must specify the `DefinitionBody` property instead of the `DefinitionUri` property or define `x-amazon-apigateway-endpoint-configuration` with `disableExecuteApiEndpoint` in your OpenAPI definition. \n*Type*: Boolean \n*Required*: No \n*CloudFormation compatibility*: This property is similar to the `[ DisableExecuteApiEndpoint](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-api.html#cfn-apigatewayv2-api-disableexecuteapiendpoint)` property of an `AWS::ApiGatewayV2::Api` resource. It is passed directly to the `disableExecuteApiEndpoint` property of an `[ x-amazon-apigateway-endpoint-configuration](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-swagger-extensions-endpoint-configuration.html)` extension, which gets added to the ` [ Body](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-api.html#cfn-apigatewayv2-api-body)` property of an `AWS::ApiGatewayV2::Api` resource.", "title": "DisableExecuteApiEndpoint" }, "Domain": { "allOf": [ { "$ref": "#/definitions/samtranslator__internal__schema_source__aws_serverless_httpapi__Domain" } ], "markdownDescription": "Configures a custom domain for this API Gateway HTTP API. \n*Type*: [HttpApiDomainConfiguration](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-httpapi-httpapidomainconfiguration.html) \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "Domain" }, "FailOnWarnings": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "Specifies whether to roll back the HTTP API creation (`true`) or not (`false`) when a warning is encountered. The default value is `false`. \n*Type*: Boolean \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`FailOnWarnings`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-api.html#cfn-apigatewayv2-api-failonwarnings) property of an `AWS::ApiGatewayV2::Api` resource.", "title": "FailOnWarnings" }, "Name": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The name of the HTTP API resource. \nWhen you specify `Name`, AWS SAM will modify the HTTP API resource's OpenAPI definition by setting the `title` field. The following scenarios will result in an error: \n+ The `DefinitionBody` property is specified with the `title` field set in the Open API definition \u2013 This results in a conflict of the `title` field that AWS SAM won't resolve.\n+ The `DefinitionUri` property is specified \u2013 AWS SAM won't modify an Open API definition that is retrieved from Amazon S3.\n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "Name" }, "PropagateTags": { "markdownDescription": "Indicate whether or not to pass tags from the `Tags` property to your [AWS::Serverless::HttpApi](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-specification-generated-resources-httpapi.html) generated resources. Specify `True` to propagate tags in your generated resources. \n*Type*: Boolean \n*Required*: No \n*Default*: `False` \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "PropagateTags", "type": "boolean" }, "RouteSettings": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The route settings, per route, for this HTTP API. For more information, see [Working with routes for HTTP APIs](https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-develop-routes.html) in the *API Gateway Developer Guide*. \n*Type*: [RouteSettings](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-stage.html#cfn-apigatewayv2-stage-routesettings) \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`RouteSettings`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-stage.html#cfn-apigatewayv2-stage-routesettings) property of an `AWS::ApiGatewayV2::Stage` resource.", "title": "RouteSettings" }, "StageName": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The name of the API stage. If no name is specified, AWS SAM uses the `$default` stage from API Gateway. \n*Type*: String \n*Required*: No \n*Default*: \\$1default \n*CloudFormation compatibility*: This property is passed directly to the [`StageName`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-stage.html#cfn-apigatewayv2-stage-stagename) property of an `AWS::ApiGatewayV2::Stage` resource.", "title": "StageName" }, "StageVariables": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "A map that defines the stage variables. Variable names can have alphanumeric and underscore characters. The values must match [A-Za-z0-9-.\\$1\\$1:/?\\$1&=,]\\$1. \n*Type*: [Json](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-stage.html#cfn-apigatewayv2-stage-stagevariables) \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`StageVariables`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-stage.html#cfn-apigatewayv2-stage-stagevariables) property of an `AWS::ApiGatewayV2::Stage` resource.", "title": "StageVariables" }, "Tags": { "markdownDescription": "A map (string to string) that specifies the tags to add to this API Gateway stage. Keys can be 1 to 128 Unicode characters in length and cannot include the prefix `aws:`. You can use any of the following characters: the set of Unicode letters, digits, whitespace, `_`, `.`, `/`, `=`, `+`, and `-`. Values can be 1 to 256 Unicode characters in length. \n*Type*: Map \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent. \n*Additional notes*: The `Tags` property requires AWS SAM to modify your OpenAPI definition, so tags are added only if the `DefinitionBody` property is specified\u2014no tags are added if the `DefinitionUri` property is specified. AWS SAM automatically adds an `httpapi:createdBy:SAM` tag. Tags are also added to the `AWS::ApiGatewayV2::Stage` resource and the `AWS::ApiGatewayV2::DomainName` resource (if `DomainName` is specified).", "title": "Tags", "type": "object" } }, "title": "Properties", "type": "object" }, "samtranslator__internal__schema_source__aws_serverless_httpapi__Resource": { "additionalProperties": false, "properties": { "Condition": { "$ref": "#/definitions/PassThroughProp" }, "Connectors": { "additionalProperties": { "$ref": "#/definitions/EmbeddedConnector" }, "title": "Connectors", "type": "object" }, "DeletionPolicy": { "$ref": "#/definitions/PassThroughProp" }, "DependsOn": { "$ref": "#/definitions/PassThroughProp" }, "IgnoreGlobals": { "anyOf": [ { "type": "string" }, { "items": { "type": "string" }, "type": "array" } ], "title": "Ignoreglobals" }, "Metadata": { "$ref": "#/definitions/PassThroughProp" }, "Properties": { "$ref": "#/definitions/samtranslator__internal__schema_source__aws_serverless_httpapi__Properties" }, "Type": { "enum": [ "AWS::Serverless::HttpApi" ], "title": "Type", "type": "string" }, "UpdateReplacePolicy": { "$ref": "#/definitions/PassThroughProp" } }, "required": [ "Type" ], "title": "Resource", "type": "object" }, "samtranslator__internal__schema_source__aws_serverless_httpapi__Route53": { "additionalProperties": false, "properties": { "DistributionDomainName": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "Configures a custom distribution of the API custom domain name. \n*Type*: String \n*Required*: No \n*Default*: Use the API Gateway distribution. \n*CloudFormation compatibility*: This property is passed directly to the [`DNSName`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-aliastarget-1.html#cfn-route53-aliastarget-dnshostname) property of an `AWS::Route53::RecordSetGroup AliasTarget` resource. \n*Additional notes*: The domain name of a [CloudFront distribution](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-distribution.html).", "title": "DistributionDomainName" }, "EvaluateTargetHealth": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "When EvaluateTargetHealth is true, an alias record inherits the health of the referenced AWS resource, such as an Elastic Load Balancing load balancer or another record in the hosted zone. \n*Type*: Boolean \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`EvaluateTargetHealth`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-aliastarget.html#cfn-route53-aliastarget-evaluatetargethealth) property of an `AWS::Route53::RecordSetGroup AliasTarget` resource. \n*Additional notes*: You can't set EvaluateTargetHealth to true when the alias target is a CloudFront distribution.", "title": "EvaluateTargetHealth" }, "HostedZoneId": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The ID of the hosted zone that you want to create records in. \nSpecify either `HostedZoneName` or `HostedZoneId`, but not both. If you have multiple hosted zones with the same domain name, you must specify the hosted zone using `HostedZoneId`. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`HostedZoneId`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset-1.html#cfn-route53-recordset-hostedzoneid) property of an `AWS::Route53::RecordSetGroup RecordSet` resource.", "title": "HostedZoneId" }, "HostedZoneName": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The name of the hosted zone that you want to create records in. You must include a trailing dot (for example, `www.example.com.`) as part of the `HostedZoneName`. \nSpecify either `HostedZoneName` or `HostedZoneId`, but not both. If you have multiple hosted zones with the same domain name, you must specify the hosted zone using `HostedZoneId`. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`HostedZoneName`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset-1.html#cfn-route53-recordset-hostedzonename) property of an `AWS::Route53::RecordSetGroup RecordSet` resource.", "title": "HostedZoneName" }, "IpV6": { "markdownDescription": "When this property is set, AWS SAM creates a `AWS::Route53::RecordSet` resource and sets [Type](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset.html#cfn-route53-recordset-type) to `AAAA` for the provided HostedZone. \n*Type*: Boolean \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "IpV6", "type": "boolean" }, "Region": { "__samPassThrough": { "markdownDescriptionOverride": "*Latency-based resource record sets only:* The Amazon EC2 Region where you created the resource that this resource record set refers to. The resource typically is an AWS resource, such as an EC2 instance or an ELB load balancer, and is referred to by an IP address or a DNS domain name, depending on the record type. \nWhen Amazon Route\u00a053 receives a DNS query for a domain name and type for which you have created latency resource record sets, Route\u00a053 selects the latency resource record set that has the lowest latency between the end user and the associated Amazon EC2 Region. Route\u00a053 then returns the value that is associated with the selected resource record set. \nNote the following: \n+ You can only specify one `ResourceRecord` per latency resource record set.\n+ You can only create one latency resource record set for each Amazon EC2 Region.\n+ You aren't required to create latency resource record sets for all Amazon EC2 Regions. Route\u00a053 will choose the region with the best latency from among the regions that you create latency resource record sets for.\n+ You can't create non-latency resource record sets that have the same values for the `Name` and `Type` elements as latency resource record sets.\n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the `[ Region](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset-1.html#cfn-route53-recordset-region)` property of an `AWS::Route53::RecordSetGroup` `RecordSet` data type.", "schemaPath": [ "definitions", "AWS::Route53::RecordSetGroup.RecordSet", "properties", "Region" ] }, "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "title": "Region" }, "SetIdentifier": { "__samPassThrough": { "markdownDescriptionOverride": "*Resource record sets that have a routing policy other than simple:* An identifier that differentiates among multiple resource record sets that have the same combination of name and type, such as multiple weighted resource record sets named acme.example.com that have a type of A. In a group of resource record sets that have the same name and type, the value of `SetIdentifier` must be unique for each resource record set. \nFor information about routing policies, see [Choosing a routing policy](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/routing-policy.html) in the *Amazon Route\u00a053 Developer Guide*. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the `[ SetIdentifier](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset-1.html#cfn-route53-recordset-setidentifier)` property of an `AWS::Route53::RecordSetGroup` `RecordSet` data type.", "schemaPath": [ "definitions", "AWS::Route53::RecordSetGroup.RecordSet", "properties", "SetIdentifier" ] }, "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "title": "SetIdentifier" } }, "title": "Route53", "type": "object" }, "samtranslator__internal__schema_source__aws_serverless_layerversion__Globals": { "additionalProperties": false, "properties": { "PublishLambdaVersion": { "markdownDescription": "An opt-in property that creates a new Lambda version whenever there is a change in the referenced `LayerVersion` resource. When enabled with `AutoPublishAlias` and `AutoPublishAliasAllProperties` in the connected Lambda function, there will be a new Lambda version created for every change made to the `LayerVersion` resource. \n*Type*: Boolean \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "PublishLambdaVersion", "type": "boolean" } }, "title": "Globals", "type": "object" }, "samtranslator__internal__schema_source__aws_serverless_layerversion__Properties": { "additionalProperties": false, "properties": { "CompatibleArchitectures": { "__samPassThrough": { "markdownDescriptionOverride": "Specifies the supported instruction set architectures for the layer version. \nFor more information about this property, see [Lambda instruction set architectures](https://docs.aws.amazon.com/lambda/latest/dg/foundation-arch.html) in the *AWS Lambda Developer Guide*. \n*Valid values*: `x86_64`, `arm64` \n*Type*: List \n*Required*: No \n*Default*: `x86_64` \n*CloudFormation compatibility*: This property is passed directly to the [`CompatibleArchitectures`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-layerversion.html#cfn-lambda-layerversion-compatiblearchitectures) property of an `AWS::Lambda::LayerVersion` resource.", "schemaPath": [ "definitions", "AWS::Lambda::LayerVersion", "properties", "Properties", "properties", "CompatibleArchitectures" ] }, "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "title": "CompatibleArchitectures" }, "CompatibleRuntimes": { "__samPassThrough": { "markdownDescriptionOverride": "List of runtimes compatible with this LayerVersion. \n*Type*: List \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`CompatibleRuntimes`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-layerversion.html#cfn-lambda-layerversion-compatibleruntimes) property of an `AWS::Lambda::LayerVersion` resource.", "schemaPath": [ "definitions", "AWS::Lambda::LayerVersion", "properties", "Properties", "properties", "CompatibleRuntimes" ] }, "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "title": "CompatibleRuntimes" }, "ContentUri": { "anyOf": [ { "type": "string" }, { "$ref": "#/definitions/ContentUri" } ], "markdownDescription": "Amazon S3 Uri, path to local folder, or LayerContent object of the layer code. \nIf an Amazon S3 Uri or LayerContent object is provided, The Amazon S3 object referenced must be a valid ZIP archive that contains the contents of an [Lambda layer](https://docs.aws.amazon.com/lambda/latest/dg/configuration-layers.html). \nIf a path to a local folder is provided, for the content to be transformed properly the template must go through the workflow that includes [sam build](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-cli-command-reference-sam-build.html) followed by either [sam deploy](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-cli-command-reference-sam-deploy.html) or [sam package](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-cli-command-reference-sam-package.html). By default, relative paths are resolved with respect to the AWS SAM template's location. \n*Type*: String \\$1 [LayerContent](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-layerversion-layercontent.html) \n*Required*: Yes \n*CloudFormation compatibility*: This property is similar to the [`Content`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-layerversion.html#cfn-lambda-layerversion-content) property of an `AWS::Lambda::LayerVersion` resource. The nested Amazon S3 properties are named differently.", "title": "ContentUri" }, "Description": { "__samPassThrough": { "markdownDescriptionOverride": "Description of this layer. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`Description`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-layerversion.html#cfn-lambda-layerversion-description) property of an `AWS::Lambda::LayerVersion` resource.", "schemaPath": [ "definitions", "AWS::Lambda::LayerVersion", "properties", "Properties", "properties", "Description" ] }, "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "title": "Description" }, "LayerName": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The name or Amazon Resource Name (https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/ARN.html) of the layer. \n*Type*: String \n*Required*: No \n*Default*: Resource logical id \n*CloudFormation compatibility*: This property is similar to the [`LayerName`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-layerversion.html#cfn-lambda-layerversion-layername) property of an `AWS::Lambda::LayerVersion` resource. If you don't specify a name, the logical id of the resource will be used as the name.", "title": "LayerName" }, "LicenseInfo": { "__samPassThrough": { "markdownDescriptionOverride": "Information about the license for this LayerVersion. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`LicenseInfo`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-layerversion.html#cfn-lambda-layerversion-licenseinfo) property of an `AWS::Lambda::LayerVersion` resource.", "schemaPath": [ "definitions", "AWS::Lambda::LayerVersion", "properties", "Properties", "properties", "LicenseInfo" ] }, "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "title": "LicenseInfo" }, "PublishLambdaVersion": { "markdownDescription": "An opt-in property that creates a new Lambda version whenever there is a change in the referenced `LayerVersion` resource. When enabled with `AutoPublishAlias` and `AutoPublishAliasAllProperties` in the connected Lambda function, there will be a new Lambda version created for every change made to the `LayerVersion` resource. \n*Type*: Boolean \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "PublishLambdaVersion", "type": "boolean" }, "RetentionPolicy": { "anyOf": [ { "type": "object" }, { "type": "string" } ], "markdownDescription": "This property specifies whether old versions of your `LayerVersion` are retained or deleted when you delete a resource. If you need to retain old versions of your `LayerVersion` when updating or replacing a resource, you must have the `UpdateReplacePolicy` attribute enabled. For information on doing this, refer to [`UpdateReplacePolicy` attribute](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-updatereplacepolicy.html) in the *AWS CloudFormation User Guide*. \n*Valid values*: `Retain` or `Delete` \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent. \n*Additional notes*: When you specify `Retain`, AWS SAM adds a [Resource attributes supported by AWS SAM](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-specification-resource-attributes.html) of `DeletionPolicy: Retain` to the transformed `AWS::Lambda::LayerVersion` resource.", "title": "RetentionPolicy" } }, "required": [ "ContentUri" ], "title": "Properties", "type": "object" }, "samtranslator__internal__schema_source__aws_serverless_layerversion__Resource": { "additionalProperties": false, "properties": { "Condition": { "$ref": "#/definitions/PassThroughProp" }, "DeletionPolicy": { "$ref": "#/definitions/PassThroughProp" }, "DependsOn": { "$ref": "#/definitions/PassThroughProp" }, "IgnoreGlobals": { "anyOf": [ { "type": "string" }, { "items": { "type": "string" }, "type": "array" } ], "title": "Ignoreglobals" }, "Metadata": { "$ref": "#/definitions/PassThroughProp" }, "Properties": { "$ref": "#/definitions/samtranslator__internal__schema_source__aws_serverless_layerversion__Properties" }, "Type": { "enum": [ "AWS::Serverless::LayerVersion" ], "title": "Type", "type": "string" }, "UpdateReplacePolicy": { "$ref": "#/definitions/PassThroughProp" } }, "required": [ "Type", "Properties" ], "title": "Resource", "type": "object" }, "samtranslator__internal__schema_source__aws_serverless_simpletable__Globals": { "additionalProperties": false, "properties": { "SSESpecification": { "__samPassThrough": { "markdownDescriptionOverride": "Specifies the settings to enable server-side encryption. \n*Type*: [SSESpecification](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-table-ssespecification.html) \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`SSESpecification`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-table-ssespecification.html) property of an `AWS::DynamoDB::Table` resource.", "schemaPath": [ "definitions", "AWS::DynamoDB::Table", "properties", "Properties", "properties", "SSESpecification" ] }, "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "title": "SSESpecification" } }, "title": "Globals", "type": "object" }, "samtranslator__internal__schema_source__aws_serverless_simpletable__Properties": { "additionalProperties": false, "properties": { "PointInTimeRecoverySpecification": { "__samPassThrough": { "markdownDescriptionOverride": "Read and write throughput provisioning information. \nIf `ProvisionedThroughput` is not specified `BillingMode` will be specified as `PAY_PER_REQUEST`. \n*Type*: [ProvisionedThroughputObject](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-simpletable-provisionedthroughputobject.html) \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`ProvisionedThroughput`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-table-provisionedthroughput.html) property of an `AWS::DynamoDB::Table` resource.", "schemaPath": [ "definitions", "AWS::DynamoDB::Table", "properties", "Properties", "properties", "PointInTimeRecoverySpecification" ] }, "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "title": "ProvisionedThroughput" }, "PrimaryKey": { "allOf": [ { "$ref": "#/definitions/PrimaryKey" } ], "markdownDescription": "Attribute name and type to be used as the table's primary key. If not provided, the primary key will be a `String` with a value of `id`. \nThe value of this property cannot be modified after this resource is created.\n*Type*: [PrimaryKeyObject](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-simpletable-primarykeyobject.html) \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "PrimaryKey" }, "ProvisionedThroughput": { "__samPassThrough": { "markdownDescriptionOverride": "Read and write throughput provisioning information. \nIf `ProvisionedThroughput` is not specified `BillingMode` will be specified as `PAY_PER_REQUEST`. \n*Type*: [ProvisionedThroughputObject](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-simpletable-provisionedthroughputobject.html) \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`ProvisionedThroughput`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-table-provisionedthroughput.html) property of an `AWS::DynamoDB::Table` resource.", "schemaPath": [ "definitions", "AWS::DynamoDB::Table", "properties", "Properties", "properties", "ProvisionedThroughput" ] }, "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "title": "ProvisionedThroughput" }, "SSESpecification": { "__samPassThrough": { "markdownDescriptionOverride": "Specifies the settings to enable server-side encryption. \n*Type*: [SSESpecification](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-table-ssespecification.html) \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`SSESpecification`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-table-ssespecification.html) property of an `AWS::DynamoDB::Table` resource.", "schemaPath": [ "definitions", "AWS::DynamoDB::Table", "properties", "Properties", "properties", "SSESpecification" ] }, "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "title": "SSESpecification" }, "TableName": { "__samPassThrough": { "markdownDescriptionOverride": "Name for the DynamoDB Table. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`TableName`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-table.html#cfn-dynamodb-table-tablename) property of an `AWS::DynamoDB::Table` resource.", "schemaPath": [ "definitions", "AWS::DynamoDB::Table", "properties", "Properties", "properties", "TableName" ] }, "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "title": "TableName" }, "Tags": { "markdownDescription": "A map (string to string) that specifies the tags to be added to this SimpleTable. For details about valid keys and values for tags, see [Resource tag](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resource-tags.html) in the *AWS CloudFormation User Guide*. \n*Type*: Map \n*Required*: No \n*CloudFormation compatibility*: This property is similar to the [`Tags`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-table.html#cfn-dynamodb-table-tags) property of an `AWS::DynamoDB::Table` resource. The Tags property in SAM consists of Key:Value pairs; in CloudFormation it consists of a list of Tag objects.", "title": "Tags", "type": "object" } }, "title": "Properties", "type": "object" }, "samtranslator__internal__schema_source__aws_serverless_simpletable__Resource": { "additionalProperties": false, "properties": { "Condition": { "$ref": "#/definitions/PassThroughProp" }, "Connectors": { "additionalProperties": { "$ref": "#/definitions/EmbeddedConnector" }, "title": "Connectors", "type": "object" }, "DeletionPolicy": { "$ref": "#/definitions/PassThroughProp" }, "DependsOn": { "$ref": "#/definitions/PassThroughProp" }, "IgnoreGlobals": { "anyOf": [ { "type": "string" }, { "items": { "type": "string" }, "type": "array" } ], "title": "Ignoreglobals" }, "Metadata": { "$ref": "#/definitions/PassThroughProp" }, "Properties": { "$ref": "#/definitions/samtranslator__internal__schema_source__aws_serverless_simpletable__Properties" }, "Type": { "enum": [ "AWS::Serverless::SimpleTable" ], "title": "Type", "type": "string" }, "UpdateReplacePolicy": { "$ref": "#/definitions/PassThroughProp" } }, "required": [ "Type" ], "title": "Resource", "type": "object" }, "samtranslator__internal__schema_source__aws_serverless_statemachine__ApiEvent": { "additionalProperties": false, "properties": { "Properties": { "allOf": [ { "$ref": "#/definitions/samtranslator__internal__schema_source__aws_serverless_statemachine__ApiEventProperties" } ], "markdownDescription": "An object describing the properties of this event mapping. The set of properties must conform to the defined `Type`. \n*Type*: [Schedule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-statemachine-statemachineschedule.html) \\$1 [ScheduleV2](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-statemachine-statemachineschedulev2.html) \\$1 [CloudWatchEvent](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-statemachine-statemachinecloudwatchevent.html) \\$1 [EventBridgeRule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-statemachine-statemachineeventbridgerule.html) \\$1 [Api](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-statemachine-statemachineapi.html) \n*Required*: Yes \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "Properties" }, "Type": { "enum": [ "Api" ], "markdownDescription": "The event type. \n*Valid values*: `Api`, `Schedule`, `ScheduleV2`, `CloudWatchEvent`, `EventBridgeRule` \n*Type*: String \n*Required*: Yes \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "Type", "type": "string" } }, "required": [ "Type", "Properties" ], "title": "ApiEvent", "type": "object" }, "samtranslator__internal__schema_source__aws_serverless_statemachine__ApiEventProperties": { "additionalProperties": false, "properties": { "Auth": { "allOf": [ { "$ref": "#/definitions/samtranslator__internal__schema_source__aws_serverless_statemachine__Auth" } ], "markdownDescription": "The authorization configuration for this API, path, and method. \nUse this property to override the API's `DefaultAuthorizer` setting for an individual path, when no `DefaultAuthorizer` is specified, or to override the default `ApiKeyRequired` setting. \n*Type*: [ApiStateMachineAuth](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-statemachine-apistatemachineauth.html) \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "Auth" }, "Method": { "markdownDescription": "The HTTP method for which this function is invoked. \n*Type*: String \n*Required*: Yes \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "Method", "type": "string" }, "Path": { "markdownDescription": "The URI path for which this function is invoked. The value must start with `/`. \n*Type*: String \n*Required*: Yes \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "Path", "type": "string" }, "RestApiId": { "anyOf": [ { "type": "object" }, { "type": "string" } ], "markdownDescription": "The identifier of a `RestApi` resource, which must contain an operation with the given path and method. Typically, this is set to reference an [AWS::Serverless::Api](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-resource-api.html) resource that is defined in this template. \nIf you don't define this property, AWS SAM creates a default [AWS::Serverless::Api](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-resource-api.html) resource using a generated `OpenApi` document. That resource contains a union of all paths and methods defined by `Api` events in the same template that do not specify a `RestApiId`. \nThis property can't reference an [AWS::Serverless::Api](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-resource-api.html) resource that is defined in another template. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "RestApiId" }, "UnescapeMappingTemplate": { "markdownDescription": "Unescapes single quotes, by replacing `\\'` with `'`, on the input that is passed to the state machine. Use when your input contains single quotes. \nIf set to `False` and your input contains single quotes, an error will occur.\n*Type*: Boolean \n*Required*: No \n*Default*: False \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "UnescapeMappingTemplate", "type": "boolean" } }, "required": [ "Method", "Path" ], "title": "ApiEventProperties", "type": "object" }, "samtranslator__internal__schema_source__aws_serverless_statemachine__Auth": { "additionalProperties": false, "properties": { "ApiKeyRequired": { "markdownDescription": "Requires an API key for this API, path, and method. \n*Type*: Boolean \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "ApiKeyRequired", "type": "boolean" }, "AuthorizationScopes": { "items": { "type": "string" }, "markdownDescription": "The authorization scopes to apply to this API, path, and method. \nThe scopes that you specify will override any scopes applied by the `DefaultAuthorizer` property if you have specified it. \n*Type*: List \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "AuthorizationScopes", "type": "array" }, "Authorizer": { "markdownDescription": "The `Authorizer` for a specific state machine. \nIf you have specified a global authorizer for the API and want to make this state machine public, override the global authorizer by setting `Authorizer` to `NONE`. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "Authorizer", "type": "string" }, "ResourcePolicy": { "allOf": [ { "$ref": "#/definitions/samtranslator__internal__schema_source__aws_serverless_statemachine__ResourcePolicy" } ], "markdownDescription": "Configure the resource policy for this API and path. \n*Type*: [ResourcePolicyStatement](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-statemachine-resourcepolicystatement.html) \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "ResourcePolicy" } }, "title": "Auth", "type": "object" }, "samtranslator__internal__schema_source__aws_serverless_statemachine__CloudWatchEvent": { "additionalProperties": false, "properties": { "Properties": { "allOf": [ { "$ref": "#/definitions/samtranslator__internal__schema_source__aws_serverless_statemachine__CloudWatchEventProperties" } ], "markdownDescription": "An object describing the properties of this event mapping. The set of properties must conform to the defined `Type`. \n*Type*: [Schedule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-statemachine-statemachineschedule.html) \\$1 [ScheduleV2](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-statemachine-statemachineschedulev2.html) \\$1 [CloudWatchEvent](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-statemachine-statemachinecloudwatchevent.html) \\$1 [EventBridgeRule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-statemachine-statemachineeventbridgerule.html) \\$1 [Api](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-statemachine-statemachineapi.html) \n*Required*: Yes \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "Properties" }, "Type": { "enum": [ "CloudWatchEvent" ], "markdownDescription": "The event type. \n*Valid values*: `Api`, `Schedule`, `ScheduleV2`, `CloudWatchEvent`, `EventBridgeRule` \n*Type*: String \n*Required*: Yes \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "Type", "type": "string" } }, "required": [ "Type", "Properties" ], "title": "CloudWatchEvent", "type": "object" }, "samtranslator__internal__schema_source__aws_serverless_statemachine__CloudWatchEventProperties": { "additionalProperties": false, "properties": { "EventBusName": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The event bus to associate with this rule. If you omit this property, AWS SAM uses the default event bus. \n*Type*: String \n*Required*: No \n*Default*: Default event bus \n*CloudFormation compatibility*: This property is passed directly to the [`EventBusName`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-rule.html#cfn-events-rule-eventbusname) property of an `AWS::Events::Rule` resource.", "title": "EventBusName" }, "Input": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "Valid JSON text passed to the target. If you use this property, nothing from the event text itself is passed to the target. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`Input`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-target.html#cfn-events-rule-target-input) property of an `AWS::Events::Rule Target` resource.", "title": "Input" }, "InputPath": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "When you don't want to pass the entire matched event to the target, use the `InputPath` property to describe which part of the event to pass. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`InputPath`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-target.html#cfn-events-rule-target-inputpath) property of an `AWS::Events::Rule Target` resource.", "title": "InputPath" }, "Pattern": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "Describes which events are routed to the specified target. For more information, see [Events and Event Patterns in EventBridge](https://docs.aws.amazon.com/eventbridge/latest/userguide/eventbridge-and-event-patterns.html) in the *Amazon EventBridge User Guide*. \n*Type*: [EventPattern](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-rule.html#cfn-events-rule-eventpattern) \n*Required*: Yes \n*CloudFormation compatibility*: This property is passed directly to the [`EventPattern`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-rule.html#cfn-events-rule-eventpattern) property of an `AWS::Events::Rule` resource.", "title": "Pattern" } }, "title": "CloudWatchEventProperties", "type": "object" }, "samtranslator__internal__schema_source__aws_serverless_statemachine__DeadLetterConfig": { "additionalProperties": false, "properties": { "Arn": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The Amazon Resource Name (https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/ARN.html) of the Amazon SQS queue specified as the target for the dead-letter queue. \nSpecify either the `Type` property or `Arn` property, but not both.\n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`Arn`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-deadletterconfig.html#cfn-events-rule-deadletterconfig-arn) property of the `AWS::Events::Rule` `DeadLetterConfig` data type.", "title": "Arn" }, "QueueLogicalId": { "markdownDescription": "The custom name of the dead letter queue that AWS SAM creates if `Type` is specified. \nIf the `Type` property is not set, this property is ignored.\n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "QueueLogicalId", "type": "string" }, "Type": { "enum": [ "SQS" ], "markdownDescription": "The type of the queue. When this property is set, AWS SAM automatically creates a dead-letter queue and attaches necessary [resource-based policy](https://docs.aws.amazon.com/eventbridge/latest/userguide/rule-dlq.html#dlq-perms) to grant permission to rule resource to send events to the queue. \nSpecify either the `Type` property or `Arn` property, but not both.\n*Valid values*: `SQS` \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "Type", "type": "string" } }, "title": "DeadLetterConfig", "type": "object" }, "samtranslator__internal__schema_source__aws_serverless_statemachine__EventBridgeRuleEvent": { "additionalProperties": false, "properties": { "Properties": { "allOf": [ { "$ref": "#/definitions/samtranslator__internal__schema_source__aws_serverless_statemachine__EventBridgeRuleEventProperties" } ], "markdownDescription": "An object describing the properties of this event mapping. The set of properties must conform to the defined `Type`. \n*Type*: [Schedule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-statemachine-statemachineschedule.html) \\$1 [ScheduleV2](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-statemachine-statemachineschedulev2.html) \\$1 [CloudWatchEvent](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-statemachine-statemachinecloudwatchevent.html) \\$1 [EventBridgeRule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-statemachine-statemachineeventbridgerule.html) \\$1 [Api](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-statemachine-statemachineapi.html) \n*Required*: Yes \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "Properties" }, "Type": { "enum": [ "EventBridgeRule" ], "markdownDescription": "The event type. \n*Valid values*: `Api`, `Schedule`, `ScheduleV2`, `CloudWatchEvent`, `EventBridgeRule` \n*Type*: String \n*Required*: Yes \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "Type", "type": "string" } }, "required": [ "Type", "Properties" ], "title": "EventBridgeRuleEvent", "type": "object" }, "samtranslator__internal__schema_source__aws_serverless_statemachine__EventBridgeRuleEventProperties": { "additionalProperties": false, "properties": { "DeadLetterConfig": { "allOf": [ { "$ref": "#/definitions/samtranslator__internal__schema_source__aws_serverless_statemachine__DeadLetterConfig" } ], "markdownDescription": "Configure the Amazon Simple Queue Service (Amazon SQS) queue where EventBridge sends events after a failed target invocation. Invocation can fail, for example, when sending an event to a Lambda function that doesn't exist, or when EventBridge has insufficient permissions to invoke the Lambda function. For more information, see [Event retry policy and using dead-letter queues](https://docs.aws.amazon.com/eventbridge/latest/userguide/rule-dlq.html) in the *Amazon EventBridge User Guide*. \n*Type*: [DeadLetterConfig](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-statemachine-statemachinedeadletterconfig.html) \n*Required*: No \n*CloudFormation compatibility*: This property is similar to the [`DeadLetterConfig`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-target.html#cfn-events-rule-target-deadletterconfig) property of the `AWS::Events::Rule` `Target` data type. The AWS SAM version of this property includes additional subproperties, in case you want AWS SAM to create the dead-letter queue for you.", "title": "DeadLetterConfig" }, "EventBusName": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The event bus to associate with this rule. If you omit this property, AWS SAM uses the default event bus. \n*Type*: String \n*Required*: No \n*Default*: Default event bus \n*CloudFormation compatibility*: This property is passed directly to the [`EventBusName`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-rule.html#cfn-events-rule-eventbusname) property of an `AWS::Events::Rule` resource.", "title": "EventBusName" }, "Input": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "Valid JSON text passed to the target. If you use this property, nothing from the event text itself is passed to the target. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`Input`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-target.html#cfn-events-rule-target-input) property of an `AWS::Events::Rule Target` resource.", "title": "Input" }, "InputPath": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "When you don't want to pass the entire matched event to the target, use the `InputPath` property to describe which part of the event to pass. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`InputPath`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-target.html#cfn-events-rule-target-inputpath) property of an `AWS::Events::Rule Target` resource.", "title": "InputPath" }, "InputTransformer": { "__samPassThrough": { "markdownDescriptionOverride": "Settings to enable you to provide custom input to a target based on certain event data. You can extract one or more key-value pairs from the event and then use that data to send customized input to the target. For more information, see [ Amazon EventBridge input transformation](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-transform-target-input.html) in the *Amazon EventBridge User Guide*. \n*Type*: [InputTransformer](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-target.html#cfn-events-rule-target-inputtransformer) \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the `[InputTransformer](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-inputtransformer.html) ` property of an `AWS::Events::Rule` `Target` data type.", "schemaPath": [ "definitions", "AWS::Events::Rule.Target", "properties", "InputTransformer" ] }, "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "title": "InputTransformer" }, "Pattern": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "Describes which events are routed to the specified target. For more information, see [Events and Event Patterns in EventBridge](https://docs.aws.amazon.com/eventbridge/latest/userguide/eventbridge-and-event-patterns.html) in the *Amazon EventBridge User Guide*. \n*Type*: [EventPattern](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-rule.html#cfn-events-rule-eventpattern) \n*Required*: Yes \n*CloudFormation compatibility*: This property is passed directly to the [`EventPattern`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-rule.html#cfn-events-rule-eventpattern) property of an `AWS::Events::Rule` resource.", "title": "Pattern" }, "RetryPolicy": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "A `RetryPolicy` object that includes information about the retry policy settings. For more information, see [Event retry policy and using dead-letter queues](https://docs.aws.amazon.com/eventbridge/latest/userguide/rule-dlq.html) in the *Amazon EventBridge User Guide*. \n*Type*: [RetryPolicy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-target.html#cfn-events-rule-target-retrypolicy) \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`RetryPolicy`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-target.html#cfn-events-rule-target-retrypolicy) property of the `AWS::Events::Rule` `Target` data type.", "title": "RetryPolicy" }, "RuleName": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The name of the rule. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`Name`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-rule.html#cfn-events-rule-name) property of an `AWS::Events::Rule` resource.", "title": "RuleName" }, "Target": { "allOf": [ { "$ref": "#/definitions/samtranslator__internal__schema_source__aws_serverless_statemachine__EventBridgeRuleTarget" } ], "markdownDescription": "The AWS resource that EventBridge invokes when a rule is triggered. You can use this property to specify the logical ID of the target. If this property is not specified, then AWS SAM generates the logical ID of the target. \n*Type*: [Target](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-statemachine-statemachinetarget.html) \n*Required*: No \n*CloudFormation compatibility*: This property is similar to the [`Targets`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-rule.html#cfn-events-rule-targets) property of an `AWS::Events::Rule` resource. The AWS SAM version of this property only allows you to specify the logical ID of a single target.", "title": "Target" } }, "title": "EventBridgeRuleEventProperties", "type": "object" }, "samtranslator__internal__schema_source__aws_serverless_statemachine__EventBridgeRuleTarget": { "additionalProperties": false, "properties": { "Id": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The logical ID of the target. \nThe value of `Id` can include alphanumeric characters, periods (`.`), hyphens (`-`), and underscores (`_`). \n*Type*: String \n*Required*: Yes \n*CloudFormation compatibility*: This property is passed directly to the [`Id`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-target.html#cfn-events-rule-target-id) property of the `AWS::Events::Rule` `Target` data type.", "title": "Id" } }, "required": [ "Id" ], "title": "EventBridgeRuleTarget", "type": "object" }, "samtranslator__internal__schema_source__aws_serverless_statemachine__Globals": { "additionalProperties": false, "properties": { "PropagateTags": { "markdownDescription": "Indicate whether or not to pass tags from the `Tags` property to your [AWS::Serverless::StateMachine](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-specification-generated-resources-statemachine.html) generated resources. Specify `True` to propagate tags in your generated resources. \n*Type*: Boolean \n*Required*: No \n*Default*: `False` \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "PropagateTags", "type": "boolean" } }, "title": "Globals", "type": "object" }, "samtranslator__internal__schema_source__aws_serverless_statemachine__Properties": { "additionalProperties": false, "properties": { "AutoPublishAlias": { "$ref": "#/definitions/PassThroughProp" }, "Definition": { "markdownDescription": "The state machine definition is an object, where the format of the object matches the format of your AWS SAM template file, for example, JSON or YAML. State machine definitions adhere to the [Amazon States Language](https://docs.aws.amazon.com/step-functions/latest/dg/concepts-amazon-states-language.html). \nFor an example of an inline state machine definition, see [Examples](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/#sam-resource-statemachine--examples.html#sam-resource-statemachine--examples). \nYou must provide either a `Definition` or a `DefinitionUri`. \n*Type*: Map \n*Required*: Conditional \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "Definition", "type": "object" }, "DefinitionSubstitutions": { "markdownDescription": "A string-to-string map that specifies the mappings for placeholder variables in the state machine definition. This enables you to inject values obtained at runtime (for example, from intrinsic functions) into the state machine definition. \n*Type*: Map \n*Required*: No \n*CloudFormation compatibility*: This property is similar to the [`DefinitionSubstitutions`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-stepfunctions-statemachine.html#cfn-stepfunctions-statemachine-definitionsubstitutions) property of an `AWS::StepFunctions::StateMachine` resource. If any intrinsic functions are specified in an inline state machine definition, AWS SAM adds entries to this property to inject them into the state machine definition.", "title": "DefinitionSubstitutions", "type": "object" }, "DefinitionUri": { "anyOf": [ { "type": "string" }, { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The Amazon Simple Storage Service (Amazon S3) URI or local file path of the state machine definition written in the [Amazon States Language](https://docs.aws.amazon.com/step-functions/latest/dg/concepts-amazon-states-language.html). \nIf you provide a local file path, the template must go through the workflow that includes the `sam deploy` or `sam package` command to correctly transform the definition. To do this, you must use version 0.52.0 or later of the AWS SAM CLI. \nYou must provide either a `Definition` or a `DefinitionUri`. \n*Type*: String \\$1 [S3Location](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-stepfunctions-statemachine.html#cfn-stepfunctions-statemachine-definitions3location) \n*Required*: Conditional \n*CloudFormation compatibility*: This property is passed directly to the [`DefinitionS3Location`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-stepfunctions-statemachine.html#cfn-stepfunctions-statemachine-definitions3location) property of an `AWS::StepFunctions::StateMachine` resource.", "title": "DefinitionUri" }, "DeploymentPreference": { "$ref": "#/definitions/PassThroughProp" }, "Events": { "additionalProperties": { "anyOf": [ { "$ref": "#/definitions/samtranslator__internal__schema_source__aws_serverless_statemachine__ScheduleEvent" }, { "$ref": "#/definitions/samtranslator__internal__schema_source__aws_serverless_statemachine__ScheduleV2Event" }, { "$ref": "#/definitions/samtranslator__internal__schema_source__aws_serverless_statemachine__CloudWatchEvent" }, { "$ref": "#/definitions/samtranslator__internal__schema_source__aws_serverless_statemachine__EventBridgeRuleEvent" }, { "$ref": "#/definitions/samtranslator__internal__schema_source__aws_serverless_statemachine__ApiEvent" } ] }, "markdownDescription": "Specifies the events that trigger this state machine. Events consist of a type and a set of properties that depend on the type. \n*Type*: [EventSource](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-statemachine-statemachineeventsource.html) \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "Events", "type": "object" }, "Logging": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "Defines which execution history events are logged and where they are logged. \n*Type*: [LoggingConfiguration](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-stepfunctions-statemachine.html#cfn-stepfunctions-statemachine-loggingconfiguration) \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`LoggingConfiguration`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-stepfunctions-statemachine.html#cfn-stepfunctions-statemachine-loggingconfiguration) property of an `AWS::StepFunctions::StateMachine` resource.", "title": "Logging" }, "Name": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The name of the state machine. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`StateMachineName`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-stepfunctions-statemachine.html#cfn-stepfunctions-statemachine-statemachinename) property of an `AWS::StepFunctions::StateMachine` resource.", "title": "Name" }, "PermissionsBoundary": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The ARN of a permissions boundary to use for this state machine's execution role. This property only works if the role is generated for you. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`PermissionsBoundary`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html#cfn-iam-role-permissionsboundary) property of an `AWS::IAM::Role` resource.", "title": "PermissionsBoundary" }, "Policies": { "anyOf": [ { "type": "string" }, { "type": "object" }, { "items": { "anyOf": [ { "type": "string" }, { "type": "object" } ] }, "type": "array" } ], "markdownDescription": "Permission policies for this state machine. Policies will be appended to the state machine's default AWS Identity and Access Management (https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/IAM.html) execution role. \nThis property accepts a single value or list of values. Allowed values include: \n+ [AWS SAM\u00a0policy templates](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/serverless-policy-templates.html).\n+ The ARN of an [AWS managed policy](https://docs.aws.amazon.com/https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/IAM.html/latest/UserGuide/access_policies_managed-vs-inline.html#aws-managed-policies) or [customer managed policy](https://docs.aws.amazon.com/https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/IAM.html/latest/UserGuide/access_policies_managed-vs-inline.html#customer-managed-policies).\n+ The name of an AWS managed policy from the following [ list](https://github.com/aws/serverless-application-model/blob/develop/samtranslator/internal/data/aws_managed_policies.json).\n+ An [ inline https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/IAM.html policy](https://docs.aws.amazon.com/https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/IAM.html/latest/UserGuide/access_policies_managed-vs-inline.html#inline-policies) formatted in YAML as a map.\nIf you set the `Role` property, this property is ignored.\n*Type*: String \\$1 List \\$1 Map \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "Policies" }, "PropagateTags": { "markdownDescription": "Indicate whether or not to pass tags from the `Tags` property to your [AWS::Serverless::StateMachine](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-specification-generated-resources-statemachine.html) generated resources. Specify `True` to propagate tags in your generated resources. \n*Type*: Boolean \n*Required*: No \n*Default*: `False` \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "PropagateTags", "type": "boolean" }, "Role": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The ARN of an IAM role to use as this state machine's execution role. \n*Type*: String \n*Required*: Conditional \n*CloudFormation compatibility*: This property is passed directly to the `[ RoleArn](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-stepfunctions-statemachine.html#cfn-stepfunctions-statemachine-rolearn)` property of an `AWS::StepFunctions::StateMachine` resource.", "title": "Role" }, "RolePath": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The path to the state machine's IAM execution role. \nUse this property when the role is generated for you. Do not use when the role is specified with the `Role` property. \n*Type*: String \n*Required*: Conditional \n*CloudFormation compatibility*: This property is passed directly to the [`Path`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html#cfn-iam-role-path) property of an `AWS::IAM::Role` resource.", "title": "RolePath" }, "Tags": { "markdownDescription": "A string-to-string map that specifies the tags added to the state machine and the corresponding execution role. For information about valid keys and values for tags, see the [Tags](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-stepfunctions-statemachine.html#cfn-stepfunctions-statemachine-tags) property of an [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-stepfunctions-statemachine.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-stepfunctions-statemachine.html) resource. \n*Type*: Map \n*Required*: No \n*CloudFormation compatibility*: This property is similar to the [`Tags`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-stepfunctions-statemachine.html#cfn-stepfunctions-statemachine-tags) property of an `AWS::StepFunctions::StateMachine` resource. AWS SAM automatically adds a `stateMachine:createdBy:SAM` tag to this resource, and to the default role that is generated for it.", "title": "Tags", "type": "object" }, "Tracing": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "Selects whether or not AWS X-Ray is enabled for the state machine. For more information about using X-Ray with Step Functions, see [AWS X-Ray and Step Functions](https://docs.aws.amazon.com/step-functions/latest/dg/concepts-xray-tracing.html) in the *AWS Step Functions Developer Guide*. \n*Type*: [TracingConfiguration](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-stepfunctions-statemachine.html#cfn-stepfunctions-statemachine-tracingconfiguration) \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`TracingConfiguration`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-stepfunctions-statemachine.html#cfn-stepfunctions-statemachine-tracingconfiguration) property of an `AWS::StepFunctions::StateMachine` resource.", "title": "Tracing" }, "Type": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The type of the state machine. \n*Valid values*: `STANDARD` or `EXPRESS` \n*Type*: String \n*Required*: No \n*Default*: `STANDARD` \n*CloudFormation compatibility*: This property is passed directly to the [`StateMachineType`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-stepfunctions-statemachine.html#cfn-stepfunctions-statemachine-statemachinetype) property of an `AWS::StepFunctions::StateMachine` resource.", "title": "Type" }, "UseAliasAsEventTarget": { "title": "Usealiasaseventtarget", "type": "boolean" } }, "title": "Properties", "type": "object" }, "samtranslator__internal__schema_source__aws_serverless_statemachine__Resource": { "additionalProperties": false, "properties": { "Condition": { "$ref": "#/definitions/PassThroughProp" }, "Connectors": { "additionalProperties": { "$ref": "#/definitions/EmbeddedConnector" }, "title": "Connectors", "type": "object" }, "DeletionPolicy": { "$ref": "#/definitions/PassThroughProp" }, "DependsOn": { "$ref": "#/definitions/PassThroughProp" }, "IgnoreGlobals": { "anyOf": [ { "type": "string" }, { "items": { "type": "string" }, "type": "array" } ], "title": "Ignoreglobals" }, "Metadata": { "$ref": "#/definitions/PassThroughProp" }, "Properties": { "$ref": "#/definitions/samtranslator__internal__schema_source__aws_serverless_statemachine__Properties" }, "Type": { "enum": [ "AWS::Serverless::StateMachine" ], "title": "Type", "type": "string" }, "UpdateReplacePolicy": { "$ref": "#/definitions/PassThroughProp" } }, "required": [ "Type", "Properties" ], "title": "Resource", "type": "object" }, "samtranslator__internal__schema_source__aws_serverless_statemachine__ResourcePolicy": { "additionalProperties": false, "properties": { "AwsAccountBlacklist": { "items": { "anyOf": [ { "type": "string" }, { "type": "object" } ] }, "markdownDescription": "The AWS accounts to block. \n*Type*: List of String \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "AwsAccountBlacklist", "type": "array" }, "AwsAccountWhitelist": { "items": { "anyOf": [ { "type": "string" }, { "type": "object" } ] }, "markdownDescription": "The AWS accounts to allow. For an example use of this property, see the Examples section at the bottom of this page. \n*Type*: List of String \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "AwsAccountWhitelist", "type": "array" }, "CustomStatements": { "items": { "anyOf": [ { "type": "string" }, { "type": "object" } ] }, "markdownDescription": "A list of custom resource policy statements to apply to this API. For an example use of this property, see the Examples section at the bottom of this page. \n*Type*: List \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "CustomStatements", "type": "array" }, "IntrinsicVpcBlacklist": { "items": { "anyOf": [ { "type": "string" }, { "type": "object" } ] }, "markdownDescription": "The list of virtual private clouds (https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/VPCs.html) to block, where each VPC is specified as a reference such as a [dynamic reference](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/dynamic-references.html) or the `Ref` [intrinsic function](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-ref.html). For an example use of this property, see the Examples section at the bottom of this page. \n*Type*: List \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "IntrinsicVpcBlacklist", "type": "array" }, "IntrinsicVpcWhitelist": { "items": { "anyOf": [ { "type": "string" }, { "type": "object" } ] }, "markdownDescription": "The list of VPCs to allow, where each VPC is specified as a reference such as a [dynamic reference](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/dynamic-references.html) or the `Ref` [intrinsic function](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-ref.html). \n*Type*: List \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "IntrinsicVpcWhitelist", "type": "array" }, "IntrinsicVpceBlacklist": { "items": { "anyOf": [ { "type": "string" }, { "type": "object" } ] }, "markdownDescription": "The list of VPC endpoints to block, where each VPC endpoint is specified as a reference such as a [dynamic reference](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/dynamic-references.html) or the `Ref` [intrinsic function](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-ref.html). \n*Type*: List \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "IntrinsicVpceBlacklist", "type": "array" }, "IntrinsicVpceWhitelist": { "items": { "anyOf": [ { "type": "string" }, { "type": "object" } ] }, "markdownDescription": "The list of VPC endpoints to allow, where each VPC endpoint is specified as a reference such as a [dynamic reference](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/dynamic-references.html) or the `Ref` [intrinsic function](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-ref.html). For an example use of this property, see the Examples section at the bottom of this page. \n*Type*: List \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "IntrinsicVpceWhitelist", "type": "array" }, "IpRangeBlacklist": { "items": { "anyOf": [ { "type": "string" }, { "type": "object" } ] }, "markdownDescription": "The IP addresses or address ranges to block. For an example use of this property, see the Examples section at the bottom of this page. \n*Type*: List \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "IpRangeBlacklist", "type": "array" }, "IpRangeWhitelist": { "items": { "anyOf": [ { "type": "string" }, { "type": "object" } ] }, "markdownDescription": "The IP addresses or address ranges to allow. \n*Type*: List \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "IpRangeWhitelist", "type": "array" }, "SourceVpcBlacklist": { "items": { "anyOf": [ { "type": "string" }, { "type": "object" } ] }, "markdownDescription": "The source VPC or VPC endpoints to block. Source VPC names must start with `\"vpc-\"` and source VPC endpoint names must start with `\"vpce-\"`. For an example use of this property, see the Examples section at the bottom of this page. \n*Type*: List \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "SourceVpcBlacklist", "type": "array" }, "SourceVpcWhitelist": { "items": { "anyOf": [ { "type": "string" }, { "type": "object" } ] }, "markdownDescription": "The source VPC or VPC endpoints to allow. Source VPC names must start with `\"vpc-\"` and source VPC endpoint names must start with `\"vpce-\"`. \n*Type*: List \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "SourceVpcWhitelist", "type": "array" } }, "title": "ResourcePolicy", "type": "object" }, "samtranslator__internal__schema_source__aws_serverless_statemachine__ScheduleEvent": { "additionalProperties": false, "properties": { "Properties": { "allOf": [ { "$ref": "#/definitions/ScheduleEventProperties" } ], "markdownDescription": "An object describing the properties of this event mapping. The set of properties must conform to the defined `Type`. \n*Type*: [Schedule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-statemachine-statemachineschedule.html) \\$1 [ScheduleV2](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-statemachine-statemachineschedulev2.html) \\$1 [CloudWatchEvent](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-statemachine-statemachinecloudwatchevent.html) \\$1 [EventBridgeRule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-statemachine-statemachineeventbridgerule.html) \\$1 [Api](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-statemachine-statemachineapi.html) \n*Required*: Yes \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "Properties" }, "Type": { "enum": [ "Schedule" ], "markdownDescription": "The event type. \n*Valid values*: `Api`, `Schedule`, `ScheduleV2`, `CloudWatchEvent`, `EventBridgeRule` \n*Type*: String \n*Required*: Yes \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "Type", "type": "string" } }, "required": [ "Type", "Properties" ], "title": "ScheduleEvent", "type": "object" }, "samtranslator__internal__schema_source__aws_serverless_statemachine__ScheduleV2Event": { "additionalProperties": false, "properties": { "Properties": { "allOf": [ { "$ref": "#/definitions/samtranslator__internal__schema_source__aws_serverless_statemachine__ScheduleV2EventProperties" } ], "markdownDescription": "An object describing the properties of this event mapping. The set of properties must conform to the defined `Type`. \n*Type*: [Schedule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-statemachine-statemachineschedule.html) \\$1 [ScheduleV2](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-statemachine-statemachineschedulev2.html) \\$1 [CloudWatchEvent](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-statemachine-statemachinecloudwatchevent.html) \\$1 [EventBridgeRule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-statemachine-statemachineeventbridgerule.html) \\$1 [Api](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-statemachine-statemachineapi.html) \n*Required*: Yes \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "Properties" }, "Type": { "enum": [ "ScheduleV2" ], "markdownDescription": "The event type. \n*Valid values*: `Api`, `Schedule`, `ScheduleV2`, `CloudWatchEvent`, `EventBridgeRule` \n*Type*: String \n*Required*: Yes \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "Type", "type": "string" } }, "required": [ "Type", "Properties" ], "title": "ScheduleV2Event", "type": "object" }, "samtranslator__internal__schema_source__aws_serverless_statemachine__ScheduleV2EventProperties": { "additionalProperties": false, "properties": { "DeadLetterConfig": { "allOf": [ { "$ref": "#/definitions/samtranslator__internal__schema_source__aws_serverless_statemachine__DeadLetterConfig" } ], "markdownDescription": "Configure the Amazon Simple Queue Service (Amazon SQS) queue where EventBridge sends events after a failed target invocation. Invocation can fail, for example, when sending an event to a Lambda function that doesn't exist, or when EventBridge has insufficient permissions to invoke the Lambda function. For more information, see [Configuring a dead-letter queue for EventBridge Scheduler](https://docs.aws.amazon.com/scheduler/latest/UserGuide/configuring-schedule-dlq.html) in the *EventBridge Scheduler User Guide*. \n*Type*: [DeadLetterConfig](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-statemachine-statemachinescheduledeadletterconfig.html) \n*Required*: No \n*CloudFormation compatibility*: This property is similar to the [`DeadLetterConfig`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-scheduler-schedule-target.html#cfn-scheduler-schedule-target-deadletterconfig) property of the `AWS::Scheduler::Schedule` `Target` data type. The AWS SAM version of this property includes additional subproperties, in case you want AWS SAM to create the dead-letter queue for you.", "title": "DeadLetterConfig" }, "Description": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "A description of the schedule. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`Description`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-scheduler-schedule.html#cfn-scheduler-schedule-description) property of an `AWS::Scheduler::Schedule` resource.", "title": "Description" }, "EndDate": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The date, in UTC, before which the schedule can invoke its target. Depending on the schedule's recurrence expression, invocations might stop on, or before, the EndDate you specify. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`EndDate`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-scheduler-schedule.html#cfn-scheduler-schedule-enddate) property of an `AWS::Scheduler::Schedule` resource.", "title": "EndDate" }, "FlexibleTimeWindow": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "Allows configuration of a window within which a schedule can be invoked. \n*Type*: [FlexibleTimeWindow](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-scheduler-schedule.html#cfn-scheduler-schedule-flexibletimewindow) \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`FlexibleTimeWindow`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-scheduler.html#cfn-scheduler-schedule-flexibletimewindow) property of an `AWS::Scheduler::Schedule` resource.", "title": "FlexibleTimeWindow" }, "GroupName": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The name of the schedule group to associate with this schedule. If not defined, the default group is used. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`GroupName`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-scheduler-schedule.html#cfn-scheduler-schedule-groupname) property of an `AWS::Scheduler::Schedule` resource.", "title": "GroupName" }, "Input": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "Valid JSON text passed to the target. If you use this property, nothing from the event text itself is passed to the target. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`Input`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-scheduler-schedule-target.html#cfn-scheduler-schedule-target-input) property of an `AWS::Scheduler::Schedule Target` resource.", "title": "Input" }, "KmsKeyArn": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The ARN for a KMS Key that will be used to encrypt customer data. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`KmsKeyArn`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-scheduler-schedule.html#cfn-scheduler-schedule-kmskeyarn) property of an `AWS::Scheduler::Schedule` resource.", "title": "KmsKeyArn" }, "Name": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The name of the schedule. If you don't specify a name, AWS SAM generates a name in the format `StateMachine-Logical-IDEvent-Source-Name` and uses that ID for the schedule name. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`Name`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-scheduler-schedule.html#cfn-scheduler-schedule-name) property of an `AWS::Scheduler::Schedule` resource.", "title": "Name" }, "OmitName": { "markdownDescription": "By default, AWS SAM generates and uses a schedule name in the format of **. Set this property to `true` to have CloudFormation generate a unique physical ID and use that for the schedule name instead. \n*Type*: Boolean \n*Required*: No \n*Default*: `false` \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "OmitName", "type": "boolean" }, "PermissionsBoundary": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The ARN of the policy used to set the permissions boundary for the role. \nIf `PermissionsBoundary` is defined, AWS SAM will apply the same boundaries to the scheduler schedule's target IAM role.\n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`PermissionsBoundary`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html#cfn-iam-role-permissionsboundary) property of an `AWS::IAM::Role` resource.", "title": "PermissionsBoundary" }, "RetryPolicy": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "A `RetryPolicy` object that includes information about the retry policy settings. \n*Type*: [RetryPolicy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-scheduler-schedule-target.html#cfn-scheduler-schedule-target-retrypolicy) \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`RetryPolicy`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-scheduler-schedule-target.html#cfn-scheduler-schedule-target-retrypolicy) property of the `AWS::Scheduler::Schedule` `Target` data type.", "title": "RetryPolicy" }, "RoleArn": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The ARN of the IAM role that EventBridge Scheduler will use for the target when the schedule is invoked. \n*Type*: [RoleArn](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-scheduler-schedule-target.html#cfn-scheduler-schedule-target-rolearn) \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`RoleArn`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-scheduler-schedule-target.html#cfn-scheduler-schedule-target-rolearn) property of the `AWS::Scheduler::Schedule` `Target` data type.", "title": "RoleArn" }, "ScheduleExpression": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The scheduling expression that determines when and how often the schedule runs. \n*Type*: String \n*Required*: Yes \n*CloudFormation compatibility*: This property is passed directly to the [`ScheduleExpression`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-scheduler-schedule.html#cfn-scheduler-schedule-scheduleexpression) property of an `AWS::Scheduler::Schedule` resource.", "title": "ScheduleExpression" }, "ScheduleExpressionTimezone": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The timezone in which the scheduling expression is evaluated. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`ScheduleExpressionTimezone`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-scheduler-schedule.html#cfn-scheduler-schedule-scheduleexpressiontimezone) property of an `AWS::Scheduler::Schedule` resource.", "title": "ScheduleExpressionTimezone" }, "StartDate": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The date, in UTC, after which the schedule can begin invoking a target. Depending on the schedule's recurrence expression, invocations might occur on, or after, the StartDate you specify. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`StartDate`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-scheduler-schedule.html#cfn-scheduler-schedule-startdate) property of an `AWS::Scheduler::Schedule` resource.", "title": "StartDate" }, "State": { "allOf": [ { "$ref": "#/definitions/PassThroughProp" } ], "markdownDescription": "The state of the schedule. \n*Accepted values:* `DISABLED | ENABLED` \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`State`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-scheduler-schedule.html#cfn-scheduler-schedule-state) property of an `AWS::Scheduler::Schedule` resource.", "title": "State" } }, "title": "ScheduleV2EventProperties", "type": "object" } }, "properties": { "Globals": { "$ref": "#/definitions/__main____Globals" }, "Resources": { "additionalProperties": { "anyOf": [ { "$ref": "#/definitions/samtranslator__internal__schema_source__aws_serverless_connector__Resource" }, { "$ref": "#/definitions/samtranslator__internal__schema_source__aws_serverless_function__Resource" }, { "$ref": "#/definitions/samtranslator__internal__schema_source__aws_serverless_simpletable__Resource" }, { "$ref": "#/definitions/samtranslator__internal__schema_source__aws_serverless_statemachine__Resource" }, { "$ref": "#/definitions/samtranslator__internal__schema_source__aws_serverless_layerversion__Resource" }, { "$ref": "#/definitions/samtranslator__internal__schema_source__aws_serverless_api__Resource" }, { "$ref": "#/definitions/samtranslator__internal__schema_source__aws_serverless_httpapi__Resource" }, { "$ref": "#/definitions/samtranslator__internal__schema_source__aws_serverless_application__Resource" }, { "$ref": "#/definitions/samtranslator__internal__schema_source__aws_serverless_graphqlapi__Resource" }, { "$ref": "#/definitions/samtranslator__internal__schema_source__aws_serverless_capacity_provider__Resource" }, { "$ref": "#/definitions/samtranslator__internal__schema_source__any_cfn_resource__Resource" } ] }, "title": "Resources", "type": "object" } }, "required": [ "Resources" ], "title": "SamModel", "type": "object" }