diff --git a/aws-cloudformation-schema/aws-apigateway-account.json b/aws-cloudformation-schema/aws-apigateway-account.json
index 2ffc2f3fe0..9b75667282 100644
--- a/aws-cloudformation-schema/aws-apigateway-account.json
+++ b/aws-cloudformation-schema/aws-apigateway-account.json
@@ -1,6 +1,6 @@
{
"typeName" : "AWS::ApiGateway::Account",
- "description" : "Resource Type definition for AWS::ApiGateway::Account",
+ "description" : "The ``AWS::ApiGateway::Account`` resource specifies the IAM role that Amazon API Gateway uses to write API logs to Amazon CloudWatch Logs. To avoid overwriting other roles, you should only have one ``AWS::ApiGateway::Account`` resource per region per account.",
"sourceUrl" : "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-apigateway",
"additionalProperties" : false,
"properties" : {
@@ -9,7 +9,7 @@
"type" : "string"
},
"CloudWatchRoleArn" : {
- "description" : "The Amazon Resource Name (ARN) of an IAM role that has write access to CloudWatch Logs in your account.",
+ "description" : "The ARN of an Amazon CloudWatch role for the current Account.",
"type" : "string"
}
},
diff --git a/aws-cloudformation-schema/aws-apigateway-authorizer.json b/aws-cloudformation-schema/aws-apigateway-authorizer.json
index c76211611a..63e99719c0 100644
--- a/aws-cloudformation-schema/aws-apigateway-authorizer.json
+++ b/aws-cloudformation-schema/aws-apigateway-authorizer.json
@@ -1,10 +1,10 @@
{
"typeName" : "AWS::ApiGateway::Authorizer",
- "description" : "Represents an authorization layer for methods. If enabled on a method, API Gateway will activate the authorizer when a client calls the method.",
+ "description" : "The ``AWS::ApiGateway::Authorizer`` resource creates an authorization layer that API Gateway activates for methods that have authorization enabled. API Gateway activates the authorizer when a client calls those methods.",
"sourceUrl" : "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-apigateway.git",
"properties" : {
"RestApiId" : {
- "description" : "The identifier of the API.",
+ "description" : "The string identifier of the associated RestApi.",
"type" : "string"
},
"AuthorizerId" : {
@@ -15,23 +15,23 @@
"type" : "string"
},
"AuthorizerCredentials" : {
- "description" : "Specifies the required credentials as an IAM role for API Gateway to invoke the authorizer.",
+ "description" : "Specifies the required credentials as an IAM role for API Gateway to invoke the authorizer. To specify an IAM role for API Gateway to assume, use the role's Amazon Resource Name (ARN). To use resource-based permissions on the Lambda function, specify null.",
"type" : "string"
},
"AuthorizerResultTtlInSeconds" : {
- "description" : "The TTL in seconds of cached authorizer results.",
+ "description" : "The TTL in seconds of cached authorizer results. If it equals 0, authorization caching is disabled. If it is greater than 0, API Gateway will cache authorizer responses. If this field is not set, the default value is 300. The maximum value is 3600, or 1 hour.",
"type" : "integer"
},
"AuthorizerUri" : {
- "description" : "Specifies the authorizer's Uniform Resource Identifier (URI).",
+ "description" : "Specifies the authorizer's Uniform Resource Identifier (URI). For ``TOKEN`` or ``REQUEST`` authorizers, this must be a well-formed Lambda function URI, for example, ``arn:aws:apigateway:us-west-2:lambda:path/2015-03-31/functions/arn:aws:lambda:us-west-2:{account_id}:function:{lambda_function_name}/invocations``. In general, the URI has this form ``arn:aws:apigateway:{region}:lambda:path/{service_api}``, where ``{region}`` is the same as the region hosting the Lambda function, ``path`` indicates that the remaining substring in the URI should be treated as the path to the resource, including the initial ``/``. For Lambda functions, this is usually of the form ``/2015-03-31/functions/[FunctionARN]/invocations``.",
"type" : "string"
},
"IdentitySource" : {
- "description" : "The identity source for which authorization is requested.",
+ "description" : "The identity source for which authorization is requested. For a ``TOKEN`` or ``COGNITO_USER_POOLS`` authorizer, this is required and specifies the request header mapping expression for the custom header holding the authorization token submitted by the client. For example, if the token header name is ``Auth``, the header mapping expression is ``method.request.header.Auth``. For the ``REQUEST`` authorizer, this is required when authorization caching is enabled. The value is a comma-separated string of one or more mapping expressions of the specified request parameters. For example, if an ``Auth`` header, a ``Name`` query string parameter are defined as identity sources, this value is ``method.request.header.Auth, method.request.querystring.Name``. These parameters will be used to derive the authorization caching key and to perform runtime validation of the ``REQUEST`` authorizer by verifying all of the identity-related request parameters are present, not null and non-empty. Only when this is true does the authorizer invoke the authorizer Lambda function, otherwise, it returns a 401 Unauthorized response without calling the Lambda function. The valid value is a string of comma-separated mapping expressions of the specified request parameters. When the authorization caching is not enabled, this property is optional.",
"type" : "string"
},
"IdentityValidationExpression" : {
- "description" : "A validation expression for the incoming identity token.",
+ "description" : "A validation expression for the incoming identity token. For ``TOKEN`` authorizers, this value is a regular expression. For ``COGNITO_USER_POOLS`` authorizers, API Gateway will match the ``aud`` field of the incoming token from the client against the specified regular expression. It will invoke the authorizer's Lambda function when there is a match. Otherwise, it will return a 401 Unauthorized response without calling the Lambda function. The validation expression does not apply to the ``REQUEST`` authorizer.",
"type" : "string"
},
"Name" : {
@@ -39,7 +39,7 @@
"type" : "string"
},
"ProviderARNs" : {
- "description" : "A list of the Amazon Cognito user pool ARNs for the COGNITO_USER_POOLS authorizer.",
+ "description" : "A list of the Amazon Cognito user pool ARNs for the ``COGNITO_USER_POOLS`` authorizer. Each element is of this format: ``arn:aws:cognito-idp:{region}:{account_id}:userpool/{user_pool_id}``. For a ``TOKEN`` or ``REQUEST`` authorizer, this is not defined.",
"type" : "array",
"uniqueItems" : true,
"items" : {
@@ -48,7 +48,7 @@
"insertionOrder" : false
},
"Type" : {
- "description" : "The authorizer type.",
+ "description" : "The authorizer type. Valid values are ``TOKEN`` for a Lambda function using a single authorization token submitted in a custom header, ``REQUEST`` for a Lambda function using incoming request parameters, and ``COGNITO_USER_POOLS`` for using an Amazon Cognito user pool.",
"type" : "string"
}
},
diff --git a/aws-cloudformation-schema/aws-apigateway-deployment.json b/aws-cloudformation-schema/aws-apigateway-deployment.json
index cf9481ead8..c0ae0ada4b 100644
--- a/aws-cloudformation-schema/aws-apigateway-deployment.json
+++ b/aws-cloudformation-schema/aws-apigateway-deployment.json
@@ -1,6 +1,6 @@
{
"typeName" : "AWS::ApiGateway::Deployment",
- "description" : "Resource Type definition for AWS::ApiGateway::Deployment",
+ "description" : "The ``AWS::ApiGateway::Deployment`` resource deploys an API Gateway ``RestApi`` resource to a stage so that clients can call the API over the internet. The stage acts as an environment.",
"sourceUrl" : "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-apigateway",
"additionalProperties" : false,
"properties" : {
@@ -10,23 +10,23 @@
},
"DeploymentCanarySettings" : {
"$ref" : "#/definitions/DeploymentCanarySettings",
- "description" : "Specifies settings for the canary deployment."
+ "description" : "The input configuration for a canary deployment."
},
"Description" : {
"type" : "string",
- "description" : "A description of the purpose of the API Gateway deployment."
+ "description" : "The description for the Deployment resource to create."
},
"RestApiId" : {
"type" : "string",
- "description" : "The ID of the RestApi resource to deploy. "
+ "description" : "The string identifier of the associated RestApi."
},
"StageDescription" : {
"$ref" : "#/definitions/StageDescription",
- "description" : "Configures the stage that API Gateway creates with this deployment."
+ "description" : "The description of the Stage resource for the Deployment resource to create. To specify a stage description, you must also provide a stage name."
},
"StageName" : {
"type" : "string",
- "description" : "A name for the stage that API Gateway creates with this deployment. Use only alphanumeric characters."
+ "description" : "The name of the Stage resource for the Deployment resource to create."
}
},
"definitions" : {
@@ -39,23 +39,23 @@
"$ref" : "#/definitions/AccessLogSetting"
},
"CacheClusterEnabled" : {
- "description" : "Indicates whether cache clustering is enabled for the stage.",
+ "description" : "Specifies whether a cache cluster is enabled for the stage.",
"type" : "boolean"
},
"CacheClusterSize" : {
- "description" : "The size of the stage's cache cluster.",
+ "description" : "The size of the stage's cache cluster. For more information, see [cacheClusterSize](https://docs.aws.amazon.com/apigateway/latest/api/API_CreateStage.html#apigw-CreateStage-request-cacheClusterSize) in the *API Gateway API Reference*.",
"type" : "string"
},
"CacheDataEncrypted" : {
- "description" : "The time-to-live (TTL) period, in seconds, that specifies how long API Gateway caches responses. ",
+ "description" : "Indicates whether the cached responses are encrypted.",
"type" : "boolean"
},
"CacheTtlInSeconds" : {
- "description" : "The time-to-live (TTL) period, in seconds, that specifies how long API Gateway caches responses. ",
+ "description" : "The time-to-live (TTL) period, in seconds, that specifies how long API Gateway caches responses.",
"type" : "integer"
},
"CachingEnabled" : {
- "description" : "Indicates whether responses are cached and returned for requests. You must enable a cache cluster on the stage to cache responses.",
+ "description" : "Indicates whether responses are cached and returned for requests. You must enable a cache cluster on the stage to cache responses. For more information, see [Enable API Gateway Caching in a Stage to Enhance API Performance](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-caching.html) in the *API Gateway Developer Guide*.",
"type" : "boolean"
},
"CanarySetting" : {
@@ -63,11 +63,11 @@
"$ref" : "#/definitions/CanarySetting"
},
"ClientCertificateId" : {
- "description" : "The identifier of the client certificate that API Gateway uses to call your integration endpoints in the stage. ",
+ "description" : "The identifier of the client certificate that API Gateway uses to call your integration endpoints in the stage.",
"type" : "string"
},
"DataTraceEnabled" : {
- "description" : "Indicates whether data trace logging is enabled for methods in the stage. API Gateway pushes these logs to Amazon CloudWatch Logs. ",
+ "description" : "Indicates whether data trace logging is enabled for methods in the stage. API Gateway pushes these logs to Amazon CloudWatch Logs.",
"type" : "boolean"
},
"Description" : {
@@ -79,7 +79,7 @@
"type" : "string"
},
"LoggingLevel" : {
- "description" : "The logging level for this method. For valid values, see the loggingLevel property of the Stage resource in the Amazon API Gateway API Reference. ",
+ "description" : "The logging level for this method. For valid values, see the ``loggingLevel`` property of the [MethodSetting](https://docs.aws.amazon.com/apigateway/latest/api/API_MethodSetting.html) resource in the *Amazon API Gateway API Reference*.",
"type" : "string"
},
"MethodSettings" : {
@@ -105,19 +105,19 @@
}
},
"ThrottlingBurstLimit" : {
- "description" : "The number of burst requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account.",
+ "description" : "The target request burst rate limit. This allows more requests through for a period of time than the target rate limit. For more information, see [Manage API Request Throttling](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-request-throttling.html) in the *API Gateway Developer Guide*.",
"type" : "integer"
},
"ThrottlingRateLimit" : {
- "description" : "The number of steady-state requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account.",
+ "description" : "The target request steady-state rate limit. For more information, see [Manage API Request Throttling](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-request-throttling.html) in the *API Gateway Developer Guide*.",
"type" : "number"
},
"TracingEnabled" : {
- "description" : "Specifies whether active tracing with X-ray is enabled for this stage.",
+ "description" : "Specifies whether active tracing with X-ray is enabled for this stage.\n For more information, see [Trace API Gateway API Execution with X-Ray](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-xray.html) in the *API Gateway Developer Guide*.",
"type" : "boolean"
},
"Variables" : {
- "description" : "A map that defines the stage variables. Variable names must consist of alphanumeric characters, and the values must match the following regular expression: [A-Za-z0-9-._~:/?#&=,]+. ",
+ "description" : "A map that defines the stage variables. Variable names must consist of alphanumeric characters, and the values must match the following regular expression: ``[A-Za-z0-9-._~:/?#&=,]+``.",
"type" : "object",
"additionalProperties" : false,
"patternProperties" : {
@@ -126,18 +126,19 @@
}
}
}
- }
+ },
+ "description" : "``StageDescription`` is a property of the [AWS::ApiGateway::Deployment](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-deployment.html) resource that configures a deployment stage."
},
"DeploymentCanarySettings" : {
"type" : "object",
"additionalProperties" : false,
"properties" : {
"PercentTraffic" : {
- "description" : "The percentage (0-100) of traffic diverted to a canary deployment.",
+ "description" : "The percentage (0.0-100.0) of traffic routed to the canary deployment.",
"type" : "number"
},
"StageVariableOverrides" : {
- "description" : "Stage variables overridden for a canary release deployment, including new stage variables introduced in the canary. These stage variables are represented as a string-to-string map between stage variable names and their values. Duplicates are not allowed.",
+ "description" : "A stage variable overrides used for the canary release deployment. They can override existing stage variables or add new stage variables for the canary release deployment. These stage variables are represented as a string-to-string map between stage variable names and their values.",
"type" : "object",
"additionalProperties" : false,
"patternProperties" : {
@@ -147,24 +148,26 @@
}
},
"UseStageCache" : {
- "description" : "Whether the canary deployment uses the stage cache.",
+ "description" : "A Boolean flag to indicate whether the canary release deployment uses the stage cache or not.",
"type" : "boolean"
}
- }
+ },
+ "description" : "The ``DeploymentCanarySettings`` property type specifies settings for the canary deployment."
},
"AccessLogSetting" : {
"type" : "object",
"additionalProperties" : false,
"properties" : {
"DestinationArn" : {
- "description" : "The Amazon Resource Name (ARN) of the CloudWatch Logs log group or Kinesis Data Firehose delivery stream to receive access logs. If you specify a Kinesis Data Firehose delivery stream, the stream name must begin with amazon-apigateway-. ",
+ "description" : "The Amazon Resource Name (ARN) of the CloudWatch Logs log group or Kinesis Data Firehose delivery stream to receive access logs. If you specify a Kinesis Data Firehose delivery stream, the stream name must begin with ``amazon-apigateway-``.",
"type" : "string"
},
"Format" : {
- "description" : "A single line format of the access logs of data, as specified by selected $context variables. The format must include at least $context.requestId. ",
+ "description" : "A single line format of the access logs of data, as specified by selected $context variables. The format must include at least ``$context.requestId``.",
"type" : "string"
}
- }
+ },
+ "description" : "The ``AccessLogSetting`` property type specifies settings for logging access in this stage.\n ``AccessLogSetting`` is a property of the [StageDescription](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription.html) property type."
},
"CanarySetting" : {
"type" : "object",
@@ -175,7 +178,7 @@
"type" : "number"
},
"StageVariableOverrides" : {
- "description" : "Stage variables overridden for a canary release deployment, including new stage variables introduced in the canary. These stage variables are represented as a string-to-string map between stage variable names and their values. ",
+ "description" : "Stage variables overridden for a canary release deployment, including new stage variables introduced in the canary. These stage variables are represented as a string-to-string map between stage variable names and their values.",
"type" : "object",
"additionalProperties" : false,
"patternProperties" : {
@@ -185,10 +188,11 @@
}
},
"UseStageCache" : {
- "description" : "Whether the canary deployment uses the stage cache or not.",
+ "description" : "A Boolean flag to indicate whether the canary deployment uses the stage cache or not.",
"type" : "boolean"
}
- }
+ },
+ "description" : "The ``CanarySetting`` property type specifies settings for the canary deployment in this stage.\n ``CanarySetting`` is a property of the [StageDescription](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription.html) property type."
},
"Tag" : {
"type" : "object",
@@ -210,19 +214,19 @@
"additionalProperties" : false,
"properties" : {
"CacheDataEncrypted" : {
- "description" : "Indicates whether the cached responses are encrypted",
+ "description" : "Specifies whether the cached responses are encrypted.",
"type" : "boolean"
},
"CacheTtlInSeconds" : {
- "description" : "The time-to-live (TTL) period, in seconds, that specifies how long API Gateway caches responses. ",
+ "description" : "Specifies the time to live (TTL), in seconds, for cached responses. The higher the TTL, the longer the response will be cached.",
"type" : "integer"
},
"CachingEnabled" : {
- "description" : "Indicates whether responses are cached and returned for requests. You must enable a cache cluster on the stage to cache responses.",
+ "description" : "Specifies whether responses should be cached and returned for requests. A cache cluster must be enabled on the stage for responses to be cached.",
"type" : "boolean"
},
"DataTraceEnabled" : {
- "description" : "Indicates whether data trace logging is enabled for methods in the stage. API Gateway pushes these logs to Amazon CloudWatch Logs. ",
+ "description" : "Specifies whether data trace logging is enabled for this method, which affects the log entries pushed to Amazon CloudWatch Logs. This can be useful to troubleshoot APIs, but can result in logging sensitive data. We recommend that you don't enable this option for production APIs.",
"type" : "boolean"
},
"HttpMethod" : {
@@ -230,26 +234,27 @@
"type" : "string"
},
"LoggingLevel" : {
- "description" : "The logging level for this method. For valid values, see the loggingLevel property of the Stage resource in the Amazon API Gateway API Reference. ",
+ "description" : "Specifies the logging level for this method, which affects the log entries pushed to Amazon CloudWatch Logs. Valid values are ``OFF``, ``ERROR``, and ``INFO``. Choose ``ERROR`` to write only error-level entries to CloudWatch Logs, or choose ``INFO`` to include all ``ERROR`` events as well as extra informational events.",
"type" : "string"
},
"MetricsEnabled" : {
- "description" : "Indicates whether Amazon CloudWatch metrics are enabled for methods in the stage.",
+ "description" : "Specifies whether Amazon CloudWatch metrics are enabled for this method.",
"type" : "boolean"
},
"ResourcePath" : {
- "description" : "The resource path for this method. Forward slashes (/) are encoded as ~1 and the initial slash must include a forward slash. ",
+ "description" : "The resource path for this method. Forward slashes (``/``) are encoded as ``~1`` and the initial slash must include a forward slash. For example, the path value ``/resource/subresource`` must be encoded as ``/~1resource~1subresource``. To specify the root path, use only a slash (``/``).",
"type" : "string"
},
"ThrottlingBurstLimit" : {
- "description" : "The number of burst requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account.",
+ "description" : "Specifies the throttling burst limit.",
"type" : "integer"
},
"ThrottlingRateLimit" : {
- "description" : "The number of steady-state requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account.",
+ "description" : "Specifies the throttling rate limit.",
"type" : "number"
}
- }
+ },
+ "description" : "The ``MethodSetting`` property type configures settings for all methods in a stage.\n The ``MethodSettings`` property of the [Amazon API Gateway Deployment StageDescription](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription.html) property type contains a list of ``MethodSetting`` property types."
}
},
"taggable" : true,
diff --git a/aws-cloudformation-schema/aws-apigateway-documentationpart.json b/aws-cloudformation-schema/aws-apigateway-documentationpart.json
index 940feb9666..9da352f4f4 100644
--- a/aws-cloudformation-schema/aws-apigateway-documentationpart.json
+++ b/aws-cloudformation-schema/aws-apigateway-documentationpart.json
@@ -1,6 +1,6 @@
{
"typeName" : "AWS::ApiGateway::DocumentationPart",
- "description" : "Resource Type definition for AWS::ApiGateway::DocumentationPart",
+ "description" : "The ``AWS::ApiGateway::DocumentationPart`` resource creates a documentation part for an API. For more information, see [Representation of API Documentation in API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-documenting-api-content-representation.html) in the *API Gateway Developer Guide*.",
"sourceUrl" : "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-apigateway",
"additionalProperties" : false,
"properties" : {
@@ -9,15 +9,15 @@
"type" : "string"
},
"Location" : {
- "description" : "The location of the API entity that the documentation applies to.",
+ "description" : "The location of the targeted API entity of the to-be-created documentation part.",
"$ref" : "#/definitions/Location"
},
"Properties" : {
- "description" : "The documentation content map of the targeted API entity.",
+ "description" : "The new documentation content map of the targeted API entity. Enclosed key-value pairs are API-specific, but only OpenAPI-compliant key-value pairs can be exported and, hence, published.",
"type" : "string"
},
"RestApiId" : {
- "description" : "Identifier of the targeted API entity",
+ "description" : "The string identifier of the associated RestApi.",
"type" : "string"
}
},
@@ -27,27 +27,28 @@
"additionalProperties" : false,
"properties" : {
"Method" : {
- "description" : "The HTTP verb of a method.",
+ "description" : "The HTTP verb of a method. It is a valid field for the API entity types of ``METHOD``, ``PATH_PARAMETER``, ``QUERY_PARAMETER``, ``REQUEST_HEADER``, ``REQUEST_BODY``, ``RESPONSE``, ``RESPONSE_HEADER``, and ``RESPONSE_BODY``. The default value is ``*`` for any method. When an applicable child entity inherits the content of an entity of the same type with more general specifications of the other ``location`` attributes, the child entity's ``method`` attribute must match that of the parent entity exactly.",
"type" : "string"
},
"Name" : {
- "description" : "The name of the targeted API entity.",
+ "description" : "The name of the targeted API entity. It is a valid and required field for the API entity types of ``AUTHORIZER``, ``MODEL``, ``PATH_PARAMETER``, ``QUERY_PARAMETER``, ``REQUEST_HEADER``, ``REQUEST_BODY`` and ``RESPONSE_HEADER``. It is an invalid field for any other entity type.",
"type" : "string"
},
"Path" : {
- "description" : "The URL path of the target.",
+ "description" : "The URL path of the target. It is a valid field for the API entity types of ``RESOURCE``, ``METHOD``, ``PATH_PARAMETER``, ``QUERY_PARAMETER``, ``REQUEST_HEADER``, ``REQUEST_BODY``, ``RESPONSE``, ``RESPONSE_HEADER``, and ``RESPONSE_BODY``. The default value is ``/`` for the root resource. When an applicable child entity inherits the content of another entity of the same type with more general specifications of the other ``location`` attributes, the child entity's ``path`` attribute must match that of the parent entity as a prefix.",
"type" : "string"
},
"StatusCode" : {
- "description" : "The HTTP status code of a response.",
+ "description" : "The HTTP status code of a response. It is a valid field for the API entity types of ``RESPONSE``, ``RESPONSE_HEADER``, and ``RESPONSE_BODY``. The default value is ``*`` for any status code. When an applicable child entity inherits the content of an entity of the same type with more general specifications of the other ``location`` attributes, the child entity's ``statusCode`` attribute must match that of the parent entity exactly.",
"type" : "string"
},
"Type" : {
- "description" : "The type of API entity that the documentation content applies to.",
+ "description" : "The type of API entity to which the documentation content applies. Valid values are ``API``, ``AUTHORIZER``, ``MODEL``, ``RESOURCE``, ``METHOD``, ``PATH_PARAMETER``, ``QUERY_PARAMETER``, ``REQUEST_HEADER``, ``REQUEST_BODY``, ``RESPONSE``, ``RESPONSE_HEADER``, and ``RESPONSE_BODY``. Content inheritance does not apply to any entity of the ``API``, ``AUTHORIZER``, ``METHOD``, ``MODEL``, ``REQUEST_BODY``, or ``RESOURCE`` type.",
"type" : "string",
"enum" : [ "API", "AUTHORIZER", "MODEL", "RESOURCE", "METHOD", "PATH_PARAMETER", "QUERY_PARAMETER", "REQUEST_HEADER", "REQUEST_BODY", "RESPONSE", "RESPONSE_HEADER", "RESPONSE_BODY" ]
}
- }
+ },
+ "description" : "The ``Location`` property specifies the location of the Amazon API Gateway API entity that the documentation applies to. ``Location`` is a property of the [AWS::ApiGateway::DocumentationPart](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-documentationpart.html) resource.\n For more information about each property, including constraints and valid values, see [DocumentationPart](https://docs.aws.amazon.com/apigateway/latest/api/API_DocumentationPartLocation.html) in the *Amazon API Gateway REST API Reference*."
}
},
"required" : [ "Location", "Properties", "RestApiId" ],
diff --git a/aws-cloudformation-schema/aws-apigateway-documentationversion.json b/aws-cloudformation-schema/aws-apigateway-documentationversion.json
index 0f20898527..5e04395a51 100644
--- a/aws-cloudformation-schema/aws-apigateway-documentationversion.json
+++ b/aws-cloudformation-schema/aws-apigateway-documentationversion.json
@@ -1,20 +1,20 @@
{
"typeName" : "AWS::ApiGateway::DocumentationVersion",
- "description" : "A snapshot of the documentation of an API.",
+ "description" : "The ``AWS::ApiGateway::DocumentationVersion`` resource creates a snapshot of the documentation for an API. For more information, see [Representation of API Documentation in API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-documenting-api-content-representation.html) in the *API Gateway Developer Guide*.",
"sourceUrl" : "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-apigateway",
"definitions" : { },
"properties" : {
"Description" : {
- "description" : "The description of the API documentation snapshot.",
+ "description" : "A description about the new documentation snapshot.",
"type" : "string"
},
"DocumentationVersion" : {
- "description" : "The version identifier of the API documentation snapshot.",
+ "description" : "The version identifier of the to-be-updated documentation version.",
"type" : "string",
"minLength" : 1
},
"RestApiId" : {
- "description" : "The identifier of the API.",
+ "description" : "The string identifier of the associated RestApi.",
"type" : "string",
"minLength" : 1
}
diff --git a/aws-cloudformation-schema/aws-apigateway-method.json b/aws-cloudformation-schema/aws-apigateway-method.json
index b01c7d2f3f..ff752f3625 100644
--- a/aws-cloudformation-schema/aws-apigateway-method.json
+++ b/aws-cloudformation-schema/aws-apigateway-method.json
@@ -1,6 +1,6 @@
{
"typeName" : "AWS::ApiGateway::Method",
- "description" : "Resource Type definition for AWS::ApiGateway::Method",
+ "description" : "The ``AWS::ApiGateway::Method`` resource creates API Gateway methods that define the parameters and body that clients must send in their requests.",
"sourceUrl" : "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-apigateway.git",
"definitions" : {
"Integration" : {
@@ -8,7 +8,7 @@
"additionalProperties" : false,
"properties" : {
"CacheKeyParameters" : {
- "description" : "A list of request parameters whose values API Gateway caches.",
+ "description" : "A list of request parameters whose values API Gateway caches. To be valid values for ``cacheKeyParameters``, these parameters must also be specified for Method ``requestParameters``.",
"type" : "array",
"uniqueItems" : true,
"items" : {
@@ -16,33 +16,33 @@
}
},
"CacheNamespace" : {
- "description" : "An API-specific tag group of related cached parameters.",
+ "description" : "Specifies a group of related cached parameters. By default, API Gateway uses the resource ID as the ``cacheNamespace``. You can specify the same ``cacheNamespace`` across resources to return the same cached data for requests to different resources.",
"type" : "string"
},
"ConnectionId" : {
- "description" : "The ID of the VpcLink used for the integration when connectionType=VPC_LINK, otherwise undefined.",
+ "description" : "The ID of the VpcLink used for the integration when ``connectionType=VPC_LINK`` and undefined, otherwise.",
"type" : "string"
},
"ConnectionType" : {
- "description" : "The type of the network connection to the integration endpoint.",
+ "description" : "The type of the network connection to the integration endpoint. The valid value is ``INTERNET`` for connections through the public routable internet or ``VPC_LINK`` for private connections between API Gateway and a network load balancer in a VPC. The default value is ``INTERNET``.",
"type" : "string",
"enum" : [ "INTERNET", "VPC_LINK" ]
},
"ContentHandling" : {
- "description" : "Specifies how to handle request payload content type conversions.",
+ "description" : "Specifies how to handle request payload content type conversions. Supported values are ``CONVERT_TO_BINARY`` and ``CONVERT_TO_TEXT``, with the following behaviors:\n If this property is not defined, the request payload will be passed through from the method request to integration request without modification, provided that the ``passthroughBehavior`` is configured to support payload pass-through.",
"type" : "string",
"enum" : [ "CONVERT_TO_BINARY", "CONVERT_TO_TEXT" ]
},
"Credentials" : {
- "description" : "The credentials that are required for the integration.",
+ "description" : "Specifies the credentials required for the integration, if any. For AWS integrations, three options are available. To specify an IAM Role for API Gateway to assume, use the role's Amazon Resource Name (ARN). To require that the caller's identity be passed through from the request, specify the string ``arn:aws:iam::\\*:user/\\*``. To use resource-based permissions on supported AWS services, specify null.",
"type" : "string"
},
"IntegrationHttpMethod" : {
- "description" : "The integration's HTTP method type.",
+ "description" : "Specifies the integration's HTTP method type. For the Type property, if you specify ``MOCK``, this property is optional. For Lambda integrations, you must set the integration method to ``POST``. For all other types, you must specify this property.",
"type" : "string"
},
"IntegrationResponses" : {
- "description" : "The response that API Gateway provides after a method's backend completes processing a request.",
+ "description" : "Specifies the integration's responses.",
"type" : "array",
"uniqueItems" : true,
"items" : {
@@ -50,12 +50,12 @@
}
},
"PassthroughBehavior" : {
- "description" : "Indicates when API Gateway passes requests to the targeted backend.",
+ "description" : "Specifies how the method request body of an unmapped content type will be passed through the integration request to the back end without transformation. A content type is unmapped if no mapping template is defined in the integration or the content type does not match any of the mapped content types, as specified in ``requestTemplates``. The valid value is one of the following: ``WHEN_NO_MATCH``: passes the method request body through the integration request to the back end without transformation when the method request content type does not match any content type associated with the mapping templates defined in the integration request. ``WHEN_NO_TEMPLATES``: passes the method request body through the integration request to the back end without transformation when no mapping template is defined in the integration request. If a template is defined when this option is selected, the method request of an unmapped content-type will be rejected with an HTTP 415 Unsupported Media Type response. ``NEVER``: rejects the method request with an HTTP 415 Unsupported Media Type response when either the method request content type does not match any content type associated with the mapping templates defined in the integration request or no mapping template is defined in the integration request.",
"type" : "string",
"enum" : [ "WHEN_NO_MATCH", "WHEN_NO_TEMPLATES", "NEVER" ]
},
"RequestParameters" : {
- "description" : "The request parameters that API Gateway sends with the backend request.",
+ "description" : "A key-value map specifying request parameters that are passed from the method request to the back end. The key is an integration request parameter name and the associated value is a method request parameter value or static value that must be enclosed within single quotes and pre-encoded as required by the back end. The method request parameter value must match the pattern of ``method.request.{location}.{name}``, where ``location`` is ``querystring``, ``path``, or ``header`` and ``name`` must be a valid and unique method request parameter name.",
"type" : "object",
"additionalProperties" : false,
"patternProperties" : {
@@ -65,7 +65,7 @@
}
},
"RequestTemplates" : {
- "description" : "A map of Apache Velocity templates that are applied on the request payload.",
+ "description" : "Represents a map of Velocity templates that are applied on the request payload based on the value of the Content-Type header sent by the client. The content type value is the key in this map, and the template (as a String) is the value.",
"type" : "object",
"additionalProperties" : false,
"patternProperties" : {
@@ -75,29 +75,30 @@
}
},
"TimeoutInMillis" : {
- "description" : "Custom timeout between 50 and 29,000 milliseconds.",
+ "description" : "Custom timeout between 50 and 29,000 milliseconds. The default value is 29,000 milliseconds or 29 seconds.",
"type" : "integer",
"minimum" : 50,
"maximum" : 29000
},
"Type" : {
- "description" : "The type of backend that your method is running.",
+ "description" : "Specifies an API method integration type. The valid value is one of the following:\n For the HTTP and HTTP proxy integrations, each integration can specify a protocol (``http/https``), port and path. Standard 80 and 443 ports are supported as well as custom ports above 1024. An HTTP or HTTP proxy integration with a ``connectionType`` of ``VPC_LINK`` is referred to as a private integration and uses a VpcLink to connect API Gateway to a network load balancer of a VPC.",
"type" : "string",
"enum" : [ "AWS", "AWS_PROXY", "HTTP", "HTTP_PROXY", "MOCK" ]
},
"Uri" : {
- "description" : "The Uniform Resource Identifier (URI) for the integration.",
+ "description" : "Specifies Uniform Resource Identifier (URI) of the integration endpoint.\n For ``HTTP`` or ``HTTP_PROXY`` integrations, the URI must be a fully formed, encoded HTTP(S) URL according to the RFC-3986 specification for standard integrations. If ``connectionType`` is ``VPC_LINK`` specify the Network Load Balancer DNS name. For ``AWS`` or ``AWS_PROXY`` integrations, the URI is of the form ``arn:aws:apigateway:{region}:{subdomain.service|service}:path|action/{service_api}``. Here, {Region} is the API Gateway region (e.g., us-east-1); {service} is the name of the integrated AWS service (e.g., s3); and {subdomain} is a designated subdomain supported by certain AWS service for fast host-name lookup. action can be used for an AWS service action-based API, using an Action={name}&{p1}={v1}&p2={v2}... query string. The ensuing {service_api} refers to a supported action {name} plus any required input parameters. Alternatively, path can be used for an AWS service path-based API. The ensuing service_api refers to the path to an AWS service resource, including the region of the integrated AWS service, if applicable. For example, for integration with the S3 API of GetObject, the uri can be either ``arn:aws:apigateway:us-west-2:s3:action/GetObject&Bucket={bucket}&Key={key}`` or ``arn:aws:apigateway:us-west-2:s3:path/{bucket}/{key}``",
"type" : "string"
}
},
- "required" : [ "Type" ]
+ "required" : [ "Type" ],
+ "description" : "``Integration`` is a property of the [AWS::ApiGateway::Method](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-method.html) resource that specifies information about the target backend that a method calls."
},
"MethodResponse" : {
"type" : "object",
"additionalProperties" : false,
"properties" : {
"ResponseModels" : {
- "description" : "The resources used for the response's content type. Specify response models as key-value pairs (string-to-string maps), with a content type as the key and a Model resource name as the value.",
+ "description" : "Specifies the Model resources used for the response's content-type. Response models are represented as a key/value map, with a content-type as the key and a Model name as the value.",
"type" : "object",
"additionalProperties" : false,
"patternProperties" : {
@@ -107,33 +108,34 @@
}
},
"ResponseParameters" : {
- "description" : "Response parameters that API Gateway sends to the client that called a method. Specify response parameters as key-value pairs (string-to-Boolean maps), with a destination as the key and a Boolean as the value.",
+ "description" : "A key-value map specifying required or optional response parameters that API Gateway can send back to the caller. A key defines a method response header and the value specifies whether the associated method response header is required or not. The expression of the key must match the pattern ``method.response.header.{name}``, where ``name`` is a valid and unique header name. API Gateway passes certain integration response data to the method response headers specified here according to the mapping you prescribe in the API's IntegrationResponse. The integration response data that can be mapped include an integration response header expressed in ``integration.response.header.{name}``, a static value enclosed within a pair of single quotes (e.g., ``'application/json'``), or a JSON expression from the back-end response payload in the form of ``integration.response.body.{JSON-expression}``, where ``JSON-expression`` is a valid JSON expression without the ``$`` prefix.)",
"type" : "object",
"additionalProperties" : false,
"patternProperties" : {
"[a-zA-Z0-9]+" : {
- "type" : "boolean"
+ "type" : [ "boolean", "string" ]
}
}
},
"StatusCode" : {
- "description" : "The method response's status code, which you map to an IntegrationResponse.",
+ "description" : "The method response's status code.",
"type" : "string"
}
},
- "required" : [ "StatusCode" ]
+ "required" : [ "StatusCode" ],
+ "description" : "Represents a method response of a given HTTP status code returned to the client. The method response is passed from the back end through the associated integration response that can be transformed using a mapping template."
},
"IntegrationResponse" : {
"type" : "object",
"additionalProperties" : false,
"properties" : {
"ContentHandling" : {
- "description" : "Specifies how to handle request payload content type conversions.",
+ "description" : "Specifies how to handle response payload content type conversions. Supported values are ``CONVERT_TO_BINARY`` and ``CONVERT_TO_TEXT``, with the following behaviors:\n If this property is not defined, the response payload will be passed through from the integration response to the method response without modification.",
"type" : "string",
"enum" : [ "CONVERT_TO_BINARY", "CONVERT_TO_TEXT" ]
},
"ResponseParameters" : {
- "description" : "The response parameters from the backend response that API Gateway sends to the method response.",
+ "description" : "A key-value map specifying response parameters that are passed to the method response from the back end. The key is a method response header parameter name and the mapped value is an integration response header value, a static value enclosed within a pair of single quotes, or a JSON expression from the integration response body. The mapping key must match the pattern of ``method.response.header.{name}``, where ``name`` is a valid and unique header name. The mapped non-static value must match the pattern of ``integration.response.header.{name}`` or ``integration.response.body.{JSON-expression}``, where ``name`` is a valid and unique response header name and ``JSON-expression`` is a valid JSON expression without the ``$`` prefix.",
"type" : "object",
"additionalProperties" : false,
"patternProperties" : {
@@ -143,7 +145,7 @@
}
},
"ResponseTemplates" : {
- "description" : "The templates that are used to transform the integration response body. Specify templates as key-value pairs (string-to-string mappings), with a content type as the key and a template as the value.",
+ "description" : "Specifies the templates used to transform the integration response body. Response templates are represented as a key/value map, with a content-type as the key and a template as the value.",
"type" : "object",
"additionalProperties" : false,
"patternProperties" : {
@@ -153,48 +155,49 @@
}
},
"SelectionPattern" : {
- "description" : "A regular expression that specifies which error strings or status codes from the backend map to the integration response.",
+ "description" : "Specifies the regular expression (regex) pattern used to choose an integration response based on the response from the back end. For example, if the success response returns nothing and the error response returns some string, you could use the ``.+`` regex to match error response. However, make sure that the error response does not contain any newline (``\\n``) character in such cases. If the back end is an LAMlong function, the LAMlong function error header is matched. For all other HTTP and AWS back ends, the HTTP status code is matched.",
"type" : "string"
},
"StatusCode" : {
- "description" : "The status code that API Gateway uses to map the integration response to a MethodResponse status code.",
+ "description" : "Specifies the status code that is used to map the integration response to an existing MethodResponse.",
"type" : "string"
}
},
- "required" : [ "StatusCode" ]
+ "required" : [ "StatusCode" ],
+ "description" : "``IntegrationResponse`` is a property of the [Amazon API Gateway Method Integration](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-method-integration.html) property type that specifies the response that API Gateway sends after a method's backend finishes processing a request."
}
},
"properties" : {
"ApiKeyRequired" : {
- "description" : "Indicates whether the method requires clients to submit a valid API key.",
+ "description" : "A boolean flag specifying whether a valid ApiKey is required to invoke this method.",
"type" : "boolean"
},
"AuthorizationScopes" : {
- "description" : "A list of authorization scopes configured on the method.",
+ "description" : "A list of authorization scopes configured on the method. The scopes are used with a ``COGNITO_USER_POOLS`` authorizer to authorize the method invocation. The authorization works by matching the method scopes against the scopes parsed from the access token in the incoming request. The method invocation is authorized if any method scopes matches a claimed scope in the access token. Otherwise, the invocation is not authorized. When the method scope is configured, the client must provide an access token instead of an identity token for authorization purposes.",
"type" : "array",
"items" : {
"type" : "string"
}
},
"AuthorizationType" : {
- "description" : "The method's authorization type.",
+ "description" : "The method's authorization type. This parameter is required. For valid values, see [Method](https://docs.aws.amazon.com/apigateway/latest/api/API_Method.html) in the *API Gateway API Reference*.\n If you specify the ``AuthorizerId`` property, specify ``CUSTOM`` or ``COGNITO_USER_POOLS`` for this property.",
"type" : "string",
"enum" : [ "NONE", "AWS_IAM", "CUSTOM", "COGNITO_USER_POOLS" ]
},
"AuthorizerId" : {
- "description" : "The identifier of the authorizer to use on this method.",
+ "description" : "The identifier of an authorizer to use on this method. The method's authorization type must be ``CUSTOM`` or ``COGNITO_USER_POOLS``.",
"type" : "string"
},
"HttpMethod" : {
- "description" : "The backend system that the method calls when it receives a request.",
+ "description" : "The method's HTTP verb.",
"type" : "string"
},
"Integration" : {
- "description" : "The backend system that the method calls when it receives a request.",
+ "description" : "Represents an ``HTTP``, ``HTTP_PROXY``, ``AWS``, ``AWS_PROXY``, or Mock integration.",
"$ref" : "#/definitions/Integration"
},
"MethodResponses" : {
- "description" : "The responses that can be sent to the client who calls the method.",
+ "description" : "Gets a method response associated with a given HTTP status code.",
"type" : "array",
"uniqueItems" : true,
"items" : {
@@ -202,11 +205,11 @@
}
},
"OperationName" : {
- "description" : "A friendly operation name for the method.",
+ "description" : "A human-friendly operation identifier for the method. For example, you can assign the ``operationName`` of ``ListPets`` for the ``GET /pets`` method in the ``PetStore`` example.",
"type" : "string"
},
"RequestModels" : {
- "description" : "The resources that are used for the request's content type. Specify request models as key-value pairs (string-to-string mapping), with a content type as the key and a Model resource name as the value.",
+ "description" : "A key-value map specifying data schemas, represented by Model resources, (as the mapped value) of the request payloads of given content types (as the mapping key).",
"type" : "object",
"additionalProperties" : false,
"patternProperties" : {
@@ -216,25 +219,25 @@
}
},
"RequestParameters" : {
- "description" : "The request parameters that API Gateway accepts. Specify request parameters as key-value pairs (string-to-Boolean mapping), with a source as the key and a Boolean as the value.",
+ "description" : "A key-value map defining required or optional method request parameters that can be accepted by API Gateway. A key is a method request parameter name matching the pattern of ``method.request.{location}.{name}``, where ``location`` is ``querystring``, ``path``, or ``header`` and ``name`` is a valid and unique parameter name. The value associated with the key is a Boolean flag indicating whether the parameter is required (``true``) or optional (``false``). The method request parameter names defined here are available in Integration to be mapped to integration request parameters or templates.",
"type" : "object",
"additionalProperties" : false,
"patternProperties" : {
"[a-zA-Z0-9]+" : {
- "type" : "boolean"
+ "type" : [ "boolean", "string" ]
}
}
},
"RequestValidatorId" : {
- "description" : "The ID of the associated request validator.",
+ "description" : "The identifier of a RequestValidator for request validation.",
"type" : "string"
},
"ResourceId" : {
- "description" : "The ID of an API Gateway resource.",
+ "description" : "The Resource identifier for the MethodResponse resource.",
"type" : "string"
},
"RestApiId" : {
- "description" : "The ID of the RestApi resource in which API Gateway creates the method.",
+ "description" : "The string identifier of the associated RestApi.",
"type" : "string"
}
},
diff --git a/aws-cloudformation-schema/aws-apigateway-model.json b/aws-cloudformation-schema/aws-apigateway-model.json
index 53118f2c32..1fa49ed9ca 100644
--- a/aws-cloudformation-schema/aws-apigateway-model.json
+++ b/aws-cloudformation-schema/aws-apigateway-model.json
@@ -1,27 +1,27 @@
{
"typeName" : "AWS::ApiGateway::Model",
- "description" : "Resource Type definition for AWS::ApiGateway::Model",
+ "description" : "The ``AWS::ApiGateway::Model`` resource defines the structure of a request or response payload for an API method.",
"sourceUrl" : "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-apigateway",
"additionalProperties" : false,
"properties" : {
"ContentType" : {
"type" : "string",
- "description" : "The content type for the model."
+ "description" : "The content-type for the model."
},
"Description" : {
"type" : "string",
- "description" : "A description that identifies this model."
+ "description" : "The description of the model."
},
"Name" : {
"type" : "string",
- "description" : "A name for the model. If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the model name."
+ "description" : "A name for the model. If you don't specify a name, CFN generates a unique physical ID and uses that ID for the model name. For more information, see [Name Type](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-name.html).\n If you specify a name, you cannot perform updates that require replacement of this resource. You can perform updates that require no or some interruption. If you must replace the resource, specify a new name."
},
"RestApiId" : {
"type" : "string",
- "description" : "The ID of a REST API with which to associate this model."
+ "description" : "The string identifier of the associated RestApi."
},
"Schema" : {
- "description" : "The schema to use to transform data to one or more output formats. Specify null ({}) if you don't want to specify a schema.",
+ "description" : "The schema for the model. For ``application/json`` models, this should be JSON schema draft 4 model. Do not include \"\\*/\" characters in the description of any properties because such \"\\*/\" characters may be interpreted as the closing marker for comments in some languages, such as Java or JavaScript, causing the installation of your API's SDK generated by API Gateway to fail.",
"type" : [ "object", "string" ]
}
},
diff --git a/aws-cloudformation-schema/aws-apigateway-resource.json b/aws-cloudformation-schema/aws-apigateway-resource.json
index 716f1b25a7..79866d0ef2 100644
--- a/aws-cloudformation-schema/aws-apigateway-resource.json
+++ b/aws-cloudformation-schema/aws-apigateway-resource.json
@@ -1,6 +1,6 @@
{
"typeName" : "AWS::ApiGateway::Resource",
- "description" : "Resource Type definition for AWS::ApiGateway::Resource",
+ "description" : "The ``AWS::ApiGateway::Resource`` resource creates a resource in an API.",
"sourceUrl" : "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-apigateway",
"additionalProperties" : false,
"properties" : {
@@ -9,7 +9,7 @@
"type" : "string"
},
"RestApiId" : {
- "description" : "The ID of the RestApi resource in which you want to create this resource..",
+ "description" : "The string identifier of the associated RestApi.",
"type" : "string"
},
"ParentId" : {
diff --git a/aws-cloudformation-schema/aws-apigateway-restapi.json b/aws-cloudformation-schema/aws-apigateway-restapi.json
index 821a069b7e..cfd1b46a3b 100644
--- a/aws-cloudformation-schema/aws-apigateway-restapi.json
+++ b/aws-cloudformation-schema/aws-apigateway-restapi.json
@@ -1,6 +1,6 @@
{
"typeName" : "AWS::ApiGateway::RestApi",
- "description" : "Resource Type definition for AWS::ApiGateway::RestApi.",
+ "description" : "The ``AWS::ApiGateway::RestApi`` resource creates a REST API. For more information, see [restapi:create](https://docs.aws.amazon.com/apigateway/latest/api/API_CreateRestApi.html) in the *Amazon API Gateway REST API Reference*.\n On January 1, 2016, the Swagger Specification was donated to the [OpenAPI initiative](https://docs.aws.amazon.com/https://www.openapis.org/), becoming the foundation of the OpenAPI Specification.",
"sourceUrl" : "https://github.com/aws-cloudformation/aws-cloudformation-rpdk.git",
"additionalProperties" : false,
"definitions" : {
@@ -13,16 +13,19 @@
"uniqueItems" : true,
"items" : {
"type" : "string"
- }
+ },
+ "description" : "A list of endpoint types of an API (RestApi) or its custom domain name (DomainName). For an edge-optimized API and its custom domain name, the endpoint type is ``\"EDGE\"``. For a regional API and its custom domain name, the endpoint type is ``REGIONAL``. For a private API, the endpoint type is ``PRIVATE``."
},
"VpcEndpointIds" : {
"type" : "array",
"uniqueItems" : true,
"items" : {
"type" : "string"
- }
+ },
+ "description" : "A list of VpcEndpointIds of an API (RestApi) against which to create Route53 ALIASes. It is only supported for ``PRIVATE`` endpoint type."
}
- }
+ },
+ "description" : "The ``EndpointConfiguration`` property type specifies the endpoint types of a REST API.\n ``EndpointConfiguration`` is a property of the [AWS::ApiGateway::RestApi](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html) resource."
},
"Tag" : {
"type" : "object",
@@ -42,18 +45,23 @@
"additionalProperties" : false,
"properties" : {
"Bucket" : {
- "type" : "string"
+ "type" : "string",
+ "description" : "The name of the S3 bucket where the OpenAPI file is stored."
},
"ETag" : {
- "type" : "string"
+ "type" : "string",
+ "description" : "The Amazon S3 ETag (a file checksum) of the OpenAPI file. If you don't specify a value, API Gateway skips ETag validation of your OpenAPI file."
},
"Version" : {
- "type" : "string"
+ "type" : "string",
+ "description" : "For versioning-enabled buckets, a specific version of the OpenAPI file."
},
"Key" : {
- "type" : "string"
+ "type" : "string",
+ "description" : "The file name of the OpenAPI file (Amazon S3 object name)."
}
- }
+ },
+ "description" : "``S3Location`` is a property of the [AWS::ApiGateway::RestApi](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html) resource that specifies the Amazon S3 location of a OpenAPI (formerly Swagger) file that defines a set of RESTful APIs in JSON or YAML.\n On January 1, 2016, the Swagger Specification was donated to the [OpenAPI initiative](https://docs.aws.amazon.com/https://www.openapis.org/), becoming the foundation of the OpenAPI Specification."
}
},
"properties" : {
@@ -64,47 +72,60 @@
"type" : "string"
},
"ApiKeySourceType" : {
- "type" : "string"
+ "type" : "string",
+ "description" : "The source of the API key for metering requests according to a usage plan. Valid values are: ``HEADER`` to read the API key from the ``X-API-Key`` header of a request. ``AUTHORIZER`` to read the API key from the ``UsageIdentifierKey`` from a custom authorizer."
},
"BinaryMediaTypes" : {
"type" : "array",
"uniqueItems" : true,
"items" : {
"type" : "string"
- }
+ },
+ "description" : "The list of binary media types supported by the RestApi. By default, the RestApi supports only UTF-8-encoded text payloads."
},
"Body" : {
- "type" : [ "object", "string" ]
+ "type" : [ "object", "string" ],
+ "description" : "An OpenAPI specification that defines a set of RESTful APIs in JSON format. For YAML templates, you can also provide the specification in YAML format."
},
"BodyS3Location" : {
- "$ref" : "#/definitions/S3Location"
+ "$ref" : "#/definitions/S3Location",
+ "description" : "The Amazon Simple Storage Service (Amazon S3) location that points to an OpenAPI file, which defines a set of RESTful APIs in JSON or YAML format."
},
"CloneFrom" : {
- "type" : "string"
+ "type" : "string",
+ "description" : "The ID of the RestApi that you want to clone from."
},
"EndpointConfiguration" : {
- "$ref" : "#/definitions/EndpointConfiguration"
+ "$ref" : "#/definitions/EndpointConfiguration",
+ "description" : "A list of the endpoint types of the API. Use this property when creating an API. When importing an existing API, specify the endpoint configuration types using the ``Parameters`` property."
},
"Description" : {
- "type" : "string"
+ "type" : "string",
+ "description" : "The description of the RestApi."
},
"DisableExecuteApiEndpoint" : {
- "type" : "boolean"
+ "type" : "boolean",
+ "description" : "Specifies whether clients can invoke your API by using the default ``execute-api`` endpoint. By default, clients can invoke your API with the default ``https://{api_id}.execute-api.{region}.amazonaws.com`` endpoint. To require that clients use a custom domain name to invoke your API, disable the default endpoint"
},
"FailOnWarnings" : {
- "type" : "boolean"
+ "type" : "boolean",
+ "description" : "A query parameter to indicate whether to rollback the API update (``true``) or not (``false``) when a warning is encountered. The default value is ``false``."
},
"Name" : {
- "type" : "string"
+ "type" : "string",
+ "description" : "The name of the RestApi. A name is required if the REST API is not based on an OpenAPI specification."
},
"MinimumCompressionSize" : {
- "type" : "integer"
+ "type" : "integer",
+ "description" : "A nullable integer that is used to enable compression (with non-negative between 0 and 10485760 (10M) bytes, inclusive) or disable compression (with a null value) on an API. When compression is enabled, compression or decompression is not applied on the payload if the payload size is smaller than this value. Setting it to zero allows compression for any payload size."
},
"Mode" : {
- "type" : "string"
+ "type" : "string",
+ "description" : "This property applies only when you use OpenAPI to define your REST API. The ``Mode`` determines how API Gateway handles resource updates.\n Valid values are ``overwrite`` or ``merge``. \n For ``overwrite``, the new API definition replaces the existing one. The existing API identifier remains unchanged.\n For ``merge``, the new API definition is merged with the existing API.\n If you don't specify this property, a default value is chosen. For REST APIs created before March 29, 2021, the default is ``overwrite``. For REST APIs created after March 29, 2021, the new API definition takes precedence, but any container types such as endpoint configurations and binary media types are merged with the existing API. \n Use the default mode to define top-level ``RestApi`` properties in addition to using OpenAPI. Generally, it's preferred to use API Gateway's OpenAPI extensions to model these properties."
},
"Policy" : {
- "type" : [ "object", "string" ]
+ "type" : [ "object", "string" ],
+ "description" : "A policy document that contains the permissions for the ``RestApi`` resource. To set the ARN for the policy, use the ``!Join`` intrinsic function with ``\"\"`` as delimiter and values of ``\"execute-api:/\"`` and ``\"*\"``."
},
"Parameters" : {
"type" : [ "object", "string" ],
@@ -113,14 +134,16 @@
"[a-zA-Z0-9]+" : {
"type" : "string"
}
- }
+ },
+ "description" : "Custom header parameters as part of the request. For example, to exclude DocumentationParts from an imported API, set ``ignore=documentation`` as a ``parameters`` value, as in the AWS CLI command of ``aws apigateway import-rest-api --parameters ignore=documentation --body 'file:///path/to/imported-api-body.json'``."
},
"Tags" : {
"type" : "array",
"uniqueItems" : false,
"items" : {
"$ref" : "#/definitions/Tag"
- }
+ },
+ "description" : "The key-value map of strings. The valid character set is [a-zA-Z+-=._:/]. The tag key can be up to 128 characters and must not start with ``aws:``. The tag value can be up to 256 characters."
}
},
"tagging" : {
diff --git a/aws-cloudformation-schema/aws-apigateway-stage.json b/aws-cloudformation-schema/aws-apigateway-stage.json
index 26d347ba40..b263668ac2 100644
--- a/aws-cloudformation-schema/aws-apigateway-stage.json
+++ b/aws-cloudformation-schema/aws-apigateway-stage.json
@@ -1,43 +1,43 @@
{
"typeName" : "AWS::ApiGateway::Stage",
- "description" : "Resource Type definition for AWS::ApiGateway::Stage",
+ "description" : "The ``AWS::ApiGateway::Stage`` resource creates a stage for a deployment.",
"sourceUrl" : "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-apigateway",
"additionalProperties" : false,
"properties" : {
"AccessLogSetting" : {
- "description" : "Specifies settings for logging access in this stage.",
+ "description" : "Access log settings, including the access log format and access log destination ARN.",
"$ref" : "#/definitions/AccessLogSetting"
},
"CacheClusterEnabled" : {
- "description" : "Indicates whether cache clustering is enabled for the stage.",
+ "description" : "Specifies whether a cache cluster is enabled for the stage.",
"type" : "boolean"
},
"CacheClusterSize" : {
- "description" : "The stage's cache cluster size.",
+ "description" : "The stage's cache capacity in GB. For more information about choosing a cache size, see [Enabling API caching to enhance responsiveness](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-caching.html).",
"type" : "string"
},
"CanarySetting" : {
- "description" : "Specifies settings for the canary deployment in this stage.",
+ "description" : "Settings for the canary deployment in this stage.",
"$ref" : "#/definitions/CanarySetting"
},
"ClientCertificateId" : {
- "description" : "The ID of the client certificate that API Gateway uses to call your integration endpoints in the stage. ",
+ "description" : "The identifier of a client certificate for an API stage.",
"type" : "string"
},
"DeploymentId" : {
- "description" : "The ID of the deployment that the stage is associated with. This parameter is required to create a stage. ",
+ "description" : "The identifier of the Deployment that the stage points to.",
"type" : "string"
},
"Description" : {
- "description" : "A description of the stage.",
+ "description" : "The stage's description.",
"type" : "string"
},
"DocumentationVersion" : {
- "description" : "The version ID of the API documentation snapshot.",
+ "description" : "The version of the associated API documentation.",
"type" : "string"
},
"MethodSettings" : {
- "description" : "Settings for all methods in the stage.",
+ "description" : "A map that defines the method settings for a Stage resource. Keys (designated as ``/{method_setting_key`` below) are method paths defined as ``{resource_path}/{http_method}`` for an individual method override, or ``/\\*/\\*`` for overriding all methods in the stage.",
"type" : "array",
"uniqueItems" : true,
"insertionOrder" : false,
@@ -46,15 +46,15 @@
}
},
"RestApiId" : {
- "description" : "The ID of the RestApi resource that you're deploying with this stage.",
+ "description" : "The string identifier of the associated RestApi.",
"type" : "string"
},
"StageName" : {
- "description" : "The name of the stage, which API Gateway uses as the first path segment in the invoked Uniform Resource Identifier (URI).",
+ "description" : "The name of the stage is the first path segment in the Uniform Resource Identifier (URI) of a call to API Gateway. Stage names can only contain alphanumeric characters, hyphens, and underscores. Maximum length is 128 characters.",
"type" : "string"
},
"Tags" : {
- "description" : "An array of arbitrary tags (key-value pairs) to associate with the stage.",
+ "description" : "The collection of tags. Each tag element is associated with a given resource.",
"type" : "array",
"uniqueItems" : false,
"insertionOrder" : false,
@@ -63,11 +63,11 @@
}
},
"TracingEnabled" : {
- "description" : "Specifies whether active X-Ray tracing is enabled for this stage.",
+ "description" : "Specifies whether active tracing with X-ray is enabled for the Stage.",
"type" : "boolean"
},
"Variables" : {
- "description" : "A map (string-to-string map) that defines the stage variables, where the variable name is the key and the variable value is the value.",
+ "description" : "A map (string-to-string map) that defines the stage variables, where the variable name is the key and the variable value is the value. Variable names are limited to alphanumeric characters. Values must match the following regular expression: ``[A-Za-z0-9-._~:/?#&=,]+``.",
"type" : "object",
"additionalProperties" : false,
"patternProperties" : {
@@ -79,16 +79,16 @@
},
"definitions" : {
"CanarySetting" : {
- "description" : "Specifies settings for the canary deployment in this stage.",
+ "description" : "Configuration settings of a canary deployment.",
"type" : "object",
"additionalProperties" : false,
"properties" : {
"DeploymentId" : {
- "description" : "The identifier of the deployment that the stage points to.",
+ "description" : "The ID of the canary deployment.",
"type" : "string"
},
"PercentTraffic" : {
- "description" : "The percentage (0-100) of traffic diverted to a canary deployment.",
+ "description" : "The percent (0-100) of traffic diverted to a canary deployment.",
"type" : "number",
"minimum" : 0,
"maximum" : 100
@@ -104,70 +104,70 @@
}
},
"UseStageCache" : {
- "description" : "Whether the canary deployment uses the stage cache or not.",
+ "description" : "A Boolean flag to indicate whether the canary deployment uses the stage cache or not.",
"type" : "boolean"
}
}
},
"AccessLogSetting" : {
- "description" : "Specifies settings for logging access in this stage.",
+ "description" : "The ``AccessLogSetting`` property type specifies settings for logging access in this stage.\n ``AccessLogSetting`` is a property of the [AWS::ApiGateway::Stage](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html) resource.",
"type" : "object",
"additionalProperties" : false,
"properties" : {
"DestinationArn" : {
- "description" : "The Amazon Resource Name (ARN) of the CloudWatch Logs log group or Kinesis Data Firehose delivery stream to receive access logs. If you specify a Kinesis Data Firehose delivery stream, the stream name must begin with amazon-apigateway-. This parameter is required to enable access logging.",
+ "description" : "The Amazon Resource Name (ARN) of the CloudWatch Logs log group or Kinesis Data Firehose delivery stream to receive access logs. If you specify a Kinesis Data Firehose delivery stream, the stream name must begin with ``amazon-apigateway-``. This parameter is required to enable access logging.",
"type" : "string"
},
"Format" : {
- "description" : "A single line format of the access logs of data, as specified by selected $context variables (https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-mapping-template-reference.html#context-variable-reference). The format must include at least $context.requestId. This parameter is required to enable access logging.",
+ "description" : "A single line format of the access logs of data, as specified by selected [$context variables](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-mapping-template-reference.html#context-variable-reference). The format must include at least ``$context.requestId``. This parameter is required to enable access logging.",
"type" : "string"
}
}
},
"MethodSetting" : {
- "description" : "Configures settings for all methods in a stage.",
+ "description" : "The ``MethodSetting`` property type configures settings for all methods in a stage.\n The ``MethodSettings`` property of the ``AWS::ApiGateway::Stage`` resource contains a list of ``MethodSetting`` property types.",
"type" : "object",
"additionalProperties" : false,
"properties" : {
"CacheDataEncrypted" : {
- "description" : "Indicates whether the cached responses are encrypted.",
+ "description" : "Specifies whether the cached responses are encrypted.",
"type" : "boolean"
},
"CacheTtlInSeconds" : {
- "description" : "The time-to-live (TTL) period, in seconds, that specifies how long API Gateway caches responses.",
+ "description" : "Specifies the time to live (TTL), in seconds, for cached responses. The higher the TTL, the longer the response will be cached.",
"type" : "integer"
},
"CachingEnabled" : {
- "description" : "Indicates whether responses are cached and returned for requests. You must enable a cache cluster on the stage to cache responses.",
+ "description" : "Specifies whether responses should be cached and returned for requests. A cache cluster must be enabled on the stage for responses to be cached.",
"type" : "boolean"
},
"DataTraceEnabled" : {
- "description" : "Indicates whether data trace logging is enabled for methods in the stage. API Gateway pushes these logs to Amazon CloudWatch Logs.",
+ "description" : "Specifies whether data trace logging is enabled for this method, which affects the log entries pushed to Amazon CloudWatch Logs. This can be useful to troubleshoot APIs, but can result in logging sensitive data. We recommend that you don't enable this option for production APIs.",
"type" : "boolean"
},
"HttpMethod" : {
- "description" : "The HTTP method. You can use an asterisk (*) as a wildcard to apply method settings to multiple methods.",
+ "description" : "The HTTP method. To apply settings to multiple resources and methods, specify an asterisk (``*``) for the ``HttpMethod`` and ``/*`` for the ``ResourcePath``. This parameter is required when you specify a ``MethodSetting``.",
"type" : "string"
},
"LoggingLevel" : {
- "description" : "The logging level for this method. For valid values, see the loggingLevel property of the Stage (https://docs.aws.amazon.com/apigateway/api-reference/resource/stage/#loggingLevel) resource in the Amazon API Gateway API Reference.",
+ "description" : "Specifies the logging level for this method, which affects the log entries pushed to Amazon CloudWatch Logs. Valid values are ``OFF``, ``ERROR``, and ``INFO``. Choose ``ERROR`` to write only error-level entries to CloudWatch Logs, or choose ``INFO`` to include all ``ERROR`` events as well as extra informational events.",
"type" : "string"
},
"MetricsEnabled" : {
- "description" : "Indicates whether Amazon CloudWatch metrics are enabled for methods in the stage.",
+ "description" : "Specifies whether Amazon CloudWatch metrics are enabled for this method.",
"type" : "boolean"
},
"ResourcePath" : {
- "description" : "The resource path for this method. Forward slashes (/) are encoded as ~1 and the initial slash must include a forward slash. For example, the path value /resource/subresource must be encoded as /~1resource~1subresource. To specify the root path, use only a slash (/). You can use an asterisk (*) as a wildcard to apply method settings to multiple methods.",
+ "description" : "The resource path for this method. Forward slashes (``/``) are encoded as ``~1`` and the initial slash must include a forward slash. For example, the path value ``/resource/subresource`` must be encoded as ``/~1resource~1subresource``. To specify the root path, use only a slash (``/``). To apply settings to multiple resources and methods, specify an asterisk (``*``) for the ``HttpMethod`` and ``/*`` for the ``ResourcePath``. This parameter is required when you specify a ``MethodSetting``.",
"type" : "string"
},
"ThrottlingBurstLimit" : {
- "description" : "The number of burst requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account.",
+ "description" : "Specifies the throttling burst limit.",
"type" : "integer",
"minimum" : 0
},
"ThrottlingRateLimit" : {
- "description" : "The number of steady-state requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account.",
+ "description" : "Specifies the throttling rate limit.",
"type" : "number",
"minimum" : 0
}
diff --git a/aws-cloudformation-schema/aws-apigateway-usageplankey.json b/aws-cloudformation-schema/aws-apigateway-usageplankey.json
index 0f7cf75f5a..4a346c0249 100644
--- a/aws-cloudformation-schema/aws-apigateway-usageplankey.json
+++ b/aws-cloudformation-schema/aws-apigateway-usageplankey.json
@@ -1,20 +1,20 @@
{
"typeName" : "AWS::ApiGateway::UsagePlanKey",
- "description" : "Resource Type definition for AWS::ApiGateway::UsagePlanKey",
+ "description" : "The ``AWS::ApiGateway::UsagePlanKey`` resource associates an API key with a usage plan. This association determines which users the usage plan is applied to.",
"sourceUrl" : "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-apigateway",
"additionalProperties" : false,
"properties" : {
"KeyId" : {
- "description" : "The ID of the usage plan key.",
+ "description" : "The Id of the UsagePlanKey resource.",
"type" : "string"
},
"KeyType" : {
- "description" : "The type of usage plan key. Currently, the only valid key type is API_KEY.",
+ "description" : "The type of a UsagePlanKey resource for a plan customer.",
"type" : "string",
"enum" : [ "API_KEY" ]
},
"UsagePlanId" : {
- "description" : "The ID of the usage plan.",
+ "description" : "The Id of the UsagePlan resource representing the usage plan containing the UsagePlanKey resource representing a plan customer.",
"type" : "string"
},
"Id" : {
@@ -35,7 +35,7 @@
"permissions" : [ "apigateway:GET" ]
},
"delete" : {
- "permissions" : [ "apigateway:DELETE" ]
+ "permissions" : [ "apigateway:DELETE", "apigateway:GET" ]
},
"list" : {
"handlerSchema" : {
diff --git a/aws-cloudformation-schema/aws-appconfig-application.json b/aws-cloudformation-schema/aws-appconfig-application.json
index 6982b7d7fe..b93c735fae 100644
--- a/aws-cloudformation-schema/aws-appconfig-application.json
+++ b/aws-cloudformation-schema/aws-appconfig-application.json
@@ -1,40 +1,79 @@
{
"typeName" : "AWS::AppConfig::Application",
"description" : "Resource Type definition for AWS::AppConfig::Application",
- "additionalProperties" : false,
+ "sourceUrl" : "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-appconfig.git",
+ "definitions" : {
+ "Tags" : {
+ "description" : "Metadata to assign to the application. Tags help organize and categorize your AWS AppConfig resources. Each tag consists of a key and an optional value, both of which you define.",
+ "type" : "object",
+ "additionalProperties" : false,
+ "properties" : {
+ "Key" : {
+ "type" : "string",
+ "description" : "The key-value string map. The valid character set is [a-zA-Z1-9+-=._:/]. The tag key can be up to 128 characters and must not start with aws:.",
+ "minLength" : 1,
+ "maxLength" : 128,
+ "pattern" : "^(?!aws:.)[a-zA-Z1-9+=._:/-]*$"
+ },
+ "Value" : {
+ "type" : "string",
+ "description" : "The tag value can be up to 256 characters.",
+ "minLength" : 0,
+ "maxLength" : 256
+ }
+ },
+ "required" : [ "Key", "Value" ]
+ }
+ },
"properties" : {
"Description" : {
- "type" : "string"
+ "type" : "string",
+ "description" : "A description of the application."
},
- "Id" : {
- "type" : "string"
+ "ApplicationId" : {
+ "type" : "string",
+ "description" : "The application Id"
},
"Tags" : {
"type" : "array",
- "uniqueItems" : false,
+ "description" : "Metadata to assign to the application. Tags help organize and categorize your AWS AppConfig resources. Each tag consists of a key and an optional value, both of which you define.",
+ "uniqueItems" : true,
"items" : {
"$ref" : "#/definitions/Tags"
- }
+ },
+ "insertionOrder" : false
},
"Name" : {
- "type" : "string"
+ "type" : "string",
+ "description" : "A name for the application."
}
},
- "definitions" : {
- "Tags" : {
- "type" : "object",
- "additionalProperties" : false,
- "properties" : {
- "Value" : {
- "type" : "string"
- },
- "Key" : {
- "type" : "string"
- }
- }
+ "additionalProperties" : false,
+ "required" : [ "Name" ],
+ "readOnlyProperties" : [ "/properties/ApplicationId" ],
+ "primaryIdentifier" : [ "/properties/ApplicationId" ],
+ "handlers" : {
+ "create" : {
+ "permissions" : [ "appconfig:CreateApplication", "appconfig:GetApplication", "appconfig:ListTagsForResource", "appconfig:TagResource" ]
+ },
+ "read" : {
+ "permissions" : [ "appconfig:GetApplication", "appconfig:ListTagsForResource" ]
+ },
+ "update" : {
+ "permissions" : [ "appconfig:UpdateApplication", "appconfig:TagResource", "appconfig:UntagResource" ]
+ },
+ "delete" : {
+ "permissions" : [ "appconfig:GetApplication", "appconfig:DeleteApplication" ]
+ },
+ "list" : {
+ "permissions" : [ "appconfig:ListApplications" ]
}
},
- "required" : [ "Name" ],
- "primaryIdentifier" : [ "/properties/Id" ],
- "readOnlyProperties" : [ "/properties/Id" ]
+ "tagging" : {
+ "taggable" : true,
+ "tagOnCreate" : true,
+ "tagUpdatable" : true,
+ "cloudFormationSystemTags" : true,
+ "tagProperty" : "/properties/Tags"
+ }
}
\ No newline at end of file
diff --git a/aws-cloudformation-schema/aws-appconfig-configurationprofile.json b/aws-cloudformation-schema/aws-appconfig-configurationprofile.json
index 92d9b32d0b..3d33fef5be 100644
--- a/aws-cloudformation-schema/aws-appconfig-configurationprofile.json
+++ b/aws-cloudformation-schema/aws-appconfig-configurationprofile.json
@@ -9,6 +9,9 @@
"Type" : {
"type" : "string"
},
+ "KmsKeyIdentifier" : {
+ "type" : "string"
+ },
"Description" : {
"type" : "string"
},
diff --git a/aws-cloudformation-schema/aws-appsync-functionconfiguration.json b/aws-cloudformation-schema/aws-appsync-functionconfiguration.json
index fab3022329..6f9c0a1dc5 100644
--- a/aws-cloudformation-schema/aws-appsync-functionconfiguration.json
+++ b/aws-cloudformation-schema/aws-appsync-functionconfiguration.json
@@ -1,102 +1,156 @@
{
"typeName" : "AWS::AppSync::FunctionConfiguration",
- "description" : "Resource Type definition for AWS::AppSync::FunctionConfiguration",
- "additionalProperties" : false,
+ "description" : "An example resource schema demonstrating some basic constructs and validation rules.",
+ "sourceUrl" : "https://github.com/aws-cloudformation/aws-cloudformation-rpdk.git",
+ "definitions" : {
+ "AppSyncRuntime" : {
+ "description" : "Describes a runtime used by an AWS AppSync pipeline resolver or AWS AppSync function. Specifies the name and version of the runtime to use. Note that if a runtime is specified, code must also be specified.",
+ "type" : "object",
+ "additionalProperties" : false,
+ "properties" : {
+ "Name" : {
+ "type" : "string",
+ "description" : "The name of the runtime to use. Currently, the only allowed value is APPSYNC_JS."
+ },
+ "RuntimeVersion" : {
+ "type" : "string",
+ "description" : "The version of the runtime to use. Currently, the only allowed version is 1.0.0."
+ }
+ },
+ "required" : [ "Name", "RuntimeVersion" ]
+ },
+ "SyncConfig" : {
+ "description" : "Describes a Sync configuration for a resolver. Specifies which Conflict Detection strategy and Resolution strategy to use when the resolver is invoked.",
+ "type" : "object",
+ "additionalProperties" : false,
+ "properties" : {
+ "ConflictDetection" : {
+ "type" : "string",
+ "description" : "The Conflict Detection strategy to use."
+ },
+ "ConflictHandler" : {
+ "type" : "string",
+ "description" : "The Conflict Resolution strategy to perform in the event of a conflict."
+ },
+ "LambdaConflictHandlerConfig" : {
+ "$ref" : "#/definitions/LambdaConflictHandlerConfig"
+ }
+ },
+ "required" : [ "ConflictDetection" ]
+ },
+ "LambdaConflictHandlerConfig" : {
+ "type" : "object",
+ "description" : "The LambdaConflictHandlerConfig when configuring LAMBDA as the Conflict Handler.",
+ "additionalProperties" : false,
+ "properties" : {
+ "LambdaConflictHandlerArn" : {
+ "type" : "string",
+ "description" : "The Amazon Resource Name (ARN) for the Lambda function to use as the Conflict Handler."
+ }
+ }
+ }
+ },
"properties" : {
"FunctionId" : {
+ "description" : "The unique identifier for the function generated by the service",
"type" : "string"
},
"FunctionArn" : {
+ "description" : "The ARN for the function generated by the service",
"type" : "string"
},
- "Description" : {
+ "ApiId" : {
+ "description" : "The AWS AppSync GraphQL API that you want to attach using this function.",
"type" : "string"
},
- "RequestMappingTemplate" : {
+ "Code" : {
+ "description" : "The resolver code that contains the request and response functions. When code is used, the runtime is required. The runtime value must be APPSYNC_JS.",
"type" : "string"
},
- "ResponseMappingTemplate" : {
+ "CodeS3Location" : {
+ "description" : "The Amazon S3 endpoint (where the code is located??).",
"type" : "string"
},
- "MaxBatchSize" : {
- "type" : "integer"
- },
- "SyncConfig" : {
- "$ref" : "#/definitions/SyncConfig"
- },
- "Code" : {
+ "DataSourceName" : {
+ "description" : "The name of data source this function will attach.",
"type" : "string"
},
- "Name" : {
+ "Description" : {
+ "description" : "The function description.",
"type" : "string"
},
- "ResponseMappingTemplateS3Location" : {
+ "FunctionVersion" : {
+ "description" : "The version of the request mapping template. Currently, only the 2018-05-29 version of the template is supported.",
"type" : "string"
},
- "Runtime" : {
- "$ref" : "#/definitions/AppSyncRuntime"
+ "MaxBatchSize" : {
+ "description" : "The maximum number of resolver request inputs that will be sent to a single AWS Lambda function in a BatchInvoke operation.",
+ "type" : "integer"
},
- "CodeS3Location" : {
+ "Name" : {
+ "description" : "The name of the function.",
"type" : "string"
},
- "DataSourceName" : {
+ "RequestMappingTemplate" : {
+ "description" : "The Function request mapping template. Functions support only the 2018-05-29 version of the request mapping template.",
"type" : "string"
},
- "FunctionVersion" : {
+ "RequestMappingTemplateS3Location" : {
+ "description" : "Describes a Sync configuration for a resolver. Contains information on which Conflict Detection, as well as Resolution strategy, should be performed when the resolver is invoked.",
"type" : "string"
},
- "Id" : {
+ "ResponseMappingTemplate" : {
+ "description" : "The Function response mapping template.",
"type" : "string"
},
- "RequestMappingTemplateS3Location" : {
+ "ResponseMappingTemplateS3Location" : {
+ "description" : "The location of a response mapping template in an Amazon S3 bucket. Use this if you want to provision with a template file in Amazon S3 rather than embedding it in your CloudFormation template.",
"type" : "string"
},
- "ApiId" : {
- "type" : "string"
- }
- },
- "definitions" : {
- "AppSyncRuntime" : {
- "type" : "object",
- "additionalProperties" : false,
- "properties" : {
- "RuntimeVersion" : {
- "type" : "string"
- },
- "Name" : {
- "type" : "string"
- }
- },
- "required" : [ "RuntimeVersion", "Name" ]
+ "Runtime" : {
+ "description" : "Describes a runtime used by an AWS AppSync pipeline resolver or AWS AppSync function. Specifies the name and version of the runtime to use. Note that if a runtime is specified, code must also be specified.",
+ "$ref" : "#/definitions/AppSyncRuntime"
},
"SyncConfig" : {
- "type" : "object",
- "additionalProperties" : false,
- "properties" : {
- "ConflictHandler" : {
- "type" : "string"
- },
- "ConflictDetection" : {
- "type" : "string"
- },
- "LambdaConflictHandlerConfig" : {
- "$ref" : "#/definitions/LambdaConflictHandlerConfig"
- }
- },
- "required" : [ "ConflictDetection" ]
- },
- "LambdaConflictHandlerConfig" : {
- "type" : "object",
- "additionalProperties" : false,
- "properties" : {
- "LambdaConflictHandlerArn" : {
- "type" : "string"
- }
- }
+ "description" : "Describes a Sync configuration for a resolver. Specifies which Conflict Detection strategy and Resolution strategy to use when the resolver is invoked.",
+ "$ref" : "#/definitions/SyncConfig"
}
},
- "required" : [ "DataSourceName", "ApiId", "Name" ],
+ "tagging" : {
+ "taggable" : false,
+ "tagOnCreate" : false,
+ "tagUpdatable" : false,
+ "cloudFormationSystemTags" : false
+ },
+ "additionalProperties" : false,
+ "required" : [ "ApiId", "DataSourceName", "Name" ],
+ "readOnlyProperties" : [ "/properties/FunctionArn", "/properties/FunctionId" ],
+ "writeOnlyProperties" : [ "/properties/CodeS3Location", "/properties/ResponseMappingTemplateS3Location", "/properties/RequestMappingTemplateS3Location" ],
"createOnlyProperties" : [ "/properties/ApiId" ],
- "primaryIdentifier" : [ "/properties/Id" ],
- "readOnlyProperties" : [ "/properties/FunctionArn", "/properties/Id", "/properties/FunctionId" ]
+ "primaryIdentifier" : [ "/properties/FunctionArn" ],
+ "handlers" : {
+ "create" : {
+ "permissions" : [ "s3:GetObject", "appsync:CreateFunction" ]
+ },
+ "read" : {
+ "permissions" : [ "appsync:GetFunction" ]
+ },
+ "update" : {
+ "permissions" : [ "s3:GetObject", "appsync:UpdateFunction" ]
+ },
+ "delete" : {
+ "permissions" : [ "appsync:DeleteFunction" ]
+ },
+ "list" : {
+ "permissions" : [ "appsync:ListFunctions" ],
+ "handlerSchema" : {
+ "properties" : {
+ "ApiId" : {
+ "$ref" : "resource-schema.json#/properties/ApiId"
+ }
+ },
+ "required" : [ "ApiId" ]
+ }
+ }
+ }
}
\ No newline at end of file
diff --git a/aws-cloudformation-schema/aws-ce-anomalymonitor.json b/aws-cloudformation-schema/aws-ce-anomalymonitor.json
index 2a07f61b57..8be4b1771f 100644
--- a/aws-cloudformation-schema/aws-ce-anomalymonitor.json
+++ b/aws-cloudformation-schema/aws-ce-anomalymonitor.json
@@ -57,7 +57,7 @@
"type" : "string",
"minLength" : 0,
"maxLength" : 40,
- "pattern" : "(\\d{4}-\\d{2}-\\d{2})(T\\d{2}:\\d{2}:\\d{2}Z)?"
+ "pattern" : "(\\d{4}-\\d{2}-\\d{2})(T\\d{2}:\\d{2}:\\d{2}Z)?|(NOT_EVALUATED_YET)"
},
"LastUpdatedDate" : {
"description" : "The date when the monitor was last updated.",
@@ -93,7 +93,8 @@
"additionalProperties" : false,
"required" : [ "MonitorName", "MonitorType" ],
"createOnlyProperties" : [ "/properties/MonitorType", "/properties/MonitorDimension", "/properties/MonitorSpecification", "/properties/ResourceTags" ],
- "readOnlyProperties" : [ "/properties/MonitorArn", "/properties/CreationDate", "/properties/DimensionValueCount", "/properties/LastEvaluatedDate", "/properties/LastUpdatedDate", "/properties/DimensionalValueCount" ],
+ "readOnlyProperties" : [ "/properties/MonitorArn", "/properties/CreationDate", "/properties/LastEvaluatedDate", "/properties/LastUpdatedDate", "/properties/DimensionalValueCount" ],
+ "writeOnlyProperties" : [ "/properties/ResourceTags" ],
"primaryIdentifier" : [ "/properties/MonitorArn" ],
"handlers" : {
"create" : {
diff --git a/aws-cloudformation-schema/aws-cognito-identitypool.json b/aws-cloudformation-schema/aws-cognito-identitypool.json
index 3a157d7494..0b3ae9b82b 100644
--- a/aws-cloudformation-schema/aws-cognito-identitypool.json
+++ b/aws-cloudformation-schema/aws-cognito-identitypool.json
@@ -1,85 +1,7 @@
{
"typeName" : "AWS::Cognito::IdentityPool",
"description" : "Resource Type definition for AWS::Cognito::IdentityPool",
- "sourceUrl" : "https://github.com/aws-cloudformation/aws-cloudformation-rpdk.git",
"additionalProperties" : false,
- "tagging" : {
- "taggable" : true,
- "tagOnCreate" : true,
- "tagUpdatable" : true,
- "cloudFormationSystemTags" : false,
- "tagProperty" : "/properties/IdentityPoolTags"
- },
- "definitions" : {
- "PushSync" : {
- "type" : "object",
- "additionalProperties" : false,
- "properties" : {
- "ApplicationArns" : {
- "type" : "array",
- "uniqueItems" : false,
- "insertionOrder" : false,
- "items" : {
- "type" : "string"
- }
- },
- "RoleArn" : {
- "type" : "string"
- }
- }
- },
- "CognitoIdentityProvider" : {
- "type" : "object",
- "additionalProperties" : false,
- "properties" : {
- "ServerSideTokenCheck" : {
- "type" : "boolean"
- },
- "ProviderName" : {
- "type" : "string"
- },
- "ClientId" : {
- "type" : "string"
- }
- },
- "required" : [ "ProviderName", "ClientId" ]
- },
- "CognitoStreams" : {
- "type" : "object",
- "additionalProperties" : false,
- "properties" : {
- "StreamingStatus" : {
- "type" : "string"
- },
- "StreamName" : {
- "type" : "string"
- },
- "RoleArn" : {
- "type" : "string"
- }
- }
- },
- "Tag" : {
- "description" : "A key-value pair to associate with a resource.",
- "type" : "object",
- "properties" : {
- "Key" : {
- "type" : "string",
- "description" : "The key name of the tag. You can specify a value that is 1 to 128 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -.",
- "minLength" : 1,
- "maxLength" : 128
- },
- "Value" : {
- "type" : "string",
- "description" : "The value for the tag. You can specify a value that is 0 to 256 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -.",
- "minLength" : 0,
- "maxLength" : 256
- }
- },
- "required" : [ "Key", "Value" ],
- "additionalProperties" : false
- }
- },
"properties" : {
"PushSync" : {
"$ref" : "#/definitions/PushSync"
@@ -87,7 +9,6 @@
"CognitoIdentityProviders" : {
"type" : "array",
"uniqueItems" : false,
- "insertionOrder" : false,
"items" : {
"$ref" : "#/definitions/CognitoIdentityProvider"
}
@@ -119,7 +40,6 @@
"SamlProviderARNs" : {
"type" : "array",
"uniqueItems" : false,
- "insertionOrder" : false,
"items" : {
"type" : "string"
}
@@ -127,43 +47,63 @@
"OpenIdConnectProviderARNs" : {
"type" : "array",
"uniqueItems" : false,
- "insertionOrder" : false,
"items" : {
"type" : "string"
}
},
"AllowClassicFlow" : {
"type" : "boolean"
+ }
+ },
+ "definitions" : {
+ "PushSync" : {
+ "type" : "object",
+ "additionalProperties" : false,
+ "properties" : {
+ "ApplicationArns" : {
+ "type" : "array",
+ "uniqueItems" : false,
+ "items" : {
+ "type" : "string"
+ }
+ },
+ "RoleArn" : {
+ "type" : "string"
+ }
+ }
},
- "IdentityPoolTags" : {
- "description" : "An array of key-value pairs to apply to this resource.",
- "type" : "array",
- "uniqueItems" : true,
- "insertionOrder" : false,
- "items" : {
- "$ref" : "#/definitions/Tag"
+ "CognitoIdentityProvider" : {
+ "type" : "object",
+ "additionalProperties" : false,
+ "properties" : {
+ "ServerSideTokenCheck" : {
+ "type" : "boolean"
+ },
+ "ProviderName" : {
+ "type" : "string"
+ },
+ "ClientId" : {
+ "type" : "string"
+ }
+ }
+ },
+ "CognitoStreams" : {
+ "type" : "object",
+ "additionalProperties" : false,
+ "properties" : {
+ "StreamingStatus" : {
+ "type" : "string"
+ },
+ "StreamName" : {
+ "type" : "string"
+ },
+ "RoleArn" : {
+ "type" : "string"
+ }
}
}
},
"required" : [ "AllowUnauthenticatedIdentities" ],
"primaryIdentifier" : [ "/properties/Id" ],
- "readOnlyProperties" : [ "/properties/Id", "/properties/Name" ],
- "writeOnlyProperties" : [ "/properties/PushSync", "/properties/CognitoStreams", "/properties/CognitoEvents" ],
- "handlers" : {
- "create" : {
- "permissions" : [ "cognito-identity:CreateIdentityPool", "cognito-identity:DescribeIdentityPool", "cognito-identity:TagResource", "cognito-sync:SetIdentityPoolConfiguration", "cognito-sync:SetCognitoEvents", "iam:PassRole" ]
- },
- "read" : {
- "permissions" : [ "cognito-identity:DescribeIdentityPool" ]
- },
- "update" : {
- "permissions" : [ "cognito-identity:UpdateIdentityPool", "cognito-identity:DescribeIdentityPool", "cognito-identity:TagResource", "cognito-identity:UntagResource", "cognito-sync:SetIdentityPoolConfiguration", "cognito-sync:SetCognitoEvents", "iam:PassRole" ]
- },
- "delete" : {
- "permissions" : [ "cognito-identity:DeleteIdentityPool", "cognito-identity:DescribeIdentityPool" ]
- },
- "list" : {
- "permissions" : [ "cognito-identity:ListIdentityPools" ]
- }
- }
+ "readOnlyProperties" : [ "/properties/Id", "/properties/Name" ]
}
\ No newline at end of file
diff --git a/aws-cloudformation-schema/aws-cognito-userpool.json b/aws-cloudformation-schema/aws-cognito-userpool.json
index 254ae9d920..f18e4e3761 100644
--- a/aws-cloudformation-schema/aws-cognito-userpool.json
+++ b/aws-cloudformation-schema/aws-cognito-userpool.json
@@ -1,427 +1,468 @@
{
"typeName" : "AWS::Cognito::UserPool",
"description" : "Resource Type definition for AWS::Cognito::UserPool",
- "additionalProperties" : false,
- "properties" : {
- "UserPoolTags" : {
- "type" : "object"
- },
- "Policies" : {
- "$ref" : "#/definitions/Policies"
- },
- "Schema" : {
- "type" : "array",
- "uniqueItems" : false,
- "items" : {
- "$ref" : "#/definitions/SchemaAttribute"
- }
- },
- "AdminCreateUserConfig" : {
- "$ref" : "#/definitions/AdminCreateUserConfig"
- },
- "UsernameConfiguration" : {
- "$ref" : "#/definitions/UsernameConfiguration"
- },
- "UserPoolName" : {
- "type" : "string"
- },
- "SmsVerificationMessage" : {
- "type" : "string"
- },
- "UserAttributeUpdateSettings" : {
- "$ref" : "#/definitions/UserAttributeUpdateSettings"
- },
- "EmailConfiguration" : {
- "$ref" : "#/definitions/EmailConfiguration"
- },
- "SmsConfiguration" : {
- "$ref" : "#/definitions/SmsConfiguration"
- },
- "EmailVerificationSubject" : {
- "type" : "string"
- },
- "AccountRecoverySetting" : {
- "$ref" : "#/definitions/AccountRecoverySetting"
- },
- "VerificationMessageTemplate" : {
- "$ref" : "#/definitions/VerificationMessageTemplate"
- },
- "ProviderURL" : {
- "type" : "string"
- },
- "MfaConfiguration" : {
- "type" : "string"
- },
- "DeletionProtection" : {
- "type" : "string"
- },
- "SmsAuthenticationMessage" : {
- "type" : "string"
- },
- "ProviderName" : {
- "type" : "string"
- },
- "UserPoolAddOns" : {
- "$ref" : "#/definitions/UserPoolAddOns"
- },
- "AliasAttributes" : {
- "type" : "array",
- "uniqueItems" : false,
- "items" : {
- "type" : "string"
- }
- },
- "EnabledMfas" : {
- "type" : "array",
- "uniqueItems" : false,
- "items" : {
- "type" : "string"
- }
- },
- "LambdaConfig" : {
- "$ref" : "#/definitions/LambdaConfig"
- },
- "Id" : {
- "type" : "string"
- },
- "Arn" : {
- "type" : "string"
- },
- "UsernameAttributes" : {
- "type" : "array",
- "uniqueItems" : false,
- "items" : {
- "type" : "string"
- }
- },
- "AutoVerifiedAttributes" : {
- "type" : "array",
- "uniqueItems" : false,
- "items" : {
- "type" : "string"
- }
- },
- "DeviceConfiguration" : {
- "$ref" : "#/definitions/DeviceConfiguration"
- },
- "EmailVerificationMessage" : {
- "type" : "string"
- }
+ "sourceUrl" : "https://github.com/aws-cloudformation/aws-cloudformation-rpdk.git",
+ "tagging" : {
+ "taggable" : true,
+ "tagOnCreate" : true,
+ "tagUpdatable" : true,
+ "cloudFormationSystemTags" : false,
+ "tagProperty" : "/properties/UserPoolTags"
},
"definitions" : {
- "Policies" : {
- "type" : "object",
- "additionalProperties" : false,
- "properties" : {
- "PasswordPolicy" : {
- "$ref" : "#/definitions/PasswordPolicy"
- }
- }
- },
- "VerificationMessageTemplate" : {
+ "PasswordPolicy" : {
"type" : "object",
- "additionalProperties" : false,
"properties" : {
- "EmailMessageByLink" : {
- "type" : "string"
+ "MinimumLength" : {
+ "type" : "integer"
},
- "EmailMessage" : {
- "type" : "string"
+ "RequireLowercase" : {
+ "type" : "boolean"
},
- "SmsMessage" : {
- "type" : "string"
+ "RequireNumbers" : {
+ "type" : "boolean"
},
- "EmailSubject" : {
- "type" : "string"
+ "RequireSymbols" : {
+ "type" : "boolean"
},
- "DefaultEmailOption" : {
- "type" : "string"
+ "RequireUppercase" : {
+ "type" : "boolean"
},
- "EmailSubjectByLink" : {
- "type" : "string"
+ "TemporaryPasswordValidityDays" : {
+ "type" : "integer"
}
- }
+ },
+ "additionalProperties" : false
},
- "NumberAttributeConstraints" : {
+ "Policies" : {
"type" : "object",
- "additionalProperties" : false,
"properties" : {
- "MinValue" : {
- "type" : "string"
- },
- "MaxValue" : {
- "type" : "string"
+ "PasswordPolicy" : {
+ "$ref" : "#/definitions/PasswordPolicy"
}
- }
+ },
+ "additionalProperties" : false
},
"InviteMessageTemplate" : {
"type" : "object",
- "additionalProperties" : false,
"properties" : {
- "EmailSubject" : {
+ "EmailMessage" : {
"type" : "string"
},
- "EmailMessage" : {
+ "EmailSubject" : {
"type" : "string"
},
"SMSMessage" : {
"type" : "string"
}
- }
+ },
+ "additionalProperties" : false
},
- "AdminCreateUserConfig" : {
+ "RecoveryOption" : {
"type" : "object",
- "additionalProperties" : false,
"properties" : {
- "InviteMessageTemplate" : {
- "$ref" : "#/definitions/InviteMessageTemplate"
+ "Name" : {
+ "type" : "string"
},
- "UnusedAccountValidityDays" : {
+ "Priority" : {
"type" : "integer"
- },
- "AllowAdminCreateUserOnly" : {
- "type" : "boolean"
- }
- }
- },
- "UsernameConfiguration" : {
- "type" : "object",
- "additionalProperties" : false,
- "properties" : {
- "CaseSensitive" : {
- "type" : "boolean"
}
- }
+ },
+ "additionalProperties" : false
},
- "UserPoolAddOns" : {
+ "AccountRecoverySetting" : {
"type" : "object",
- "additionalProperties" : false,
"properties" : {
- "AdvancedSecurityMode" : {
- "type" : "string"
+ "RecoveryMechanisms" : {
+ "type" : "array",
+ "items" : {
+ "$ref" : "#/definitions/RecoveryOption"
+ }
}
- }
+ },
+ "additionalProperties" : false
},
- "RecoveryOption" : {
+ "AdminCreateUserConfig" : {
"type" : "object",
- "additionalProperties" : false,
"properties" : {
- "Priority" : {
- "type" : "integer"
+ "AllowAdminCreateUserOnly" : {
+ "type" : "boolean"
},
- "Name" : {
- "type" : "string"
- }
- }
- },
- "StringAttributeConstraints" : {
- "type" : "object",
- "additionalProperties" : false,
- "properties" : {
- "MaxLength" : {
- "type" : "string"
+ "InviteMessageTemplate" : {
+ "$ref" : "#/definitions/InviteMessageTemplate"
},
- "MinLength" : {
- "type" : "string"
- }
- }
- },
- "UserAttributeUpdateSettings" : {
- "type" : "object",
- "additionalProperties" : false,
- "properties" : {
- "AttributesRequireVerificationBeforeUpdate" : {
- "type" : "array",
- "uniqueItems" : false,
- "items" : {
- "type" : "string"
- }
+ "UnusedAccountValidityDays" : {
+ "type" : "integer"
}
},
- "required" : [ "AttributesRequireVerificationBeforeUpdate" ]
+ "additionalProperties" : false
},
- "CustomSMSSender" : {
+ "DeviceConfiguration" : {
"type" : "object",
- "additionalProperties" : false,
"properties" : {
- "LambdaArn" : {
- "type" : "string"
+ "ChallengeRequiredOnNewDevice" : {
+ "type" : "boolean"
},
- "LambdaVersion" : {
- "type" : "string"
+ "DeviceOnlyRememberedOnUserPrompt" : {
+ "type" : "boolean"
}
- }
+ },
+ "additionalProperties" : false
},
"EmailConfiguration" : {
"type" : "object",
- "additionalProperties" : false,
"properties" : {
"ReplyToEmailAddress" : {
"type" : "string"
},
- "ConfigurationSet" : {
+ "SourceArn" : {
"type" : "string"
},
- "EmailSendingAccount" : {
+ "From" : {
"type" : "string"
},
- "From" : {
+ "ConfigurationSet" : {
"type" : "string"
},
- "SourceArn" : {
+ "EmailSendingAccount" : {
"type" : "string"
}
- }
+ },
+ "additionalProperties" : false
},
- "SmsConfiguration" : {
+ "CustomEmailSender" : {
"type" : "object",
- "additionalProperties" : false,
"properties" : {
- "SnsCallerArn" : {
- "type" : "string"
- },
- "SnsRegion" : {
+ "LambdaVersion" : {
"type" : "string"
},
- "ExternalId" : {
+ "LambdaArn" : {
"type" : "string"
}
- }
+ },
+ "additionalProperties" : false
},
- "PasswordPolicy" : {
+ "CustomSMSSender" : {
"type" : "object",
- "additionalProperties" : false,
"properties" : {
- "RequireNumbers" : {
- "type" : "boolean"
- },
- "MinimumLength" : {
- "type" : "integer"
- },
- "TemporaryPasswordValidityDays" : {
- "type" : "integer"
- },
- "RequireUppercase" : {
- "type" : "boolean"
- },
- "RequireLowercase" : {
- "type" : "boolean"
+ "LambdaVersion" : {
+ "type" : "string"
},
- "RequireSymbols" : {
- "type" : "boolean"
+ "LambdaArn" : {
+ "type" : "string"
}
- }
+ },
+ "additionalProperties" : false
},
"LambdaConfig" : {
"type" : "object",
- "additionalProperties" : false,
"properties" : {
"CreateAuthChallenge" : {
"type" : "string"
},
- "PreSignUp" : {
- "type" : "string"
- },
- "KMSKeyID" : {
+ "CustomMessage" : {
"type" : "string"
},
- "UserMigration" : {
+ "DefineAuthChallenge" : {
"type" : "string"
},
"PostAuthentication" : {
"type" : "string"
},
- "VerifyAuthChallengeResponse" : {
+ "PostConfirmation" : {
"type" : "string"
},
"PreAuthentication" : {
"type" : "string"
},
- "DefineAuthChallenge" : {
+ "PreSignUp" : {
+ "type" : "string"
+ },
+ "VerifyAuthChallengeResponse" : {
+ "type" : "string"
+ },
+ "UserMigration" : {
"type" : "string"
},
"PreTokenGeneration" : {
"type" : "string"
},
+ "CustomEmailSender" : {
+ "$ref" : "#/definitions/CustomEmailSender"
+ },
"CustomSMSSender" : {
"$ref" : "#/definitions/CustomSMSSender"
},
- "PostConfirmation" : {
+ "KMSKeyID" : {
+ "type" : "string"
+ }
+ },
+ "additionalProperties" : false
+ },
+ "SmsConfiguration" : {
+ "type" : "object",
+ "properties" : {
+ "ExternalId" : {
"type" : "string"
},
- "CustomMessage" : {
+ "SnsCallerArn" : {
"type" : "string"
},
- "CustomEmailSender" : {
- "$ref" : "#/definitions/CustomEmailSender"
+ "SnsRegion" : {
+ "type" : "string"
}
- }
+ },
+ "additionalProperties" : false
},
- "CustomEmailSender" : {
+ "StringAttributeConstraints" : {
"type" : "object",
- "additionalProperties" : false,
"properties" : {
- "LambdaArn" : {
+ "MaxLength" : {
"type" : "string"
},
- "LambdaVersion" : {
+ "MinLength" : {
"type" : "string"
}
- }
+ },
+ "additionalProperties" : false
+ },
+ "NumberAttributeConstraints" : {
+ "type" : "object",
+ "properties" : {
+ "MaxValue" : {
+ "type" : "string"
+ },
+ "MinValue" : {
+ "type" : "string"
+ }
+ },
+ "additionalProperties" : false
},
"SchemaAttribute" : {
"type" : "object",
- "additionalProperties" : false,
"properties" : {
+ "AttributeDataType" : {
+ "type" : "string"
+ },
"DeveloperOnlyAttribute" : {
"type" : "boolean"
},
"Mutable" : {
"type" : "boolean"
},
- "AttributeDataType" : {
+ "Name" : {
"type" : "string"
},
+ "NumberAttributeConstraints" : {
+ "$ref" : "#/definitions/NumberAttributeConstraints"
+ },
"StringAttributeConstraints" : {
"$ref" : "#/definitions/StringAttributeConstraints"
},
"Required" : {
"type" : "boolean"
- },
- "NumberAttributeConstraints" : {
- "$ref" : "#/definitions/NumberAttributeConstraints"
- },
- "Name" : {
- "type" : "string"
}
- }
+ },
+ "additionalProperties" : false
},
- "DeviceConfiguration" : {
+ "UsernameConfiguration" : {
"type" : "object",
- "additionalProperties" : false,
"properties" : {
- "DeviceOnlyRememberedOnUserPrompt" : {
- "type" : "boolean"
- },
- "ChallengeRequiredOnNewDevice" : {
+ "CaseSensitive" : {
"type" : "boolean"
}
- }
+ },
+ "additionalProperties" : false
},
- "AccountRecoverySetting" : {
+ "UserAttributeUpdateSettings" : {
"type" : "object",
- "additionalProperties" : false,
"properties" : {
- "RecoveryMechanisms" : {
+ "AttributesRequireVerificationBeforeUpdate" : {
"type" : "array",
- "uniqueItems" : false,
"items" : {
- "$ref" : "#/definitions/RecoveryOption"
+ "type" : "string"
}
}
+ },
+ "required" : [ "AttributesRequireVerificationBeforeUpdate" ],
+ "additionalProperties" : false
+ },
+ "VerificationMessageTemplate" : {
+ "type" : "object",
+ "properties" : {
+ "DefaultEmailOption" : {
+ "type" : "string"
+ },
+ "EmailMessage" : {
+ "type" : "string"
+ },
+ "EmailMessageByLink" : {
+ "type" : "string"
+ },
+ "EmailSubject" : {
+ "type" : "string"
+ },
+ "EmailSubjectByLink" : {
+ "type" : "string"
+ },
+ "SmsMessage" : {
+ "type" : "string"
+ }
+ },
+ "additionalProperties" : false
+ },
+ "UserPoolAddOns" : {
+ "type" : "object",
+ "properties" : {
+ "AdvancedSecurityMode" : {
+ "type" : "string"
+ }
+ },
+ "additionalProperties" : false
+ }
+ },
+ "properties" : {
+ "UserPoolName" : {
+ "type" : "string",
+ "minLength" : 1,
+ "maxLength" : 128
+ },
+ "Policies" : {
+ "$ref" : "#/definitions/Policies"
+ },
+ "AccountRecoverySetting" : {
+ "$ref" : "#/definitions/AccountRecoverySetting"
+ },
+ "AdminCreateUserConfig" : {
+ "$ref" : "#/definitions/AdminCreateUserConfig"
+ },
+ "AliasAttributes" : {
+ "type" : "array",
+ "items" : {
+ "type" : "string"
+ }
+ },
+ "UsernameAttributes" : {
+ "type" : "array",
+ "items" : {
+ "type" : "string"
+ }
+ },
+ "AutoVerifiedAttributes" : {
+ "type" : "array",
+ "items" : {
+ "type" : "string"
+ }
+ },
+ "DeviceConfiguration" : {
+ "$ref" : "#/definitions/DeviceConfiguration"
+ },
+ "EmailConfiguration" : {
+ "$ref" : "#/definitions/EmailConfiguration"
+ },
+ "EmailVerificationMessage" : {
+ "type" : "string",
+ "minLength" : 6,
+ "maxLength" : 20000
+ },
+ "EmailVerificationSubject" : {
+ "type" : "string",
+ "minLength" : 1,
+ "maxLength" : 140
+ },
+ "DeletionProtection" : {
+ "type" : "string"
+ },
+ "LambdaConfig" : {
+ "$ref" : "#/definitions/LambdaConfig"
+ },
+ "MfaConfiguration" : {
+ "type" : "string"
+ },
+ "EnabledMfas" : {
+ "type" : "array",
+ "items" : {
+ "type" : "string"
}
+ },
+ "SmsAuthenticationMessage" : {
+ "type" : "string",
+ "minLength" : 6,
+ "maxLength" : 140
+ },
+ "SmsConfiguration" : {
+ "$ref" : "#/definitions/SmsConfiguration"
+ },
+ "SmsVerificationMessage" : {
+ "type" : "string",
+ "minLength" : 6,
+ "maxLength" : 140
+ },
+ "Schema" : {
+ "type" : "array",
+ "items" : {
+ "$ref" : "#/definitions/SchemaAttribute"
+ }
+ },
+ "UsernameConfiguration" : {
+ "$ref" : "#/definitions/UsernameConfiguration"
+ },
+ "UserAttributeUpdateSettings" : {
+ "$ref" : "#/definitions/UserAttributeUpdateSettings"
+ },
+ "UserPoolTags" : {
+ "type" : "object",
+ "patternProperties" : {
+ "^([\\p{L}\\p{Z}\\p{N}_.:/=+\\-@]*)$" : {
+ "type" : "string"
+ }
+ },
+ "additionalProperties" : false
+ },
+ "VerificationMessageTemplate" : {
+ "$ref" : "#/definitions/VerificationMessageTemplate"
+ },
+ "UserPoolAddOns" : {
+ "$ref" : "#/definitions/UserPoolAddOns"
+ },
+ "ProviderName" : {
+ "type" : "string"
+ },
+ "ProviderURL" : {
+ "type" : "string"
+ },
+ "Arn" : {
+ "type" : "string"
+ },
+ "UserPoolId" : {
+ "type" : "string"
}
},
- "primaryIdentifier" : [ "/properties/Id" ],
- "readOnlyProperties" : [ "/properties/Id", "/properties/Arn", "/properties/ProviderName", "/properties/ProviderURL" ]
+ "additionalProperties" : false,
+ "primaryIdentifier" : [ "/properties/UserPoolId" ],
+ "readOnlyProperties" : [ "/properties/ProviderName", "/properties/UserPoolId", "/properties/ProviderURL", "/properties/Arn" ],
+ "writeOnlyProperties" : [ "/properties/EnabledMfas" ],
+ "propertyTransform" : {
+ "/properties/Schema/*/Name" : "'custom:' & '' & Name"
+ },
+ "handlers" : {
+ "create" : {
+ "permissions" : [ "cognito-idp:CreateUserPool", "iam:PassRole", "cognito-idp:SetUserPoolMfaConfig", "cognito-idp:DescribeUserPool", "kms:CreateGrant", "iam:CreateServiceLinkedRole" ],
+ "timeoutInMinutes" : 2
+ },
+ "read" : {
+ "permissions" : [ "cognito-idp:DescribeUserPool" ]
+ },
+ "update" : {
+ "permissions" : [ "cognito-idp:UpdateUserPool", "cognito-idp:ListTagsForResource", "cognito-idp:UntagResource", "cognito-idp:TagResource", "cognito-idp:SetUserPoolMfaConfig", "cognito-idp:AddCustomAttributes", "cognito-idp:DescribeUserPool", "iam:PassRole" ],
+ "timeoutInMinutes" : 2
+ },
+ "delete" : {
+ "permissions" : [ "cognito-idp:DeleteUserPool" ],
+ "timeoutInMinutes" : 2
+ },
+ "list" : {
+ "permissions" : [ "cognito-idp:ListUserPools" ]
+ }
+ }
}
\ No newline at end of file
diff --git a/aws-cloudformation-schema/aws-cognito-userpoolgroup.json b/aws-cloudformation-schema/aws-cognito-userpoolgroup.json
index 1263f55108..56b6f1b89d 100644
--- a/aws-cloudformation-schema/aws-cognito-userpoolgroup.json
+++ b/aws-cloudformation-schema/aws-cognito-userpoolgroup.json
@@ -1,29 +1,62 @@
{
"typeName" : "AWS::Cognito::UserPoolGroup",
"description" : "Resource Type definition for AWS::Cognito::UserPoolGroup",
- "additionalProperties" : false,
+ "sourceUrl" : "https://github.com/aws-cloudformation/aws-cloudformation-rpdk.git",
"properties" : {
- "GroupName" : {
- "type" : "string"
- },
"Description" : {
- "type" : "string"
+ "type" : "string",
+ "maxLength" : 2048
},
- "UserPoolId" : {
- "type" : "string"
- },
- "Id" : {
+ "GroupName" : {
"type" : "string"
},
"Precedence" : {
- "type" : "number"
+ "type" : "integer",
+ "minimum" : 0
},
"RoleArn" : {
"type" : "string"
+ },
+ "UserPoolId" : {
+ "type" : "string"
}
},
+ "tagging" : {
+ "taggable" : false,
+ "tagOnCreate" : false,
+ "tagUpdatable" : false,
+ "cloudFormationSystemTags" : false
+ },
+ "additionalProperties" : false,
"required" : [ "UserPoolId" ],
- "createOnlyProperties" : [ "/properties/GroupName", "/properties/UserPoolId" ],
- "primaryIdentifier" : [ "/properties/Id" ],
- "readOnlyProperties" : [ "/properties/Id" ]
+ "createOnlyProperties" : [ "/properties/UserPoolId", "/properties/GroupName" ],
+ "primaryIdentifier" : [ "/properties/UserPoolId", "/properties/GroupName" ],
+ "handlers" : {
+ "create" : {
+ "permissions" : [ "cognito-idp:CreateGroup", "iam:PassRole", "iam:PutRolePolicy", "cognito-idp:GetGroup" ],
+ "timeoutInMinutes" : 5
+ },
+ "read" : {
+ "permissions" : [ "cognito-idp:GetGroup" ]
+ },
+ "update" : {
+ "permissions" : [ "cognito-idp:UpdateGroup", "iam:PassRole", "iam:PutRolePolicy" ],
+ "timeoutInMinutes" : 5
+ },
+ "delete" : {
+ "permissions" : [ "cognito-idp:DeleteGroup", "cognito-idp:GetGroup", "iam:PutRolePolicy" ],
+ "timeoutInMinutes" : 5
+ },
+ "list" : {
+ "handlerSchema" : {
+ "properties" : {
+ "UserPoolId" : {
+ "$ref" : "resource-schema.json#/properties/UserPoolId"
+ }
+ },
+ "required" : [ "UserPoolId" ]
+ },
+ "permissions" : [ "cognito-idp:ListGroups" ]
+ }
+ }
}
\ No newline at end of file
diff --git a/aws-cloudformation-schema/aws-connect-contactflowmodule.json b/aws-cloudformation-schema/aws-connect-contactflowmodule.json
index 0519f499f0..842d053edc 100644
--- a/aws-cloudformation-schema/aws-connect-contactflowmodule.json
+++ b/aws-cloudformation-schema/aws-connect-contactflowmodule.json
@@ -61,12 +61,12 @@
"State" : {
"type" : "string",
"description" : "The state of the contact flow module.",
- "enum" : [ "ACTIVE", "ARCHIVED" ]
+ "maxLength" : 500
},
"Status" : {
"type" : "string",
"description" : "The status of the contact flow module.",
- "enum" : [ "PUBLISHED", "SAVED" ]
+ "maxLength" : 500
},
"Tags" : {
"description" : "One or more tags.",
@@ -80,6 +80,13 @@
}
},
"required" : [ "InstanceArn", "Name", "Content" ],
+ "tagging" : {
+ "taggable" : true,
+ "tagOnCreate" : true,
+ "tagUpdatable" : true,
+ "cloudFormationSystemTags" : true,
+ "tagProperty" : "/properties/Tags"
+ },
"handlers" : {
"create" : {
"permissions" : [ "connect:CreateContactFlowModule", "connect:TagResource" ]
@@ -92,6 +99,17 @@
},
"update" : {
"permissions" : [ "connect:UpdateContactFlowModuleMetadata", "connect:UpdateContactFlowModuleContent", "connect:TagResource", "connect:UntagResource" ]
+ },
+ "list" : {
+ "handlerSchema" : {
+ "properties" : {
+ "InstanceArn" : {
+ "$ref" : "resource-schema.json#/properties/InstanceArn"
+ }
+ },
+ "required" : [ "InstanceArn" ]
+ },
+ "permissions" : [ "connect:ListContactFlowModules" ]
}
},
"additionalProperties" : false,
diff --git a/aws-cloudformation-schema/aws-customerprofiles-domain.json b/aws-cloudformation-schema/aws-customerprofiles-domain.json
index d102114ba7..073f15a4fa 100644
--- a/aws-cloudformation-schema/aws-customerprofiles-domain.json
+++ b/aws-cloudformation-schema/aws-customerprofiles-domain.json
@@ -20,6 +20,286 @@
},
"additionalProperties" : false,
"required" : [ "Key", "Value" ]
+ },
+ "DomainStats" : {
+ "type" : "object",
+ "description" : "Usage-specific statistics about the domain.",
+ "properties" : {
+ "MeteringProfileCount" : {
+ "description" : "The number of profiles that you are currently paying for in the domain. If you have more than 100 objects associated with a single profile, that profile counts as two profiles. If you have more than 200 objects, that profile counts as three, and so on.",
+ "type" : "number"
+ },
+ "ObjectCount" : {
+ "description" : "The total number of objects in domain.",
+ "type" : "number"
+ },
+ "ProfileCount" : {
+ "description" : "The total number of profiles currently in the domain.",
+ "type" : "number"
+ },
+ "TotalSize" : {
+ "description" : "The total size, in bytes, of all objects in the domain.",
+ "type" : "number"
+ }
+ },
+ "additionalProperties" : false
+ },
+ "S3ExportingConfig" : {
+ "type" : "object",
+ "description" : "The S3 location where Identity Resolution Jobs write result files.",
+ "properties" : {
+ "S3BucketName" : {
+ "description" : "The name of the S3 bucket where Identity Resolution Jobs write result files.",
+ "type" : "string",
+ "minLength" : 3,
+ "maxLength" : 63,
+ "pattern" : "^[a-z0-9.-]+$"
+ },
+ "S3KeyName" : {
+ "description" : "The S3 key name of the location where Identity Resolution Jobs write result files.",
+ "type" : "string",
+ "minLength" : 1,
+ "maxLength" : 800,
+ "pattern" : ".*"
+ }
+ },
+ "required" : [ "S3BucketName" ],
+ "additionalProperties" : false
+ },
+ "ExportingConfig" : {
+ "type" : "object",
+ "description" : "Configuration information for exporting Identity Resolution results, for example, to an S3 bucket.",
+ "properties" : {
+ "S3Exporting" : {
+ "$ref" : "#/definitions/S3ExportingConfig"
+ }
+ },
+ "additionalProperties" : false
+ },
+ "JobSchedule" : {
+ "type" : "object",
+ "description" : "The day and time when do you want to start the Identity Resolution Job every week.",
+ "properties" : {
+ "DayOfTheWeek" : {
+ "description" : "The day when the Identity Resolution Job should run every week.",
+ "type" : "string",
+ "enum" : [ "SUNDAY", "MONDAY", "TUESDAY", "WEDNESDAY", "THURSDAY", "FRIDAY", "SATURDAY" ]
+ },
+ "Time" : {
+ "description" : "The time when the Identity Resolution Job should run every week.",
+ "type" : "string",
+ "minLength" : 3,
+ "maxLength" : 5,
+ "pattern" : "^([0-9]|0[0-9]|1[0-9]|2[0-3]):[0-5][0-9]$"
+ }
+ },
+ "required" : [ "DayOfTheWeek", "Time" ],
+ "additionalProperties" : false
+ },
+ "ConflictResolution" : {
+ "type" : "object",
+ "description" : "How the auto-merging process should resolve conflicts between different profiles. For example, if Profile A and Profile B have the same FirstName and LastName (and that is the matching criteria), which EmailAddress should be used? ",
+ "properties" : {
+ "ConflictResolvingModel" : {
+ "description" : "How the auto-merging process should resolve conflicts between different profiles.",
+ "type" : "string",
+ "enum" : [ "RECENCY", "SOURCE" ]
+ },
+ "SourceName" : {
+ "description" : "The ObjectType name that is used to resolve profile merging conflicts when choosing SOURCE as the ConflictResolvingModel.",
+ "type" : "string",
+ "minLength" : 1,
+ "maxLength" : 255
+ }
+ },
+ "required" : [ "ConflictResolvingModel" ],
+ "additionalProperties" : false
+ },
+ "MatchingAttributes" : {
+ "type" : "array",
+ "minItems" : 1,
+ "maxItems" : 20,
+ "items" : {
+ "type" : "string",
+ "minLength" : 1,
+ "maxLength" : 255
+ }
+ },
+ "Consolidation" : {
+ "description" : "A list of matching attributes that represent matching criteria. If two profiles meet at least one of the requirements in the matching attributes list, they will be merged.",
+ "type" : "object",
+ "properties" : {
+ "MatchingAttributesList" : {
+ "description" : "A list of matching criteria.",
+ "type" : "array",
+ "minItems" : 1,
+ "maxItems" : 10,
+ "items" : {
+ "$ref" : "#/definitions/MatchingAttributes"
+ }
+ }
+ },
+ "required" : [ "MatchingAttributesList" ],
+ "additionalProperties" : false
+ },
+ "AutoMerging" : {
+ "type" : "object",
+ "description" : "Configuration information about the auto-merging process.",
+ "properties" : {
+ "Enabled" : {
+ "description" : "The flag that enables the auto-merging of duplicate profiles.",
+ "type" : "boolean"
+ },
+ "ConflictResolution" : {
+ "$ref" : "#/definitions/ConflictResolution"
+ },
+ "Consolidation" : {
+ "$ref" : "#/definitions/Consolidation"
+ },
+ "MinAllowedConfidenceScoreForMerging" : {
+ "description" : "A number between 0 and 1 that represents the minimum confidence score required for profiles within a matching group to be merged during the auto-merge process. A higher score means higher similarity required to merge profiles.",
+ "type" : "number",
+ "minimum" : 0.0,
+ "maximum" : 1.0
+ }
+ },
+ "required" : [ "Enabled" ],
+ "additionalProperties" : false
+ },
+ "MatchingRuleAttributeList" : {
+ "description" : "A single rule level of the MatchRules. Configures how the rule-based matching process should match profiles.",
+ "type" : "array",
+ "minItems" : 1,
+ "maxItems" : 15,
+ "items" : {
+ "type" : "string",
+ "minLength" : 1,
+ "maxLength" : 255
+ }
+ },
+ "MatchingRule" : {
+ "description" : "Specifies how does the rule-based matching process should match profiles.",
+ "type" : "object",
+ "properties" : {
+ "Rule" : {
+ "$ref" : "#/definitions/MatchingRuleAttributeList"
+ }
+ },
+ "required" : [ "Rule" ],
+ "additionalProperties" : false
+ },
+ "AttributeTypesSelector" : {
+ "description" : "Configures information about the AttributeTypesSelector where the rule-based identity resolution uses to match profiles.",
+ "type" : "object",
+ "properties" : {
+ "AttributeMatchingModel" : {
+ "description" : "Configures the AttributeMatchingModel, you can either choose ONE_TO_ONE or MANY_TO_MANY.",
+ "type" : "string",
+ "enum" : [ "ONE_TO_ONE", "MANY_TO_MANY" ]
+ },
+ "Address" : {
+ "description" : "The Address type. You can choose from Address, BusinessAddress, MaillingAddress, and ShippingAddress. You only can use the Address type in the MatchingRule. For example, if you want to match profile based on BusinessAddress.City or MaillingAddress.City, you need to choose the BusinessAddress and the MaillingAddress to represent the Address type and specify the Address.City on the matching rule.",
+ "type" : "array",
+ "minItems" : 1,
+ "maxItems" : 4,
+ "items" : {
+ "type" : "string",
+ "minLength" : 1,
+ "maxLength" : 255
+ }
+ },
+ "EmailAddress" : {
+ "description" : "The Email type. You can choose from EmailAddress, BusinessEmailAddress and PersonalEmailAddress. You only can use the EmailAddress type in the MatchingRule. For example, if you want to match profile based on PersonalEmailAddress or BusinessEmailAddress, you need to choose the PersonalEmailAddress and the BusinessEmailAddress to represent the EmailAddress type and only specify the EmailAddress on the matching rule.",
+ "type" : "array",
+ "minItems" : 1,
+ "maxItems" : 3,
+ "items" : {
+ "type" : "string",
+ "minLength" : 1,
+ "maxLength" : 255
+ }
+ },
+ "PhoneNumber" : {
+ "description" : "The PhoneNumber type. You can choose from PhoneNumber, HomePhoneNumber, and MobilePhoneNumber. You only can use the PhoneNumber type in the MatchingRule. For example, if you want to match a profile based on Phone or HomePhone, you need to choose the Phone and the HomePhone to represent the PhoneNumber type and only specify the PhoneNumber on the matching rule.",
+ "type" : "array",
+ "minItems" : 1,
+ "maxItems" : 4,
+ "items" : {
+ "type" : "string",
+ "minLength" : 1,
+ "maxLength" : 255
+ }
+ }
+ },
+ "required" : [ "AttributeMatchingModel" ],
+ "additionalProperties" : false
+ },
+ "Matching" : {
+ "description" : "The process of matching duplicate profiles. If Matching = true, Amazon Connect Customer Profiles starts a weekly batch process called Identity Resolution Job. If you do not specify a date and time for Identity Resolution Job to run, by default it runs every Saturday at 12AM UTC to detect duplicate profiles in your domains. After the Identity Resolution Job completes, use the GetMatches API to return and review the results. Or, if you have configured ExportingConfig in the MatchingRequest, you can download the results from S3.",
+ "type" : "object",
+ "properties" : {
+ "Enabled" : {
+ "description" : "The flag that enables the matching process of duplicate profiles.",
+ "type" : "boolean"
+ },
+ "AutoMerging" : {
+ "$ref" : "#/definitions/AutoMerging"
+ },
+ "ExportingConfig" : {
+ "$ref" : "#/definitions/ExportingConfig"
+ },
+ "JobSchedule" : {
+ "$ref" : "#/definitions/JobSchedule"
+ }
+ },
+ "required" : [ "Enabled" ],
+ "additionalProperties" : false
+ },
+ "RuleBasedMatching" : {
+ "description" : "The process of matching duplicate profiles using the Rule-Based matching. If RuleBasedMatching = true, Amazon Connect Customer Profiles will start to match and merge your profiles according to your configuration in the RuleBasedMatchingRequest. You can use the ListRuleBasedMatches and GetSimilarProfiles API to return and review the results. Also, if you have configured ExportingConfig in the RuleBasedMatchingRequest, you can download the results from S3.",
+ "type" : "object",
+ "properties" : {
+ "Enabled" : {
+ "description" : "The flag that enables the rule-based matching process of duplicate profiles.",
+ "type" : "boolean"
+ },
+ "AttributeTypesSelector" : {
+ "$ref" : "#/definitions/AttributeTypesSelector"
+ },
+ "ConflictResolution" : {
+ "$ref" : "#/definitions/ConflictResolution"
+ },
+ "ExportingConfig" : {
+ "$ref" : "#/definitions/ExportingConfig"
+ },
+ "MatchingRules" : {
+ "description" : "Configures how the rule-based matching process should match profiles. You can have up to 15 MatchingRule in the MatchingRules.",
+ "type" : "array",
+ "minItems" : 1,
+ "maxItems" : 15,
+ "items" : {
+ "$ref" : "#/definitions/MatchingRule"
+ }
+ },
+ "MaxAllowedRuleLevelForMatching" : {
+ "description" : "Indicates the maximum allowed rule level for matching.",
+ "type" : "integer",
+ "minimum" : 1,
+ "maximum" : 15
+ },
+ "MaxAllowedRuleLevelForMerging" : {
+ "description" : "Indicates the maximum allowed rule level for merging.",
+ "type" : "integer",
+ "minimum" : 1,
+ "maximum" : 15
+ },
+ "Status" : {
+ "type" : "string",
+ "enum" : [ "PENDING", "IN_PROGRESS", "ACTIVE" ]
+ }
+ },
+ "required" : [ "Enabled" ],
+ "additionalProperties" : false
}
},
"properties" : {
@@ -48,6 +328,15 @@
"minimum" : 1,
"maximum" : 1098
},
+ "Matching" : {
+ "$ref" : "#/definitions/Matching"
+ },
+ "RuleBasedMatching" : {
+ "$ref" : "#/definitions/RuleBasedMatching"
+ },
+ "Stats" : {
+ "$ref" : "#/definitions/DomainStats"
+ },
"Tags" : {
"description" : "The tags (keys and values) associated with the domain",
"type" : "array",
@@ -75,7 +364,7 @@
"cloudFormationSystemTags" : true,
"tagProperty" : "/properties/Tags"
},
- "readOnlyProperties" : [ "/properties/LastUpdatedAt", "/properties/CreatedAt" ],
+ "readOnlyProperties" : [ "/properties/LastUpdatedAt", "/properties/CreatedAt", "/properties/RuleBasedMatching/Status", "/properties/Stats" ],
"createOnlyProperties" : [ "/properties/DomainName" ],
"primaryIdentifier" : [ "/properties/DomainName" ],
"handlers" : {
diff --git a/aws-cloudformation-schema/aws-datasync-agent.json b/aws-cloudformation-schema/aws-datasync-agent.json
index 8f7281326e..1eb022c7ee 100644
--- a/aws-cloudformation-schema/aws-datasync-agent.json
+++ b/aws-cloudformation-schema/aws-datasync-agent.json
@@ -102,7 +102,7 @@
"writeOnlyProperties" : [ "/properties/ActivationKey" ],
"handlers" : {
"create" : {
- "permissions" : [ "datasync:CreateAgent", "datasync:TagResource", "ec2:DescribeNetworkInterfaces", "ec2:DescribeSecurityGroups", "ec2:DescribeSubnets", "ec2:DescribeVpcEndpoints" ]
+ "permissions" : [ "datasync:CreateAgent", "datasync:TagResource", "datasync:DescribeAgent", "datasync:ListTagsForResource", "ec2:DescribeNetworkInterfaces", "ec2:DescribeSecurityGroups", "ec2:DescribeSubnets", "ec2:DescribeVpcEndpoints" ]
},
"read" : {
"permissions" : [ "datasync:DescribeAgent", "datasync:ListTagsForResource" ]
diff --git a/aws-cloudformation-schema/aws-ec2-subnet.json b/aws-cloudformation-schema/aws-ec2-subnet.json
index 9cbf7485dd..3cf4f9c81a 100644
--- a/aws-cloudformation-schema/aws-ec2-subnet.json
+++ b/aws-cloudformation-schema/aws-ec2-subnet.json
@@ -1,24 +1,65 @@
{
+ "tagging" : {
+ "taggable" : true,
+ "tagOnCreate" : true,
+ "tagUpdatable" : true,
+ "tagProperty" : "/properties/Tags",
+ "cloudFormationSystemTags" : true
+ },
"typeName" : "AWS::EC2::Subnet",
+ "readOnlyProperties" : [ "/properties/NetworkAclAssociationId", "/properties/SubnetId", "/properties/Ipv6CidrBlocks" ],
"description" : "Resource Type definition for AWS::EC2::Subnet",
+ "createOnlyProperties" : [ "/properties/VpcId", "/properties/AvailabilityZone", "/properties/AvailabilityZoneId", "/properties/CidrBlock", "/properties/OutpostArn", "/properties/Ipv6Native" ],
+ "primaryIdentifier" : [ "/properties/SubnetId" ],
+ "required" : [ "VpcId" ],
+ "conditionalCreateOnlyProperties" : [ "/properties/Ipv6CidrBlock" ],
+ "handlers" : {
+ "read" : {
+ "permissions" : [ "ec2:DescribeSubnets", "ec2:DescribeNetworkAcls" ]
+ },
+ "create" : {
+ "permissions" : [ "ec2:DescribeSubnets", "ec2:CreateSubnet", "ec2:CreateTags", "ec2:ModifySubnetAttribute" ]
+ },
+ "update" : {
+ "permissions" : [ "ec2:DescribeSubnets", "ec2:ModifySubnetAttribute", "ec2:CreateTags", "ec2:DeleteTags", "ec2:AssociateSubnetCidrBlock", "ec2:DisassociateSubnetCidrBlock" ]
+ },
+ "list" : {
+ "permissions" : [ "ec2:DescribeSubnets", "ec2:DescribeNetworkAcls" ]
+ },
+ "delete" : {
+ "permissions" : [ "ec2:DescribeSubnets", "ec2:DeleteSubnet" ]
+ }
+ },
"additionalProperties" : false,
+ "definitions" : {
+ "Tag" : {
+ "additionalProperties" : false,
+ "type" : "object",
+ "properties" : {
+ "Value" : {
+ "type" : "string"
+ },
+ "Key" : {
+ "type" : "string"
+ }
+ },
+ "required" : [ "Value", "Key" ]
+ }
+ },
"properties" : {
- "AssignIpv6AddressOnCreation" : {
+ "MapPublicIpOnLaunch" : {
"type" : "boolean"
},
- "VpcId" : {
- "type" : "string"
- },
- "MapPublicIpOnLaunch" : {
+ "EnableDns64" : {
"type" : "boolean"
},
- "NetworkAclAssociationId" : {
+ "AvailabilityZoneId" : {
"type" : "string"
},
- "AvailabilityZone" : {
+ "OutpostArn" : {
"type" : "string"
},
- "AvailabilityZoneId" : {
+ "AvailabilityZone" : {
"type" : "string"
},
"CidrBlock" : {
@@ -27,90 +68,57 @@
"SubnetId" : {
"type" : "string"
},
- "Ipv6CidrBlocks" : {
- "type" : "array",
- "uniqueItems" : false,
- "items" : {
- "type" : "string"
- }
+ "Ipv6NetmaskLength" : {
+ "description" : "The netmask length of the IPv6 CIDR you want to allocate to this subnet from an Amazon VPC IP Address Manager (IPAM) pool",
+ "type" : "integer"
},
- "Ipv6CidrBlock" : {
- "type" : "string"
+ "AssignIpv6AddressOnCreation" : {
+ "type" : "boolean"
},
- "OutpostArn" : {
+ "VpcId" : {
"type" : "string"
},
- "Ipv6Native" : {
- "type" : "boolean"
+ "Ipv4NetmaskLength" : {
+ "description" : "The netmask length of the IPv4 CIDR you want to allocate to this subnet from an Amazon VPC IP Address Manager (IPAM) pool",
+ "type" : "integer"
},
- "EnableDns64" : {
- "type" : "boolean"
+ "NetworkAclAssociationId" : {
+ "type" : "string"
},
"PrivateDnsNameOptionsOnLaunch" : {
- "type" : "object",
"additionalProperties" : false,
+ "type" : "object",
"properties" : {
- "HostnameType" : {
- "type" : "string"
- },
"EnableResourceNameDnsARecord" : {
"type" : "boolean"
},
+ "HostnameType" : {
+ "type" : "string"
+ },
"EnableResourceNameDnsAAAARecord" : {
"type" : "boolean"
}
}
},
- "Tags" : {
- "type" : "array",
+ "Ipv6Native" : {
+ "type" : "boolean"
+ },
+ "Ipv6CidrBlocks" : {
"uniqueItems" : false,
+ "type" : "array",
"items" : {
- "$ref" : "#/definitions/Tag"
+ "type" : "string"
}
- }
- },
- "tagging" : {
- "taggable" : true,
- "tagOnCreate" : true,
- "tagUpdatable" : true,
- "cloudFormationSystemTags" : true,
- "tagProperty" : "/properties/Tags"
- },
- "definitions" : {
- "Tag" : {
- "type" : "object",
- "additionalProperties" : false,
- "properties" : {
- "Value" : {
- "type" : "string"
- },
- "Key" : {
- "type" : "string"
- }
- },
- "required" : [ "Value", "Key" ]
- }
- },
- "required" : [ "VpcId" ],
- "createOnlyProperties" : [ "/properties/VpcId", "/properties/AvailabilityZone", "/properties/AvailabilityZoneId", "/properties/CidrBlock", "/properties/OutpostArn", "/properties/Ipv6Native" ],
- "conditionalCreateOnlyProperties" : [ "/properties/Ipv6CidrBlock" ],
- "primaryIdentifier" : [ "/properties/SubnetId" ],
- "readOnlyProperties" : [ "/properties/NetworkAclAssociationId", "/properties/SubnetId", "/properties/Ipv6CidrBlocks" ],
- "handlers" : {
- "create" : {
- "permissions" : [ "ec2:DescribeSubnets", "ec2:CreateSubnet", "ec2:CreateTags", "ec2:ModifySubnetAttribute" ]
- },
- "read" : {
- "permissions" : [ "ec2:DescribeSubnets", "ec2:DescribeNetworkAcls" ]
- },
- "update" : {
- "permissions" : [ "ec2:DescribeSubnets", "ec2:ModifySubnetAttribute", "ec2:CreateTags", "ec2:DeleteTags", "ec2:AssociateSubnetCidrBlock", "ec2:DisassociateSubnetCidrBlock" ]
},
- "delete" : {
- "permissions" : [ "ec2:DescribeSubnets", "ec2:DeleteSubnet" ]
+ "Ipv6CidrBlock" : {
+ "type" : "string"
},
- "list" : {
- "permissions" : [ "ec2:DescribeSubnets", "ec2:DescribeNetworkAcls" ]
+ "Tags" : {
+ "uniqueItems" : false,
+ "type" : "array",
+ "items" : {
+ "$ref" : "#/definitions/Tag"
+ }
}
}
}
\ No newline at end of file
diff --git a/aws-cloudformation-schema/aws-entityresolution-idmappingworkflow.json b/aws-cloudformation-schema/aws-entityresolution-idmappingworkflow.json
new file mode 100644
index 0000000000..6ad71a3e75
--- /dev/null
+++ b/aws-cloudformation-schema/aws-entityresolution-idmappingworkflow.json
@@ -0,0 +1,229 @@
+{
+ "typeName" : "AWS::EntityResolution::IdMappingWorkflow",
+ "description" : "IdMappingWorkflow defined in AWS Entity Resolution service",
+ "sourceUrl" : "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-entity-resolution.git",
+ "definitions" : {
+ "EntityName" : {
+ "type" : "string",
+ "pattern" : "^[a-zA-Z_0-9-]*$",
+ "minLength" : 0,
+ "maxLength" : 255
+ },
+ "Description" : {
+ "type" : "string",
+ "minLength" : 0,
+ "maxLength" : 255
+ },
+ "AttributeName" : {
+ "type" : "string",
+ "pattern" : "^[a-zA-Z_0-9- \\t]*$",
+ "minLength" : 0,
+ "maxLength" : 255
+ },
+ "SchemaMappingArn" : {
+ "description" : "The SchemaMapping arn associated with the Schema",
+ "type" : "string",
+ "pattern" : "^arn:(aws|aws-us-gov|aws-cn):entityresolution:.*:[0-9]+:(schemamapping/.*)$"
+ },
+ "KMSArn" : {
+ "type" : "string",
+ "pattern" : "^arn:(aws|aws-us-gov|aws-cn):kms:.*:[0-9]+:.*$"
+ },
+ "IdMappingWorkflowArn" : {
+ "description" : "The default IdMappingWorkflow arn",
+ "type" : "string",
+ "pattern" : "^arn:(aws|aws-us-gov|aws-cn):entityresolution:.*:[0-9]+:(idmappingworkflow/.*)$"
+ },
+ "CreatedAt" : {
+ "description" : "The time of this IdMappingWorkflow got created",
+ "type" : "string"
+ },
+ "UpdatedAt" : {
+ "description" : "The time of this IdMappingWorkflow got last updated at",
+ "type" : "string"
+ },
+ "IdMappingWorkflowInputSource" : {
+ "type" : "object",
+ "properties" : {
+ "InputSourceARN" : {
+ "description" : "An Glue table ARN for the input source table",
+ "type" : "string",
+ "pattern" : "arn:(aws|aws-us-gov|aws-cn):.*:.*:[0-9]+:.*$"
+ },
+ "SchemaArn" : {
+ "type" : "string",
+ "$ref" : "#/definitions/SchemaMappingArn"
+ }
+ },
+ "required" : [ "InputSourceARN", "SchemaArn" ],
+ "additionalProperties" : false
+ },
+ "IdMappingWorkflowOutputSource" : {
+ "type" : "object",
+ "properties" : {
+ "OutputS3Path" : {
+ "description" : "The S3 path to which Entity Resolution will write the output table",
+ "type" : "string",
+ "pattern" : "^s3://([^/]+)/?(.*?([^/]+)/?)$"
+ },
+ "KMSArn" : {
+ "$ref" : "#/definitions/KMSArn"
+ }
+ },
+ "required" : [ "OutputS3Path" ],
+ "additionalProperties" : false
+ },
+ "IdMappingTechniques" : {
+ "type" : "object",
+ "properties" : {
+ "IdMappingType" : {
+ "type" : "string",
+ "enum" : [ "PROVIDER" ]
+ },
+ "ProviderProperties" : {
+ "$ref" : "#/definitions/ProviderProperties"
+ }
+ },
+ "additionalProperties" : false
+ },
+ "ProviderProperties" : {
+ "type" : "object",
+ "properties" : {
+ "ProviderServiceArn" : {
+ "type" : "string",
+ "description" : "Arn of the Provider Service being used.",
+ "pattern" : "^arn:(aws|aws-us-gov|aws-cn):entityresolution:([A-Za-z0-9]+(-[A-Za-z0-9]+)+)::providerservice/[A-Za-z0-9]+/[A-Za-z0-9]+$"
+ },
+ "ProviderConfiguration" : {
+ "type" : "object",
+ "additionalProperties" : false,
+ "patternProperties" : {
+ "^.+$" : {
+ "type" : "string"
+ }
+ },
+ "description" : "Additional Provider configuration that would be required for the provider service. The Configuration must be in JSON string format"
+ },
+ "IntermediateSourceConfiguration" : {
+ "$ref" : "#/definitions/IntermediateSourceConfiguration"
+ }
+ },
+ "required" : [ "ProviderServiceArn" ],
+ "additionalProperties" : false
+ },
+ "IntermediateSourceConfiguration" : {
+ "type" : "object",
+ "properties" : {
+ "IntermediateS3Path" : {
+ "type" : "string",
+ "description" : "The s3 path that would be used to stage the intermediate data being generated during workflow execution."
+ }
+ },
+ "required" : [ "IntermediateS3Path" ],
+ "additionalProperties" : false
+ },
+ "Tag" : {
+ "description" : "A key-value pair to associate with a resource",
+ "type" : "object",
+ "properties" : {
+ "Key" : {
+ "type" : "string",
+ "description" : "The key name of the tag. You can specify a value that is 1 to 128 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -.",
+ "minLength" : 1,
+ "maxLength" : 128
+ },
+ "Value" : {
+ "type" : "string",
+ "description" : "The value for the tag. You can specify a value that is 0 to 256 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -.",
+ "minLength" : 0,
+ "maxLength" : 256
+ }
+ },
+ "required" : [ "Key", "Value" ],
+ "additionalProperties" : false
+ }
+ },
+ "properties" : {
+ "WorkflowName" : {
+ "description" : "The name of the IdMappingWorkflow",
+ "$ref" : "#/definitions/EntityName"
+ },
+ "Description" : {
+ "description" : "The description of the IdMappingWorkflow",
+ "$ref" : "#/definitions/Description"
+ },
+ "InputSourceConfig" : {
+ "type" : "array",
+ "insertionOrder" : false,
+ "minItems" : 1,
+ "maxItems" : 20,
+ "items" : {
+ "$ref" : "#/definitions/IdMappingWorkflowInputSource"
+ }
+ },
+ "OutputSourceConfig" : {
+ "type" : "array",
+ "insertionOrder" : false,
+ "minItems" : 1,
+ "maxItems" : 1,
+ "items" : {
+ "$ref" : "#/definitions/IdMappingWorkflowOutputSource"
+ }
+ },
+ "IdMappingTechniques" : {
+ "$ref" : "#/definitions/IdMappingTechniques"
+ },
+ "RoleArn" : {
+ "type" : "string",
+ "pattern" : "^arn:(aws|aws-us-gov|aws-cn):iam::\\d{12}:role/?[a-zA-Z_0-9+=,.@\\-_/]+$"
+ },
+ "Tags" : {
+ "type" : "array",
+ "uniqueItems" : true,
+ "insertionOrder" : false,
+ "minItems" : 0,
+ "maxItems" : 200,
+ "items" : {
+ "$ref" : "#/definitions/Tag"
+ }
+ },
+ "WorkflowArn" : {
+ "$ref" : "#/definitions/IdMappingWorkflowArn"
+ },
+ "CreatedAt" : {
+ "$ref" : "#/definitions/CreatedAt"
+ },
+ "UpdatedAt" : {
+ "$ref" : "#/definitions/UpdatedAt"
+ }
+ },
+ "createOnlyProperties" : [ "/properties/WorkflowName" ],
+ "readOnlyProperties" : [ "/properties/WorkflowArn", "/properties/UpdatedAt", "/properties/CreatedAt" ],
+ "primaryIdentifier" : [ "/properties/WorkflowName" ],
+ "tagging" : {
+ "taggable" : true,
+ "tagOnCreate" : true,
+ "tagUpdatable" : true,
+ "cloudFormationSystemTags" : true,
+ "tagProperty" : "/properties/Tags"
+ },
+ "handlers" : {
+ "create" : {
+ "permissions" : [ "entityresolution:CreateIdMappingWorkflow", "entityresolution:GetIdMappingWorkflow", "entityresolution:TagResource", "kms:CreateGrant", "kms:DescribeKey", "iam:PassRole" ]
+ },
+ "update" : {
+ "permissions" : [ "entityresolution:GetIdMappingWorkflow", "entityresolution:UpdateIdMappingWorkflow", "entityresolution:ListTagsForResource", "entityresolution:TagResource", "entityresolution:UntagResource", "iam:PassRole", "kms:CreateGrant", "kms:DescribeKey" ]
+ },
+ "read" : {
+ "permissions" : [ "entityresolution:GetIdMappingWorkflow", "entityresolution:ListTagsForResource" ]
+ },
+ "delete" : {
+ "permissions" : [ "entityresolution:DeleteIdMappingWorkflow", "entityresolution:GetIdMappingWorkflow", "entityresolution:UntagResource" ]
+ },
+ "list" : {
+ "permissions" : [ "entityresolution:ListIdMappingWorkflows" ]
+ }
+ },
+ "required" : [ "WorkflowName", "InputSourceConfig", "OutputSourceConfig", "IdMappingTechniques", "RoleArn" ],
+ "additionalProperties" : false
+}
\ No newline at end of file
diff --git a/aws-cloudformation-schema/aws-events-rule.json b/aws-cloudformation-schema/aws-events-rule.json
index e49c56e976..80df7f3eb2 100644
--- a/aws-cloudformation-schema/aws-events-rule.json
+++ b/aws-cloudformation-schema/aws-events-rule.json
@@ -1,82 +1,92 @@
{
- "tagging" : {
- "taggable" : false
- },
- "handlers" : {
- "read" : {
- "permissions" : [ "iam:PassRole", "events:DescribeRule", "events:ListTargetsByRule" ]
+ "typeName" : "AWS::Events::Rule",
+ "description" : "Resource Type definition for AWS::Events::Rule",
+ "additionalProperties" : false,
+ "properties" : {
+ "EventBusName" : {
+ "type" : "string"
},
- "create" : {
- "permissions" : [ "iam:PassRole", "events:DescribeRule", "events:PutRule", "events:PutTargets" ]
+ "EventPattern" : {
+ "type" : "object"
},
- "update" : {
- "permissions" : [ "iam:PassRole", "events:DescribeRule", "events:PutRule", "events:RemoveTargets", "events:PutTargets" ]
+ "ScheduleExpression" : {
+ "type" : "string"
},
- "list" : {
- "permissions" : [ "events:ListRules" ]
+ "Description" : {
+ "type" : "string"
},
- "delete" : {
- "permissions" : [ "iam:PassRole", "events:DescribeRule", "events:DeleteRule", "events:RemoveTargets", "events:ListTargetsByRule" ]
+ "State" : {
+ "type" : "string"
+ },
+ "Targets" : {
+ "type" : "array",
+ "uniqueItems" : true,
+ "items" : {
+ "$ref" : "#/definitions/Target"
+ }
+ },
+ "Id" : {
+ "type" : "string"
+ },
+ "Arn" : {
+ "type" : "string"
+ },
+ "RoleArn" : {
+ "type" : "string"
+ },
+ "Name" : {
+ "type" : "string"
}
},
- "typeName" : "AWS::Events::Rule",
- "readOnlyProperties" : [ "/properties/Arn" ],
- "description" : "Resource Type definition for AWS::Events::Rule",
- "createOnlyProperties" : [ "/properties/Name" ],
- "additionalProperties" : false,
- "primaryIdentifier" : [ "/properties/Arn" ],
"definitions" : {
"CapacityProviderStrategyItem" : {
- "additionalProperties" : false,
"type" : "object",
+ "additionalProperties" : false,
"properties" : {
- "CapacityProvider" : {
- "type" : "string"
- },
"Base" : {
"type" : "integer"
},
"Weight" : {
"type" : "integer"
+ },
+ "CapacityProvider" : {
+ "type" : "string"
}
},
"required" : [ "CapacityProvider" ]
},
"HttpParameters" : {
- "additionalProperties" : false,
"type" : "object",
+ "additionalProperties" : false,
"properties" : {
"PathParameterValues" : {
- "uniqueItems" : true,
- "insertionOrder" : true,
"type" : "array",
+ "uniqueItems" : true,
"items" : {
"type" : "string"
}
},
"HeaderParameters" : {
+ "type" : "object",
"patternProperties" : {
"[a-zA-Z0-9]+" : {
"type" : "string"
}
- },
- "additionalProperties" : false,
- "type" : "object"
+ }
},
"QueryStringParameters" : {
+ "type" : "object",
"patternProperties" : {
"[a-zA-Z0-9]+" : {
"type" : "string"
}
- },
- "additionalProperties" : false,
- "type" : "object"
+ }
}
}
},
"DeadLetterConfig" : {
- "additionalProperties" : false,
"type" : "object",
+ "additionalProperties" : false,
"properties" : {
"Arn" : {
"type" : "string"
@@ -84,13 +94,12 @@
}
},
"RunCommandParameters" : {
- "additionalProperties" : false,
"type" : "object",
+ "additionalProperties" : false,
"properties" : {
"RunCommandTargets" : {
- "uniqueItems" : true,
- "insertionOrder" : true,
"type" : "array",
+ "uniqueItems" : true,
"items" : {
"$ref" : "#/definitions/RunCommandTarget"
}
@@ -99,8 +108,8 @@
"required" : [ "RunCommandTargets" ]
},
"PlacementStrategy" : {
- "additionalProperties" : false,
"type" : "object",
+ "additionalProperties" : false,
"properties" : {
"Field" : {
"type" : "string"
@@ -111,27 +120,26 @@
}
},
"InputTransformer" : {
- "additionalProperties" : false,
"type" : "object",
+ "additionalProperties" : false,
"properties" : {
+ "InputTemplate" : {
+ "type" : "string"
+ },
"InputPathsMap" : {
+ "type" : "object",
"patternProperties" : {
"[a-zA-Z0-9]+" : {
"type" : "string"
}
- },
- "additionalProperties" : false,
- "type" : "object"
- },
- "InputTemplate" : {
- "type" : "string"
+ }
}
},
"required" : [ "InputTemplate" ]
},
"KinesisParameters" : {
- "additionalProperties" : false,
"type" : "object",
+ "additionalProperties" : false,
"properties" : {
"PartitionKeyPath" : {
"type" : "string"
@@ -140,8 +148,8 @@
"required" : [ "PartitionKeyPath" ]
},
"BatchRetryStrategy" : {
- "additionalProperties" : false,
"type" : "object",
+ "additionalProperties" : false,
"properties" : {
"Attempts" : {
"type" : "integer"
@@ -149,20 +157,12 @@
}
},
"RedshiftDataParameters" : {
- "additionalProperties" : false,
"type" : "object",
+ "additionalProperties" : false,
"properties" : {
"StatementName" : {
"type" : "string"
},
- "Sqls" : {
- "uniqueItems" : false,
- "insertionOrder" : true,
- "type" : "array",
- "items" : {
- "type" : "string"
- }
- },
"Database" : {
"type" : "string"
},
@@ -182,8 +182,8 @@
"required" : [ "Database" ]
},
"Target" : {
- "additionalProperties" : false,
"type" : "object",
+ "additionalProperties" : false,
"properties" : {
"InputPath" : {
"type" : "string"
@@ -237,33 +237,31 @@
"required" : [ "Id", "Arn" ]
},
"PlacementConstraint" : {
- "additionalProperties" : false,
"type" : "object",
+ "additionalProperties" : false,
"properties" : {
- "Type" : {
+ "Expression" : {
"type" : "string"
},
- "Expression" : {
+ "Type" : {
"type" : "string"
}
}
},
"AwsVpcConfiguration" : {
- "additionalProperties" : false,
"type" : "object",
+ "additionalProperties" : false,
"properties" : {
"SecurityGroups" : {
- "uniqueItems" : true,
- "insertionOrder" : true,
"type" : "array",
+ "uniqueItems" : true,
"items" : {
"type" : "string"
}
},
"Subnets" : {
- "uniqueItems" : true,
- "insertionOrder" : true,
"type" : "array",
+ "uniqueItems" : true,
"items" : {
"type" : "string"
}
@@ -275,8 +273,8 @@
"required" : [ "Subnets" ]
},
"SqsParameters" : {
- "additionalProperties" : false,
"type" : "object",
+ "additionalProperties" : false,
"properties" : {
"MessageGroupId" : {
"type" : "string"
@@ -285,13 +283,12 @@
"required" : [ "MessageGroupId" ]
},
"RunCommandTarget" : {
- "additionalProperties" : false,
"type" : "object",
+ "additionalProperties" : false,
"properties" : {
"Values" : {
- "uniqueItems" : true,
- "insertionOrder" : true,
"type" : "array",
+ "uniqueItems" : true,
"items" : {
"type" : "string"
}
@@ -303,8 +300,8 @@
"required" : [ "Values", "Key" ]
},
"EcsParameters" : {
- "additionalProperties" : false,
"type" : "object",
+ "additionalProperties" : false,
"properties" : {
"PlatformVersion" : {
"type" : "string"
@@ -319,9 +316,8 @@
"type" : "boolean"
},
"PlacementConstraints" : {
- "uniqueItems" : true,
- "insertionOrder" : true,
"type" : "array",
+ "uniqueItems" : true,
"items" : {
"$ref" : "#/definitions/PlacementConstraint"
}
@@ -333,17 +329,15 @@
"type" : "integer"
},
"PlacementStrategies" : {
- "uniqueItems" : true,
- "insertionOrder" : true,
"type" : "array",
+ "uniqueItems" : true,
"items" : {
"$ref" : "#/definitions/PlacementStrategy"
}
},
"CapacityProviderStrategy" : {
- "uniqueItems" : true,
- "insertionOrder" : true,
"type" : "array",
+ "uniqueItems" : true,
"items" : {
"$ref" : "#/definitions/CapacityProviderStrategyItem"
}
@@ -355,9 +349,8 @@
"type" : "string"
},
"TagList" : {
- "uniqueItems" : true,
- "insertionOrder" : true,
"type" : "array",
+ "uniqueItems" : true,
"items" : {
"$ref" : "#/definitions/Tag"
}
@@ -372,18 +365,18 @@
"required" : [ "TaskDefinitionArn" ]
},
"BatchParameters" : {
- "additionalProperties" : false,
"type" : "object",
+ "additionalProperties" : false,
"properties" : {
- "ArrayProperties" : {
- "$ref" : "#/definitions/BatchArrayProperties"
- },
"JobName" : {
"type" : "string"
},
"RetryStrategy" : {
"$ref" : "#/definitions/BatchRetryStrategy"
},
+ "ArrayProperties" : {
+ "$ref" : "#/definitions/BatchArrayProperties"
+ },
"JobDefinition" : {
"type" : "string"
}
@@ -391,8 +384,8 @@
"required" : [ "JobName", "JobDefinition" ]
},
"NetworkConfiguration" : {
- "additionalProperties" : false,
"type" : "object",
+ "additionalProperties" : false,
"properties" : {
"AwsVpcConfiguration" : {
"$ref" : "#/definitions/AwsVpcConfiguration"
@@ -400,8 +393,8 @@
}
},
"Tag" : {
- "additionalProperties" : false,
"type" : "object",
+ "additionalProperties" : false,
"properties" : {
"Value" : {
"type" : "string"
@@ -412,13 +405,12 @@
}
},
"SageMakerPipelineParameters" : {
- "additionalProperties" : false,
"type" : "object",
+ "additionalProperties" : false,
"properties" : {
"PipelineParameterList" : {
- "uniqueItems" : true,
- "insertionOrder" : true,
"type" : "array",
+ "uniqueItems" : true,
"items" : {
"$ref" : "#/definitions/SageMakerPipelineParameter"
}
@@ -426,20 +418,20 @@
}
},
"RetryPolicy" : {
- "additionalProperties" : false,
"type" : "object",
+ "additionalProperties" : false,
"properties" : {
- "MaximumRetryAttempts" : {
+ "MaximumEventAgeInSeconds" : {
"type" : "integer"
},
- "MaximumEventAgeInSeconds" : {
+ "MaximumRetryAttempts" : {
"type" : "integer"
}
}
},
"BatchArrayProperties" : {
- "additionalProperties" : false,
"type" : "object",
+ "additionalProperties" : false,
"properties" : {
"Size" : {
"type" : "integer"
@@ -447,8 +439,8 @@
}
},
"SageMakerPipelineParameter" : {
- "additionalProperties" : false,
"type" : "object",
+ "additionalProperties" : false,
"properties" : {
"Value" : {
"type" : "string"
@@ -460,49 +452,7 @@
"required" : [ "Value", "Name" ]
}
},
- "properties" : {
- "EventBusName" : {
- "description" : "The name or ARN of the event bus associated with the rule. If you omit this, the default event bus is used.",
- "type" : "string"
- },
- "EventPattern" : {
- "description" : "The event pattern of the rule. For more information, see Events and Event Patterns in the Amazon EventBridge User Guide.",
- "type" : [ "string", "object" ]
- },
- "ScheduleExpression" : {
- "description" : "The scheduling expression. For example, \"cron(0 20 * * ? *)\", \"rate(5 minutes)\". For more information, see Creating an Amazon EventBridge rule that runs on a schedule.",
- "type" : "string"
- },
- "Description" : {
- "description" : "The description of the rule.",
- "type" : "string"
- },
- "State" : {
- "description" : "The state of the rule.",
- "type" : "string",
- "enum" : [ "DISABLED", "ENABLED" ]
- },
- "Targets" : {
- "uniqueItems" : true,
- "description" : "Adds the specified targets to the specified rule, or updates the targets if they are already associated with the rule.\nTargets are the resources that are invoked when a rule is triggered.",
- "insertionOrder" : false,
- "type" : "array",
- "items" : {
- "$ref" : "#/definitions/Target"
- }
- },
- "Arn" : {
- "description" : "The ARN of the rule, such as arn:aws:events:us-east-2:123456789012:rule/example.",
- "type" : "string"
- },
- "RoleArn" : {
- "description" : "The Amazon Resource Name (ARN) of the role that is used for target invocation.",
- "type" : "string"
- },
- "Name" : {
- "description" : "The name of the rule.",
- "type" : "string"
- }
- },
- "conditionalCreateOnlyProperties" : [ "/properties/EventBusName" ]
+ "createOnlyProperties" : [ "/properties/Name", "/properties/EventBusName" ],
+ "primaryIdentifier" : [ "/properties/Id" ],
+ "readOnlyProperties" : [ "/properties/Id", "/properties/Arn" ]
}
\ No newline at end of file
diff --git a/aws-cloudformation-schema/aws-gamelift-fleet.json b/aws-cloudformation-schema/aws-gamelift-fleet.json
index baabfdef41..e11febf50f 100644
--- a/aws-cloudformation-schema/aws-gamelift-fleet.json
+++ b/aws-cloudformation-schema/aws-gamelift-fleet.json
@@ -1,102 +1,82 @@
{
"$schema" : "https://schema.cloudformation.us-east-1.amazonaws.com/provider.definition.schema.v1.json",
- "deprecatedProperties" : [ "/properties/LogPaths", "/properties/ServerLaunchParameters", "/properties/ServerLaunchPath" ],
- "taggable" : true,
"typeName" : "AWS::GameLift::Fleet",
- "readOnlyProperties" : [ "/properties/FleetId" ],
"description" : "The AWS::GameLift::Fleet resource creates an Amazon GameLift (GameLift) fleet to host game servers. A fleet is a set of EC2 or Anywhere instances, each of which can host multiple game sessions.",
- "createOnlyProperties" : [ "/properties/BuildId", "/properties/CertificateConfiguration", "/properties/EC2InstanceType", "/properties/FleetType", "/properties/InstanceRoleARN", "/properties/LogPaths", "/properties/PeerVpcAwsAccountId", "/properties/PeerVpcId", "/properties/ScriptId", "/properties/ServerLaunchParameters", "/properties/ServerLaunchPath", "/properties/CertificateType", "/properties/ComputeType" ],
- "primaryIdentifier" : [ "/properties/FleetId" ],
- "required" : [ "Name" ],
"sourceUrl" : "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-gamelift.git",
- "handlers" : {
- "read" : {
- "permissions" : [ "gamelift:DescribeFleetAttributes", "gamelift:DescribeFleetLocationAttributes", "gamelift:DescribeFleetCapacity", "gamelift:DescribeFleetPortSettings", "gamelift:DescribeFleetUtilization", "gamelift:DescribeRuntimeConfiguration", "gamelift:DescribeEC2InstanceLimits", "gamelift:DescribeFleetEvents" ]
- },
- "create" : {
- "permissions" : [ "gamelift:CreateFleet", "gamelift:DescribeFleetAttributes", "gamelift:DescribeFleetLocationAttributes" ]
- },
- "update" : {
- "permissions" : [ "gamelift:UpdateFleetAttributes", "gamelift:CreateFleetLocations", "gamelift:DeleteFleetLocations", "gamelift:UpdateFleetCapacity", "gamelift:UpdateFleetPortSettings", "gamelift:UpdateRuntimeConfiguration", "gamelift:DescribeFleetLocationCapacity", "gamelift:DescribeFleetPortSettings", "gamelift:DescribeFleetLocationAttributes" ]
- },
- "list" : {
- "permissions" : [ "gamelift:ListFleets" ]
- },
- "delete" : {
- "permissions" : [ "gamelift:DeleteFleet", "gamelift:DescribeFleetLocationCapacity" ]
- }
- },
- "additionalProperties" : false,
"definitions" : {
- "ServerProcess" : {
- "description" : "A set of instructions for launching server processes on each instance in a fleet. Each instruction set identifies the location of the server executable, optional launch parameters, and the number of server processes with this configuration to maintain concurrently on the instance. Server process configurations make up a fleet's RuntimeConfiguration.",
- "additionalProperties" : false,
- "type" : "object",
- "properties" : {
- "ConcurrentExecutions" : {
- "description" : "The number of server processes that use this configuration to run concurrently on an instance.",
- "type" : "integer",
- "minimum" : 1
- },
- "Parameters" : {
- "minLength" : 1,
- "description" : "An optional list of parameters to pass to the server executable or Realtime script on launch.",
- "type" : "string",
- "maxLength" : 1024
- },
- "LaunchPath" : {
- "minLength" : 1,
- "pattern" : "^([Cc]:\\\\game\\S+|/local/game/\\S+)",
- "description" : "The location of the server executable in a custom game build or the name of the Realtime script file that contains the Init() function. Game builds and Realtime scripts are installed on instances at the root:\n\nWindows (for custom game builds only): C:\\game. Example: \"C:\\game\\MyGame\\server.exe\"\n\nLinux: /local/game. Examples: \"/local/game/MyGame/server.exe\" or \"/local/game/MyRealtimeScript.js\"",
- "type" : "string",
- "maxLength" : 1024
- }
- },
- "required" : [ "ConcurrentExecutions", "LaunchPath" ]
- },
"AnywhereConfiguration" : {
"description" : "Configuration for Anywhere fleet.",
- "additionalProperties" : false,
"properties" : {
"Cost" : {
- "minLength" : 1,
- "pattern" : "^\\d{1,5}(?:\\.\\d{1,5})?$",
"description" : "Cost of compute can be specified on Anywhere Fleets to prioritize placement across Queue destinations based on Cost.",
"type" : "string",
+ "pattern" : "^\\d{1,5}(?:\\.\\d{1,5})?$",
+ "minLength" : 1,
"maxLength" : 11
}
},
+ "additionalProperties" : false,
"required" : [ "Cost" ]
},
- "ResourceCreationLimitPolicy" : {
- "description" : "A policy that limits the number of game sessions a player can create on the same fleet. This optional policy gives game owners control over how players can consume available game server resources. A resource creation policy makes the following statement: \"An individual player can create a maximum number of new game sessions within a specified time period\".\n\nThe policy is evaluated when a player tries to create a new game session. For example, assume you have a policy of 10 new game sessions and a time period of 60 minutes. On receiving a CreateGameSession request, Amazon GameLift checks that the player (identified by CreatorId) has created fewer than 10 game sessions in the past 60 minutes.",
+ "CertificateConfiguration" : {
+ "description" : "Information about the use of a TLS/SSL certificate for a fleet. TLS certificate generation is enabled at the fleet level, with one certificate generated for the fleet. When this feature is enabled, the certificate can be retrieved using the GameLift Server SDK call GetInstanceCertificate. All instances in a fleet share the same certificate.",
+ "type" : "object",
+ "properties" : {
+ "CertificateType" : {
+ "type" : "string",
+ "enum" : [ "DISABLED", "GENERATED" ]
+ }
+ },
"additionalProperties" : false,
+ "required" : [ "CertificateType" ]
+ },
+ "IpPermission" : {
+ "description" : "A range of IP addresses and port settings that allow inbound traffic to connect to server processes on an Amazon GameLift hosting resource. New game sessions that are started on the fleet are assigned an IP address/port number combination, which must fall into the fleet's allowed ranges. For fleets created with a custom game server, the ranges reflect the server's game session assignments. For Realtime Servers fleets, Amazon GameLift automatically opens two port ranges, one for TCP messaging and one for UDP, for use by the Realtime servers.",
"type" : "object",
"properties" : {
- "PolicyPeriodInMinutes" : {
- "description" : "The time span used in evaluating the resource creation limit policy.",
+ "FromPort" : {
+ "description" : "A starting value for a range of allowed port numbers.",
"type" : "integer",
- "minimum" : 0
+ "minimum" : 1,
+ "maximum" : 60000
},
- "NewGameSessionsPerCreator" : {
- "description" : "The maximum number of game sessions that an individual can create during the policy period.",
+ "IpRange" : {
+ "description" : "A range of allowed IP addresses. This value must be expressed in CIDR notation. Example: \"000.000.000.000/[subnet mask]\" or optionally the shortened version \"0.0.0.0/[subnet mask]\".",
+ "type" : "string",
+ "pattern" : "(^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(/([0-9]|[1-2][0-9]|3[0-2]))$)"
+ },
+ "Protocol" : {
+ "description" : "The network communication protocol used by the fleet.",
+ "type" : "string",
+ "enum" : [ "TCP", "UDP" ]
+ },
+ "ToPort" : {
+ "description" : "An ending value for a range of allowed port numbers. Port numbers are end-inclusive. This value must be higher than FromPort.",
"type" : "integer",
- "minimum" : 0
+ "minimum" : 1,
+ "maximum" : 60000
}
- }
+ },
+ "additionalProperties" : false,
+ "required" : [ "FromPort", "IpRange", "Protocol", "ToPort" ]
+ },
+ "Location" : {
+ "type" : "string",
+ "minLength" : 1,
+ "maxLength" : 64,
+ "pattern" : "^[A-Za-z0-9\\-]+"
},
"LocationCapacity" : {
"description" : "Current resource capacity settings in a specified fleet or location. The location value might refer to a fleet's remote location or its home Region.",
- "additionalProperties" : false,
"type" : "object",
"properties" : {
- "MinSize" : {
- "description" : "The minimum value allowed for the fleet's instance count for a location. When creating a new fleet, GameLift automatically sets this value to \"0\". After the fleet is active, you can change this value.",
+ "DesiredEC2Instances" : {
+ "description" : "The number of EC2 instances you want to maintain in the specified fleet location. This value must fall between the minimum and maximum size limits.",
"type" : "integer",
"minimum" : 0
},
- "DesiredEC2Instances" : {
- "description" : "The number of EC2 instances you want to maintain in the specified fleet location. This value must fall between the minimum and maximum size limits.",
+ "MinSize" : {
+ "description" : "The minimum value allowed for the fleet's instance count for a location. When creating a new fleet, GameLift automatically sets this value to \"0\". After the fleet is active, you can change this value.",
"type" : "integer",
"minimum" : 0
},
@@ -106,244 +86,269 @@
"minimum" : 0
}
},
+ "additionalProperties" : false,
"required" : [ "DesiredEC2Instances", "MinSize", "MaxSize" ]
},
- "CertificateConfiguration" : {
- "description" : "Information about the use of a TLS/SSL certificate for a fleet. TLS certificate generation is enabled at the fleet level, with one certificate generated for the fleet. When this feature is enabled, the certificate can be retrieved using the GameLift Server SDK call GetInstanceCertificate. All instances in a fleet share the same certificate.",
- "additionalProperties" : false,
+ "LocationConfiguration" : {
+ "description" : "A remote location where a multi-location fleet can deploy EC2 instances for game hosting.",
"type" : "object",
"properties" : {
- "CertificateType" : {
- "type" : "string",
- "enum" : [ "DISABLED", "GENERATED" ]
+ "Location" : {
+ "$ref" : "#/definitions/Location"
+ },
+ "LocationCapacity" : {
+ "$ref" : "#/definitions/LocationCapacity"
}
},
- "required" : [ "CertificateType" ]
- },
- "IpPermission" : {
- "description" : "A range of IP addresses and port settings that allow inbound traffic to connect to server processes on an Amazon GameLift hosting resource. New game sessions that are started on the fleet are assigned an IP address/port number combination, which must fall into the fleet's allowed ranges. For fleets created with a custom game server, the ranges reflect the server's game session assignments. For Realtime Servers fleets, Amazon GameLift automatically opens two port ranges, one for TCP messaging and one for UDP, for use by the Realtime servers.",
"additionalProperties" : false,
+ "required" : [ "Location" ]
+ },
+ "ResourceCreationLimitPolicy" : {
+ "description" : "A policy that limits the number of game sessions a player can create on the same fleet. This optional policy gives game owners control over how players can consume available game server resources. A resource creation policy makes the following statement: \"An individual player can create a maximum number of new game sessions within a specified time period\".\n\nThe policy is evaluated when a player tries to create a new game session. For example, assume you have a policy of 10 new game sessions and a time period of 60 minutes. On receiving a CreateGameSession request, Amazon GameLift checks that the player (identified by CreatorId) has created fewer than 10 game sessions in the past 60 minutes.",
"type" : "object",
"properties" : {
- "IpRange" : {
- "pattern" : "(^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(/([0-9]|[1-2][0-9]|3[0-2]))$)",
- "description" : "A range of allowed IP addresses. This value must be expressed in CIDR notation. Example: \"000.000.000.000/[subnet mask]\" or optionally the shortened version \"0.0.0.0/[subnet mask]\".",
- "type" : "string"
- },
- "FromPort" : {
- "description" : "A starting value for a range of allowed port numbers.",
- "maximum" : 60000,
+ "NewGameSessionsPerCreator" : {
+ "description" : "The maximum number of game sessions that an individual can create during the policy period.",
"type" : "integer",
- "minimum" : 1
+ "minimum" : 0
},
- "ToPort" : {
- "description" : "An ending value for a range of allowed port numbers. Port numbers are end-inclusive. This value must be higher than FromPort.",
- "maximum" : 60000,
+ "PolicyPeriodInMinutes" : {
+ "description" : "The time span used in evaluating the resource creation limit policy.",
"type" : "integer",
- "minimum" : 1
- },
- "Protocol" : {
- "description" : "The network communication protocol used by the fleet.",
- "type" : "string",
- "enum" : [ "TCP", "UDP" ]
+ "minimum" : 0
}
},
- "required" : [ "FromPort", "IpRange", "Protocol", "ToPort" ]
+ "additionalProperties" : false
},
"RuntimeConfiguration" : {
"description" : "A collection of server process configurations that describe the processes to run on each instance in a fleet. All fleets must have a runtime configuration. Each instance in the fleet maintains server processes as specified in the runtime configuration, launching new ones as existing processes end. Each instance regularly checks for an updated runtime configuration makes adjustments as called for.\n\nThe runtime configuration enables the instances in a fleet to run multiple processes simultaneously. Potential scenarios are as follows: (1) Run multiple processes of a single game server executable to maximize usage of your hosting resources. (2) Run one or more processes of different executables, such as your game server and a metrics tracking program. (3) Run multiple processes of a single game server but with different launch parameters, for example to run one process on each instance in debug mode.\n\nAn Amazon GameLift instance is limited to 50 processes running simultaneously. A runtime configuration must specify fewer than this limit. To calculate the total number of processes specified in a runtime configuration, add the values of the ConcurrentExecutions parameter for each ServerProcess object in the runtime configuration.",
- "additionalProperties" : false,
"type" : "object",
"properties" : {
- "ServerProcesses" : {
- "maxItems" : 50,
- "description" : "A collection of server process configurations that describe which server processes to run on each instance in a fleet.",
- "insertionOrder" : false,
- "type" : "array",
- "items" : {
- "$ref" : "#/definitions/ServerProcess"
- }
+ "GameSessionActivationTimeoutSeconds" : {
+ "description" : "The maximum amount of time (in seconds) that a game session can remain in status ACTIVATING. If the game session is not active before the timeout, activation is terminated and the game session status is changed to TERMINATED.",
+ "type" : "integer",
+ "minimum" : 1,
+ "maximum" : 600
},
"MaxConcurrentGameSessionActivations" : {
"description" : "The maximum number of game sessions with status ACTIVATING to allow on an instance simultaneously. This setting limits the amount of instance resources that can be used for new game activations at any one time.",
- "maximum" : 2147483647,
"type" : "integer",
- "minimum" : 1
+ "minimum" : 1,
+ "maximum" : 2147483647
},
- "GameSessionActivationTimeoutSeconds" : {
- "description" : "The maximum amount of time (in seconds) that a game session can remain in status ACTIVATING. If the game session is not active before the timeout, activation is terminated and the game session status is changed to TERMINATED.",
- "maximum" : 600,
- "type" : "integer",
- "minimum" : 1
+ "ServerProcesses" : {
+ "description" : "A collection of server process configurations that describe which server processes to run on each instance in a fleet.",
+ "type" : "array",
+ "maxItems" : 50,
+ "items" : {
+ "$ref" : "#/definitions/ServerProcess"
+ },
+ "insertionOrder" : false
}
- }
- },
- "Location" : {
- "minLength" : 1,
- "pattern" : "^[A-Za-z0-9\\-]+",
- "type" : "string",
- "maxLength" : 64
+ },
+ "additionalProperties" : false
},
- "LocationConfiguration" : {
- "description" : "A remote location where a multi-location fleet can deploy EC2 instances for game hosting.",
- "additionalProperties" : false,
+ "ServerProcess" : {
+ "description" : "A set of instructions for launching server processes on each instance in a fleet. Each instruction set identifies the location of the server executable, optional launch parameters, and the number of server processes with this configuration to maintain concurrently on the instance. Server process configurations make up a fleet's RuntimeConfiguration.",
"type" : "object",
"properties" : {
- "LocationCapacity" : {
- "$ref" : "#/definitions/LocationCapacity"
+ "ConcurrentExecutions" : {
+ "description" : "The number of server processes that use this configuration to run concurrently on an instance.",
+ "type" : "integer",
+ "minimum" : 1
},
- "Location" : {
- "$ref" : "#/definitions/Location"
+ "LaunchPath" : {
+ "description" : "The location of the server executable in a custom game build or the name of the Realtime script file that contains the Init() function. Game builds and Realtime scripts are installed on instances at the root:\n\nWindows (for custom game builds only): C:\\game. Example: \"C:\\game\\MyGame\\server.exe\"\n\nLinux: /local/game. Examples: \"/local/game/MyGame/server.exe\" or \"/local/game/MyRealtimeScript.js\"",
+ "type" : "string",
+ "minLength" : 1,
+ "maxLength" : 1024,
+ "pattern" : "^([Cc]:\\\\game\\S+|/local/game/\\S+)"
+ },
+ "Parameters" : {
+ "description" : "An optional list of parameters to pass to the server executable or Realtime script on launch.",
+ "type" : "string",
+ "minLength" : 1,
+ "maxLength" : 1024
}
},
- "required" : [ "Location" ]
+ "additionalProperties" : false,
+ "required" : [ "ConcurrentExecutions", "LaunchPath" ]
}
},
"properties" : {
- "Description" : {
- "minLength" : 1,
- "description" : "A human-readable description of a fleet.",
- "type" : "string",
- "maxLength" : 1024
- },
- "PeerVpcId" : {
- "minLength" : 1,
- "pattern" : "^vpc-\\S+",
- "description" : "A unique identifier for a VPC with resources to be accessed by your Amazon GameLift fleet. The VPC must be in the same Region as your fleet. To look up a VPC ID, use the VPC Dashboard in the AWS Management Console.",
- "type" : "string",
- "maxLength" : 1024
+ "AnywhereConfiguration" : {
+ "description" : "Configuration for Anywhere fleet.",
+ "$ref" : "#/definitions/AnywhereConfiguration"
},
- "EC2InboundPermissions" : {
- "maxItems" : 50,
- "description" : "A range of IP addresses and port settings that allow inbound traffic to connect to server processes on an Amazon GameLift server.",
- "insertionOrder" : false,
- "type" : "array",
- "items" : {
- "$ref" : "#/definitions/IpPermission"
- }
+ "CertificateConfiguration" : {
+ "description" : "Indicates whether to generate a TLS/SSL certificate for the new fleet. TLS certificates are used for encrypting traffic between game clients and game servers running on GameLift. If this parameter is not set, certificate generation is disabled. This fleet setting cannot be changed once the fleet is created.",
+ "$ref" : "#/definitions/CertificateConfiguration"
},
"ComputeType" : {
"description" : "ComputeType to differentiate EC2 hardware managed by GameLift and Anywhere hardware managed by the customer.",
"type" : "string",
"enum" : [ "EC2", "ANYWHERE" ]
},
- "Name" : {
- "minLength" : 1,
- "description" : "A descriptive label that is associated with a fleet. Fleet names do not need to be unique.",
+ "Description" : {
+ "description" : "A human-readable description of a fleet.",
"type" : "string",
- "maxLength" : 1024
- },
- "AnywhereConfiguration" : {
- "description" : "Configuration for Anywhere fleet.",
- "$ref" : "#/definitions/AnywhereConfiguration"
- },
- "InstanceRoleARN" : {
"minLength" : 1,
- "pattern" : "^arn:aws(-.*)?:[a-z-]+:(([a-z]+-)+[0-9])?:([0-9]{12})?:[^.]+$",
- "description" : "A unique identifier for an AWS IAM role that manages access to your AWS services. With an instance role ARN set, any application that runs on an instance in this fleet can assume the role, including install scripts, server processes, and daemons (background processes). Create a role or look up a role's ARN from the IAM dashboard in the AWS Management Console.",
- "type" : "string"
- },
- "FleetId" : {
- "pattern" : "^fleet-\\S+",
- "description" : "Unique fleet ID",
- "type" : "string"
- },
- "CertificateConfiguration" : {
- "description" : "Indicates whether to generate a TLS/SSL certificate for the new fleet. TLS certificates are used for encrypting traffic between game clients and game servers running on GameLift. If this parameter is not set, certificate generation is disabled. This fleet setting cannot be changed once the fleet is created.",
- "$ref" : "#/definitions/CertificateConfiguration"
+ "maxLength" : 1024
},
"DesiredEC2Instances" : {
"description" : "[DEPRECATED] The number of EC2 instances that you want this fleet to host. When creating a new fleet, GameLift automatically sets this value to \"1\" and initiates a single instance. Once the fleet is active, update this value to trigger GameLift to add or remove instances from the fleet.",
"type" : "integer",
"minimum" : 0
},
- "ServerLaunchParameters" : {
- "minLength" : 1,
- "description" : "This parameter is no longer used but is retained for backward compatibility. Instead, specify server launch parameters in the RuntimeConfiguration parameter. A request must specify either a runtime configuration or values for both ServerLaunchParameters and ServerLaunchPath.",
+ "EC2InboundPermissions" : {
+ "description" : "A range of IP addresses and port settings that allow inbound traffic to connect to server processes on an Amazon GameLift server.",
+ "type" : "array",
+ "maxItems" : 50,
+ "items" : {
+ "$ref" : "#/definitions/IpPermission"
+ },
+ "insertionOrder" : false
+ },
+ "EC2InstanceType" : {
+ "description" : "The name of an EC2 instance type that is supported in Amazon GameLift. A fleet instance type determines the computing resources of each instance in the fleet, including CPU, memory, storage, and networking capacity. Amazon GameLift supports the following EC2 instance types. See Amazon EC2 Instance Types for detailed descriptions.",
"type" : "string",
- "maxLength" : 1024
+ "pattern" : "^.*..*$"
},
"FleetType" : {
"description" : "Indicates whether to use On-Demand instances or Spot instances for this fleet. If empty, the default is ON_DEMAND. Both categories of instances use identical hardware and configurations based on the instance type selected for this fleet.",
"type" : "string",
"enum" : [ "ON_DEMAND", "SPOT" ]
},
+ "InstanceRoleARN" : {
+ "description" : "A unique identifier for an AWS IAM role that manages access to your AWS services. With an instance role ARN set, any application that runs on an instance in this fleet can assume the role, including install scripts, server processes, and daemons (background processes). Create a role or look up a role's ARN from the IAM dashboard in the AWS Management Console.",
+ "type" : "string",
+ "minLength" : 1,
+ "pattern" : "^arn:aws(-.*)?:[a-z-]+:(([a-z]+-)+[0-9])?:([0-9]{12})?:[^.]+$"
+ },
+ "InstanceRoleCredentialsProvider" : {
+ "description" : "Credentials provider implementation that loads credentials from the Amazon EC2 Instance Metadata Service.",
+ "type" : "string",
+ "enum" : [ "SHARED_CREDENTIAL_FILE" ]
+ },
"Locations" : {
+ "type" : "array",
"minItems" : 1,
"maxItems" : 100,
- "insertionOrder" : false,
- "type" : "array",
"items" : {
"$ref" : "#/definitions/LocationConfiguration"
- }
- },
- "NewGameSessionProtectionPolicy" : {
- "description" : "A game session protection policy to apply to all game sessions hosted on instances in this fleet. When protected, active game sessions cannot be terminated during a scale-down event. If this parameter is not set, instances in this fleet default to no protection. You can change a fleet's protection policy to affect future game sessions on the fleet. You can also set protection for individual game sessions.",
- "type" : "string",
- "enum" : [ "FullProtection", "NoProtection" ]
+ },
+ "insertionOrder" : false
},
- "ScriptId" : {
- "pattern" : "^script-\\S+|^arn:.*:script/script-\\S+",
- "description" : "A unique identifier for a Realtime script to be deployed on a new Realtime Servers fleet. The script must have been successfully uploaded to Amazon GameLift. This fleet setting cannot be changed once the fleet is created.\n\nNote: It is not currently possible to use the !Ref command to reference a script created with a CloudFormation template for the fleet property ScriptId. Instead, use Fn::GetAtt Script.Arn or Fn::GetAtt Script.Id to retrieve either of these properties as input for ScriptId. Alternatively, enter a ScriptId string manually.",
- "type" : "string"
+ "LogPaths" : {
+ "description" : "This parameter is no longer used. When hosting a custom game build, specify where Amazon GameLift should store log files using the Amazon GameLift server API call ProcessReady()",
+ "type" : "array",
+ "items" : {
+ "type" : "string"
+ },
+ "insertionOrder" : false
},
"MaxSize" : {
"description" : "[DEPRECATED] The maximum value that is allowed for the fleet's instance count. When creating a new fleet, GameLift automatically sets this value to \"1\". Once the fleet is active, you can change this value.",
"type" : "integer",
"minimum" : 0
},
- "RuntimeConfiguration" : {
- "description" : "Instructions for launching server processes on each instance in the fleet. Server processes run either a custom game build executable or a Realtime script. The runtime configuration defines the server executables or launch script file, launch parameters, and the number of processes to run concurrently on each instance. When creating a fleet, the runtime configuration must have at least one server process configuration; otherwise the request fails with an invalid request exception.\n\nThis parameter is required unless the parameters ServerLaunchPath and ServerLaunchParameters are defined. Runtime configuration has replaced these parameters, but fleets that use them will continue to work.",
- "$ref" : "#/definitions/RuntimeConfiguration"
- },
- "LogPaths" : {
- "description" : "This parameter is no longer used. When hosting a custom game build, specify where Amazon GameLift should store log files using the Amazon GameLift server API call ProcessReady()",
- "insertionOrder" : false,
+ "MetricGroups" : {
+ "description" : "The name of an Amazon CloudWatch metric group. A metric group aggregates the metrics for all fleets in the group. Specify a string containing the metric group name. You can use an existing name or use a new name to create a new metric group. Currently, this parameter can have only one string.",
"type" : "array",
+ "maxItems" : 1,
"items" : {
"type" : "string"
- }
- },
- "ServerLaunchPath" : {
- "minLength" : 1,
- "description" : "This parameter is no longer used. Instead, specify a server launch path using the RuntimeConfiguration parameter. Requests that specify a server launch path and launch parameters instead of a runtime configuration will continue to work.",
- "type" : "string",
- "maxLength" : 1024
+ },
+ "insertionOrder" : false
},
"MinSize" : {
"description" : "[DEPRECATED] The minimum value allowed for the fleet's instance count. When creating a new fleet, GameLift automatically sets this value to \"0\". After the fleet is active, you can change this value.",
"type" : "integer",
"minimum" : 0
},
- "PeerVpcAwsAccountId" : {
- "minLength" : 1,
- "pattern" : "^[0-9]{12}$",
- "description" : "A unique identifier for the AWS account with the VPC that you want to peer your Amazon GameLift fleet with. You can find your account ID in the AWS Management Console under account settings.",
+ "Name" : {
+ "description" : "A descriptive label that is associated with a fleet. Fleet names do not need to be unique.",
"type" : "string",
+ "minLength" : 1,
"maxLength" : 1024
},
- "MetricGroups" : {
- "maxItems" : 1,
- "description" : "The name of an Amazon CloudWatch metric group. A metric group aggregates the metrics for all fleets in the group. Specify a string containing the metric group name. You can use an existing name or use a new name to create a new metric group. Currently, this parameter can have only one string.",
- "insertionOrder" : false,
- "type" : "array",
- "items" : {
- "type" : "string"
- }
+ "NewGameSessionProtectionPolicy" : {
+ "description" : "A game session protection policy to apply to all game sessions hosted on instances in this fleet. When protected, active game sessions cannot be terminated during a scale-down event. If this parameter is not set, instances in this fleet default to no protection. You can change a fleet's protection policy to affect future game sessions on the fleet. You can also set protection for individual game sessions.",
+ "type" : "string",
+ "enum" : [ "FullProtection", "NoProtection" ]
},
- "BuildId" : {
- "pattern" : "^build-\\S+|^arn:.*:build/build-\\S+",
- "description" : "A unique identifier for a build to be deployed on the new fleet. If you are deploying the fleet with a custom game build, you must specify this property. The build must have been successfully uploaded to Amazon GameLift and be in a READY status. This fleet setting cannot be changed once the fleet is created.",
- "type" : "string"
+ "PeerVpcAwsAccountId" : {
+ "description" : "A unique identifier for the AWS account with the VPC that you want to peer your Amazon GameLift fleet with. You can find your account ID in the AWS Management Console under account settings.",
+ "type" : "string",
+ "minLength" : 1,
+ "maxLength" : 1024,
+ "pattern" : "^[0-9]{12}$"
+ },
+ "PeerVpcId" : {
+ "description" : "A unique identifier for a VPC with resources to be accessed by your Amazon GameLift fleet. The VPC must be in the same Region as your fleet. To look up a VPC ID, use the VPC Dashboard in the AWS Management Console.",
+ "type" : "string",
+ "minLength" : 1,
+ "maxLength" : 1024,
+ "pattern" : "^vpc-\\S+"
},
"ResourceCreationLimitPolicy" : {
"description" : "A policy that limits the number of game sessions an individual player can create over a span of time for this fleet.",
"$ref" : "#/definitions/ResourceCreationLimitPolicy"
},
- "EC2InstanceType" : {
- "pattern" : "^.*..*$",
- "description" : "The name of an EC2 instance type that is supported in Amazon GameLift. A fleet instance type determines the computing resources of each instance in the fleet, including CPU, memory, storage, and networking capacity. Amazon GameLift supports the following EC2 instance types. See Amazon EC2 Instance Types for detailed descriptions.",
- "type" : "string"
+ "FleetId" : {
+ "description" : "Unique fleet ID",
+ "type" : "string",
+ "pattern" : "^fleet-\\S+"
+ },
+ "BuildId" : {
+ "description" : "A unique identifier for a build to be deployed on the new fleet. If you are deploying the fleet with a custom game build, you must specify this property. The build must have been successfully uploaded to Amazon GameLift and be in a READY status. This fleet setting cannot be changed once the fleet is created.",
+ "type" : "string",
+ "pattern" : "^build-\\S+|^arn:.*:build/build-\\S+"
+ },
+ "ScriptId" : {
+ "description" : "A unique identifier for a Realtime script to be deployed on a new Realtime Servers fleet. The script must have been successfully uploaded to Amazon GameLift. This fleet setting cannot be changed once the fleet is created.\n\nNote: It is not currently possible to use the !Ref command to reference a script created with a CloudFormation template for the fleet property ScriptId. Instead, use Fn::GetAtt Script.Arn or Fn::GetAtt Script.Id to retrieve either of these properties as input for ScriptId. Alternatively, enter a ScriptId string manually.",
+ "type" : "string",
+ "pattern" : "^script-\\S+|^arn:.*:script/script-\\S+"
+ },
+ "RuntimeConfiguration" : {
+ "description" : "Instructions for launching server processes on each instance in the fleet. Server processes run either a custom game build executable or a Realtime script. The runtime configuration defines the server executables or launch script file, launch parameters, and the number of processes to run concurrently on each instance. When creating a fleet, the runtime configuration must have at least one server process configuration; otherwise the request fails with an invalid request exception.\n\nThis parameter is required unless the parameters ServerLaunchPath and ServerLaunchParameters are defined. Runtime configuration has replaced these parameters, but fleets that use them will continue to work.",
+ "$ref" : "#/definitions/RuntimeConfiguration"
+ },
+ "ServerLaunchParameters" : {
+ "description" : "This parameter is no longer used but is retained for backward compatibility. Instead, specify server launch parameters in the RuntimeConfiguration parameter. A request must specify either a runtime configuration or values for both ServerLaunchParameters and ServerLaunchPath.",
+ "type" : "string",
+ "minLength" : 1,
+ "maxLength" : 1024
+ },
+ "ServerLaunchPath" : {
+ "description" : "This parameter is no longer used. Instead, specify a server launch path using the RuntimeConfiguration parameter. Requests that specify a server launch path and launch parameters instead of a runtime configuration will continue to work.",
+ "type" : "string",
+ "minLength" : 1,
+ "maxLength" : 1024
}
- }
+ },
+ "required" : [ "Name" ],
+ "additionalProperties" : false,
+ "createOnlyProperties" : [ "/properties/BuildId", "/properties/CertificateConfiguration", "/properties/EC2InstanceType", "/properties/FleetType", "/properties/InstanceRoleARN", "/properties/InstanceRoleCredentialsProvider", "/properties/LogPaths", "/properties/PeerVpcAwsAccountId", "/properties/PeerVpcId", "/properties/ScriptId", "/properties/ServerLaunchParameters", "/properties/ServerLaunchPath", "/properties/CertificateType", "/properties/ComputeType" ],
+ "deprecatedProperties" : [ "/properties/LogPaths", "/properties/ServerLaunchParameters", "/properties/ServerLaunchPath" ],
+ "readOnlyProperties" : [ "/properties/FleetId" ],
+ "primaryIdentifier" : [ "/properties/FleetId" ],
+ "handlers" : {
+ "create" : {
+ "permissions" : [ "gamelift:CreateFleet", "gamelift:DescribeFleetAttributes", "gamelift:DescribeFleetLocationAttributes" ]
+ },
+ "read" : {
+ "permissions" : [ "gamelift:DescribeFleetAttributes", "gamelift:DescribeFleetLocationAttributes", "gamelift:DescribeFleetCapacity", "gamelift:DescribeFleetPortSettings", "gamelift:DescribeFleetUtilization", "gamelift:DescribeRuntimeConfiguration", "gamelift:DescribeEC2InstanceLimits", "gamelift:DescribeFleetEvents" ]
+ },
+ "update" : {
+ "permissions" : [ "gamelift:UpdateFleetAttributes", "gamelift:CreateFleetLocations", "gamelift:DeleteFleetLocations", "gamelift:UpdateFleetCapacity", "gamelift:UpdateFleetPortSettings", "gamelift:UpdateRuntimeConfiguration", "gamelift:DescribeFleetLocationCapacity", "gamelift:DescribeFleetPortSettings", "gamelift:DescribeFleetLocationAttributes" ]
+ },
+ "delete" : {
+ "permissions" : [ "gamelift:DeleteFleet", "gamelift:DescribeFleetLocationCapacity" ]
+ },
+ "list" : {
+ "permissions" : [ "gamelift:ListFleets" ]
+ }
+ },
+ "taggable" : true
}
\ No newline at end of file
diff --git a/aws-cloudformation-schema/aws-iam-group.json b/aws-cloudformation-schema/aws-iam-group.json
index eab494f917..4466d3542d 100644
--- a/aws-cloudformation-schema/aws-iam-group.json
+++ b/aws-cloudformation-schema/aws-iam-group.json
@@ -1,51 +1,81 @@
{
"typeName" : "AWS::IAM::Group",
"description" : "Resource Type definition for AWS::IAM::Group",
- "additionalProperties" : false,
+ "sourceUrl" : "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-iam.git",
+ "definitions" : {
+ "Policy" : {
+ "type" : "object",
+ "additionalProperties" : false,
+ "properties" : {
+ "PolicyDocument" : {
+ "description" : "The policy document.",
+ "type" : [ "string", "object" ]
+ },
+ "PolicyName" : {
+ "description" : "The friendly name (not ARN) identifying the policy.",
+ "type" : "string"
+ }
+ },
+ "required" : [ "PolicyDocument", "PolicyName" ]
+ }
+ },
"properties" : {
- "Id" : {
- "type" : "string"
- },
"Arn" : {
+ "description" : "The Arn of the group to create",
"type" : "string"
},
"GroupName" : {
+ "description" : "The name of the group to create",
"type" : "string"
},
"ManagedPolicyArns" : {
+ "description" : "A list of Amazon Resource Names (ARNs) of the IAM managed policies that you want to attach to the role. ",
"type" : "array",
"uniqueItems" : true,
+ "insertionOrder" : false,
"items" : {
"type" : "string"
}
},
"Path" : {
+ "description" : "The path to the group",
"type" : "string"
},
"Policies" : {
+ "description" : "Adds or updates an inline policy document that is embedded in the specified IAM group",
"type" : "array",
- "uniqueItems" : true,
+ "uniqueItems" : false,
+ "insertionOrder" : false,
"items" : {
"$ref" : "#/definitions/Policy"
}
}
},
- "definitions" : {
- "Policy" : {
- "type" : "object",
- "additionalProperties" : false,
- "properties" : {
- "PolicyDocument" : {
- "type" : "object"
- },
- "PolicyName" : {
- "type" : "string"
- }
- },
- "required" : [ "PolicyDocument", "PolicyName" ]
- }
+ "tagging" : {
+ "taggable" : false,
+ "tagOnCreate" : false,
+ "tagUpdatable" : false,
+ "cloudFormationSystemTags" : false
},
- "readOnlyProperties" : [ "/properties/Arn", "/properties/Id" ],
+ "additionalProperties" : false,
+ "readOnlyProperties" : [ "/properties/Arn" ],
"createOnlyProperties" : [ "/properties/GroupName" ],
- "primaryIdentifier" : [ "/properties/Id" ]
+ "primaryIdentifier" : [ "/properties/GroupName" ],
+ "handlers" : {
+ "create" : {
+ "permissions" : [ "iam:CreateGroup", "iam:PutGroupPolicy", "iam:AttachGroupPolicy", "iam:GetGroupPolicy", "iam:GetGroup" ]
+ },
+ "read" : {
+ "permissions" : [ "iam:GetGroup", "iam:ListGroupPolicies", "iam:GetGroupPolicy", "iam:ListAttachedGroupPolicies" ]
+ },
+ "update" : {
+ "permissions" : [ "iam:GetGroup", "iam:UpdateGroup", "iam:DetachGroupPolicy", "iam:AttachGroupPolicy", "iam:DeleteGroupPolicy", "iam:PutGroupPolicy", "iam:GetGroupPolicy" ]
+ },
+ "delete" : {
+ "permissions" : [ "iam:GetGroup", "iam:DeleteGroup", "iam:ListAttachedGroupPolicies", "iam:ListGroupPolicies", "iam:DetachGroupPolicy", "iam:DeleteGroupPolicy", "iam:GetGroupPolicy" ]
+ },
+ "list" : {
+ "permissions" : [ "iam:ListGroups" ]
+ }
+ }
}
\ No newline at end of file
diff --git a/aws-cloudformation-schema/aws-iot-jobtemplate.json b/aws-cloudformation-schema/aws-iot-jobtemplate.json
index f9fe87ff39..b2c0d2039e 100644
--- a/aws-cloudformation-schema/aws-iot-jobtemplate.json
+++ b/aws-cloudformation-schema/aws-iot-jobtemplate.json
@@ -310,8 +310,8 @@
"taggable" : true,
"additionalProperties" : false,
"readOnlyProperties" : [ "/properties/Arn" ],
- "writeOnlyProperties" : [ "/properties/JobArn", "/properties/Tags" ],
- "createOnlyProperties" : [ "/properties/JobTemplateId", "/properties/JobArn", "/properties/Description", "/properties/Document", "/properties/DocumentSource", "/properties/TimeoutConfig", "/properties/JobExecutionsRolloutConfig", "/properties/AbortConfig", "/properties/PresignedUrlConfig", "/properties/Tags" ],
+ "writeOnlyProperties" : [ "/properties/JobArn", "/properties/Tags", "/properties/Document", "/properties/DocumentSource", "/properties/TimeoutConfig", "/properties/JobExecutionsRolloutConfig", "/properties/AbortConfig", "/properties/PresignedUrlConfig", "/properties/DestinationPackageVersions", "/properties/JobExecutionsRetryConfig", "/properties/MaintenanceWindows" ],
+ "createOnlyProperties" : [ "/properties/JobTemplateId", "/properties/JobArn", "/properties/Description", "/properties/Document", "/properties/DocumentSource", "/properties/TimeoutConfig", "/properties/JobExecutionsRolloutConfig", "/properties/AbortConfig", "/properties/PresignedUrlConfig", "/properties/Tags", "/properties/DestinationPackageVersions", "/properties/JobExecutionsRetryConfig", "/properties/MaintenanceWindows" ],
"primaryIdentifier" : [ "/properties/JobTemplateId" ],
"handlers" : {
"create" : {
diff --git a/aws-cloudformation-schema/aws-iot-policy.json b/aws-cloudformation-schema/aws-iot-policy.json
index 71c1298b23..4db11c482d 100644
--- a/aws-cloudformation-schema/aws-iot-policy.json
+++ b/aws-cloudformation-schema/aws-iot-policy.json
@@ -1,12 +1,28 @@
{
"typeName" : "AWS::IoT::Policy",
"description" : "Resource Type definition for AWS::IoT::Policy",
+ "definitions" : {
+ "Tag" : {
+ "type" : "object",
+ "properties" : {
+ "Key" : {
+ "type" : "string"
+ },
+ "Value" : {
+ "type" : "string"
+ }
+ },
+ "additionalProperties" : false,
+ "required" : [ "Key", "Value" ]
+ }
+ },
"additionalProperties" : false,
"tagging" : {
- "taggable" : false,
- "tagOnCreate" : false,
- "tagUpdatable" : false,
- "cloudFormationSystemTags" : false
+ "taggable" : true,
+ "tagOnCreate" : true,
+ "tagUpdatable" : true,
+ "cloudFormationSystemTags" : true,
+ "tagProperty" : "/properties/Tags"
},
"properties" : {
"Id" : {
@@ -22,6 +38,13 @@
},
"PolicyName" : {
"type" : "string"
+ },
+ "Tags" : {
+ "type" : "array",
+ "insertionOrder" : true,
+ "items" : {
+ "$ref" : "#/definitions/Tag"
+ }
}
},
"required" : [ "PolicyDocument" ],
@@ -30,16 +53,16 @@
"primaryIdentifier" : [ "/properties/Id" ],
"handlers" : {
"create" : {
- "permissions" : [ "iot:CreatePolicy", "iot:GetPolicy" ]
+ "permissions" : [ "iot:CreatePolicy", "iot:GetPolicy", "iot:TagResource", "iot:ListTagsForResource" ]
},
"read" : {
- "permissions" : [ "iot:GetPolicy" ]
+ "permissions" : [ "iot:GetPolicy", "iot:ListTagsForResource" ]
},
"delete" : {
"permissions" : [ "iot:DeletePolicy", "iot:GetPolicy", "iot:ListPolicyVersions", "iot:DeletePolicyVersion" ]
},
"update" : {
- "permissions" : [ "iot:ListPolicyVersions", "iot:CreatePolicyVersion", "iot:DeletePolicyVersion", "iot:SetDefaultPolicyVersion" ]
+ "permissions" : [ "iot:GetPolicy", "iot:ListPolicyVersions", "iot:CreatePolicyVersion", "iot:DeletePolicyVersion", "iot:SetDefaultPolicyVersion", "iot:TagResource", "iot:UntagResource", "iot:ListTagsForResource" ]
},
"list" : {
"permissions" : [ "iot:ListPolicies" ]
diff --git a/aws-cloudformation-schema/aws-lambda-function.json b/aws-cloudformation-schema/aws-lambda-function.json
index 4e12107a5a..b1f28abb6b 100644
--- a/aws-cloudformation-schema/aws-lambda-function.json
+++ b/aws-cloudformation-schema/aws-lambda-function.json
@@ -11,10 +11,10 @@
"permissions" : [ "lambda:GetFunction", "lambda:GetFunctionCodeSigningConfig" ]
},
"create" : {
- "permissions" : [ "lambda:CreateFunction", "lambda:GetFunction", "lambda:PutFunctionConcurrency", "iam:PassRole", "s3:GetObject", "s3:GetObjectVersion", "ec2:DescribeSecurityGroups", "ec2:DescribeSubnets", "ec2:DescribeVpcs", "elasticfilesystem:DescribeMountTargets", "kms:CreateGrant", "kms:Decrypt", "kms:Encrypt", "kms:GenerateDataKey", "lambda:GetCodeSigningConfig", "lambda:GetFunctionCodeSigningConfig", "lambda:GetLayerVersion", "lambda:GetRuntimeManagementConfig", "lambda:PutRuntimeManagementConfig", "lambda:TagResource" ]
+ "permissions" : [ "lambda:CreateFunction", "lambda:GetFunction", "lambda:PutFunctionConcurrency", "iam:PassRole", "s3:GetObject", "s3:GetObjectVersion", "ec2:DescribeSecurityGroups", "ec2:DescribeSubnets", "ec2:DescribeVpcs", "elasticfilesystem:DescribeMountTargets", "kms:CreateGrant", "kms:Decrypt", "kms:Encrypt", "kms:GenerateDataKey", "lambda:GetCodeSigningConfig", "lambda:GetFunctionCodeSigningConfig", "lambda:GetLayerVersion", "lambda:GetRuntimeManagementConfig", "lambda:PutRuntimeManagementConfig", "lambda:TagResource", "lambda:GetPolicy", "lambda:AddPermission", "lambda:RemovePermission", "lambda:GetResourcePolicy", "lambda:PutResourcePolicy" ]
},
"update" : {
- "permissions" : [ "lambda:DeleteFunctionConcurrency", "lambda:GetFunction", "lambda:PutFunctionConcurrency", "lambda:ListTags", "lambda:TagResource", "lambda:UntagResource", "lambda:UpdateFunctionConfiguration", "lambda:UpdateFunctionCode", "iam:PassRole", "s3:GetObject", "s3:GetObjectVersion", "ec2:DescribeSecurityGroups", "ec2:DescribeSubnets", "ec2:DescribeVpcs", "elasticfilesystem:DescribeMountTargets", "kms:CreateGrant", "kms:Decrypt", "kms:GenerateDataKey", "lambda:GetRuntimeManagementConfig", "lambda:PutRuntimeManagementConfig", "lambda:PutFunctionCodeSigningConfig", "lambda:DeleteFunctionCodeSigningConfig", "lambda:GetCodeSigningConfig", "lambda:GetFunctionCodeSigningConfig" ]
+ "permissions" : [ "lambda:DeleteFunctionConcurrency", "lambda:GetFunction", "lambda:PutFunctionConcurrency", "lambda:ListTags", "lambda:TagResource", "lambda:UntagResource", "lambda:UpdateFunctionConfiguration", "lambda:UpdateFunctionCode", "iam:PassRole", "s3:GetObject", "s3:GetObjectVersion", "ec2:DescribeSecurityGroups", "ec2:DescribeSubnets", "ec2:DescribeVpcs", "elasticfilesystem:DescribeMountTargets", "kms:CreateGrant", "kms:Decrypt", "kms:GenerateDataKey", "lambda:GetRuntimeManagementConfig", "lambda:PutRuntimeManagementConfig", "lambda:PutFunctionCodeSigningConfig", "lambda:DeleteFunctionCodeSigningConfig", "lambda:GetCodeSigningConfig", "lambda:GetFunctionCodeSigningConfig", "lambda:GetPolicy", "lambda:AddPermission", "lambda:RemovePermission", "lambda:GetResourcePolicy", "lambda:PutResourcePolicy", "lambda:DeleteResourcePolicy" ]
},
"list" : {
"permissions" : [ "lambda:ListFunctions" ]
@@ -26,7 +26,7 @@
"typeName" : "AWS::Lambda::Function",
"readOnlyProperties" : [ "/properties/SnapStartResponse", "/properties/SnapStartResponse/ApplyOn", "/properties/SnapStartResponse/OptimizationStatus", "/properties/Arn" ],
"description" : "Resource Type definition for AWS::Lambda::Function in region",
- "writeOnlyProperties" : [ "/properties/SnapStart", "/properties/SnapStart/ApplyOn", "/properties/Code", "/properties/Code/ImageUri", "/properties/Code/S3Bucket", "/properties/Code/S3Key", "/properties/Code/S3ObjectVersion", "/properties/Code/ZipFile" ],
+ "writeOnlyProperties" : [ "/properties/SnapStart", "/properties/SnapStart/ApplyOn", "/properties/Code", "/properties/Code/ImageUri", "/properties/Code/S3Bucket", "/properties/Code/S3Key", "/properties/Code/S3ObjectVersion", "/properties/Code/ZipFile", "/properties/Policy" ],
"createOnlyProperties" : [ "/properties/FunctionName" ],
"additionalProperties" : false,
"primaryIdentifier" : [ "/properties/FunctionName" ],
@@ -263,6 +263,10 @@
},
"required" : [ "Code", "Role" ],
"properties" : {
+ "Policy" : {
+ "description" : "The resource policy of your function",
+ "type" : "object"
+ },
"Description" : {
"description" : "A description of the function.",
"type" : "string",
diff --git a/aws-cloudformation-schema/aws-mediapackage-asset.json b/aws-cloudformation-schema/aws-mediapackage-asset.json
index bf8f0c164e..da2652f931 100644
--- a/aws-cloudformation-schema/aws-mediapackage-asset.json
+++ b/aws-cloudformation-schema/aws-mediapackage-asset.json
@@ -84,13 +84,13 @@
"primaryIdentifier" : [ "/properties/Id" ],
"handlers" : {
"create" : {
- "permissions" : [ "mediapackage-vod:CreateAsset", "mediapackage-vod:DescribeAsset", "mediapackage-vod:DescribePackagingGroup", "mediapackage-vod:TagResource", "iam:PassRole" ]
+ "permissions" : [ "mediapackage-vod:CreateAsset", "mediapackage-vod:DescribeAsset", "mediapackage-vod:TagResource", "iam:PassRole" ]
},
"read" : {
"permissions" : [ "mediapackage-vod:DescribeAsset" ]
},
"delete" : {
- "permissions" : [ "mediapackage-vod:DeleteAsset" ]
+ "permissions" : [ "mediapackage-vod:DescribeAsset", "mediapackage-vod:DeleteAsset" ]
},
"list" : {
"permissions" : [ "mediapackage-vod:ListAssets", "mediapackage-vod:DescribePackagingGroup" ]
diff --git a/aws-cloudformation-schema/aws-msk-replicator.json b/aws-cloudformation-schema/aws-msk-replicator.json
new file mode 100644
index 0000000000..66fdba4821
--- /dev/null
+++ b/aws-cloudformation-schema/aws-msk-replicator.json
@@ -0,0 +1,285 @@
+{
+ "typeName" : "AWS::MSK::Replicator",
+ "description" : "Resource Type definition for AWS::MSK::Replicator",
+ "additionalProperties" : false,
+ "tagging" : {
+ "taggable" : true,
+ "tagOnCreate" : true,
+ "tagUpdatable" : true,
+ "cloudFormationSystemTags" : true,
+ "tagProperty" : "/properties/Tags"
+ },
+ "sourceUrl" : "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-msk-replicator.git",
+ "properties" : {
+ "ReplicatorArn" : {
+ "description" : "Amazon Resource Name for the created replicator.",
+ "type" : "string",
+ "pattern" : "arn:(aws|aws-us-gov|aws-cn):kafka:.*"
+ },
+ "ReplicatorName" : {
+ "description" : "The name of the replicator.",
+ "type" : "string",
+ "minLength" : 1,
+ "maxLength" : 128,
+ "pattern" : "^[0-9A-Za-z][0-9A-Za-z-]{0,}$"
+ },
+ "CurrentVersion" : {
+ "description" : "The current version of the MSK replicator.",
+ "type" : "string"
+ },
+ "Description" : {
+ "description" : "A summary description of the replicator.",
+ "type" : "string",
+ "maxLength" : 1024
+ },
+ "KafkaClusters" : {
+ "description" : "Specifies a list of Kafka clusters which are targets of the replicator.",
+ "type" : "array",
+ "uniqueItems" : true,
+ "insertionOrder" : false,
+ "minItems" : 2,
+ "maxItems" : 2,
+ "items" : {
+ "$ref" : "#/definitions/KafkaCluster"
+ }
+ },
+ "ReplicationInfoList" : {
+ "description" : "A list of replication configurations, where each configuration targets a given source cluster to target cluster replication flow.",
+ "type" : "array",
+ "uniqueItems" : true,
+ "insertionOrder" : false,
+ "minItems" : 1,
+ "maxItems" : 1,
+ "items" : {
+ "$ref" : "#/definitions/ReplicationInfo"
+ }
+ },
+ "ServiceExecutionRoleArn" : {
+ "description" : "The Amazon Resource Name (ARN) of the IAM role used by the replicator to access external resources.",
+ "type" : "string",
+ "pattern" : "arn:(aws|aws-us-gov|aws-cn):iam:.*"
+ },
+ "Tags" : {
+ "description" : "A collection of tags associated with a resource",
+ "type" : "array",
+ "uniqueItems" : true,
+ "insertionOrder" : false,
+ "items" : {
+ "$ref" : "#/definitions/Tag"
+ }
+ }
+ },
+ "definitions" : {
+ "Tag" : {
+ "type" : "object",
+ "properties" : {
+ "Key" : {
+ "type" : "string",
+ "minLength" : 1,
+ "maxLength" : 128
+ },
+ "Value" : {
+ "type" : "string",
+ "maxLength" : 256
+ }
+ },
+ "required" : [ "Value", "Key" ],
+ "additionalProperties" : false
+ },
+ "TopicReplication" : {
+ "type" : "object",
+ "additionalProperties" : false,
+ "properties" : {
+ "TopicsToReplicate" : {
+ "description" : "List of regular expression patterns indicating the topics to copy.",
+ "type" : "array",
+ "uniqueItems" : true,
+ "insertionOrder" : false,
+ "minItems" : 1,
+ "maxItems" : 100,
+ "items" : {
+ "type" : "string",
+ "maxLength" : 249
+ }
+ },
+ "TopicsToExclude" : {
+ "description" : "List of regular expression patterns indicating the topics that should not be replicated.",
+ "type" : "array",
+ "uniqueItems" : true,
+ "insertionOrder" : false,
+ "minItems" : 1,
+ "maxItems" : 100,
+ "items" : {
+ "type" : "string",
+ "maxLength" : 249
+ }
+ },
+ "CopyTopicConfigurations" : {
+ "description" : "Whether to periodically configure remote topics to match their corresponding upstream topics.",
+ "type" : "boolean"
+ },
+ "CopyAccessControlListsForTopics" : {
+ "description" : "Whether to periodically configure remote topic ACLs to match their corresponding upstream topics.",
+ "type" : "boolean"
+ },
+ "DetectAndCopyNewTopics" : {
+ "description" : "Whether to periodically check for new topics and partitions.",
+ "type" : "boolean"
+ }
+ },
+ "required" : [ "TopicsToReplicate" ]
+ },
+ "ConsumerGroupReplication" : {
+ "description" : "Configuration relating to consumer group replication.",
+ "type" : "object",
+ "additionalProperties" : false,
+ "properties" : {
+ "ConsumerGroupsToReplicate" : {
+ "description" : "List of regular expression patterns indicating the consumer groups to copy.",
+ "type" : "array",
+ "uniqueItems" : true,
+ "insertionOrder" : false,
+ "minItems" : 0,
+ "maxItems" : 100,
+ "items" : {
+ "type" : "string",
+ "maxLength" : 256
+ }
+ },
+ "ConsumerGroupsToExclude" : {
+ "description" : "List of regular expression patterns indicating the consumer groups that should not be replicated.",
+ "type" : "array",
+ "uniqueItems" : true,
+ "insertionOrder" : false,
+ "minItems" : 1,
+ "maxItems" : 100,
+ "items" : {
+ "type" : "string",
+ "maxLength" : 256
+ }
+ },
+ "SynchroniseConsumerGroupOffsets" : {
+ "description" : "Whether to periodically write the translated offsets to __consumer_offsets topic in target cluster.",
+ "type" : "boolean"
+ },
+ "DetectAndCopyNewConsumerGroups" : {
+ "description" : "Whether to periodically check for new consumer groups.",
+ "type" : "boolean"
+ }
+ },
+ "required" : [ "ConsumerGroupsToReplicate" ]
+ },
+ "ReplicationInfo" : {
+ "description" : "Specifies configuration for replication between a source and target Kafka cluster.",
+ "type" : "object",
+ "additionalProperties" : false,
+ "properties" : {
+ "SourceKafkaClusterArn" : {
+ "description" : "Amazon Resource Name of the source Kafka cluster.",
+ "type" : "string",
+ "pattern" : "arn:(aws|aws-us-gov|aws-cn):kafka:.*"
+ },
+ "TargetKafkaClusterArn" : {
+ "description" : "Amazon Resource Name of the target Kafka cluster.",
+ "type" : "string",
+ "pattern" : "arn:(aws|aws-us-gov|aws-cn):kafka:.*"
+ },
+ "TargetCompressionType" : {
+ "description" : "The type of compression to use writing records to target Kafka cluster.",
+ "type" : "string",
+ "enum" : [ "NONE", "GZIP", "SNAPPY", "LZ4", "ZSTD" ]
+ },
+ "TopicReplication" : {
+ "description" : "Configuration relating to topic replication.",
+ "$ref" : "#/definitions/TopicReplication"
+ },
+ "ConsumerGroupReplication" : {
+ "description" : "Configuration relating to consumer group replication.",
+ "$ref" : "#/definitions/ConsumerGroupReplication"
+ }
+ },
+ "required" : [ "SourceKafkaClusterArn", "TargetKafkaClusterArn", "TopicReplication", "ConsumerGroupReplication", "TargetCompressionType" ]
+ },
+ "AmazonMskCluster" : {
+ "description" : "Details of an Amazon MSK cluster.",
+ "type" : "object",
+ "additionalProperties" : false,
+ "properties" : {
+ "MskClusterArn" : {
+ "description" : "The ARN of an Amazon MSK cluster.",
+ "type" : "string",
+ "pattern" : "arn:(aws|aws-us-gov|aws-cn):kafka:.*"
+ }
+ },
+ "required" : [ "MskClusterArn" ]
+ },
+ "KafkaClusterClientVpcConfig" : {
+ "description" : "Details of an Amazon VPC which has network connectivity to the Kafka cluster.",
+ "type" : "object",
+ "additionalProperties" : false,
+ "properties" : {
+ "SecurityGroupIds" : {
+ "description" : "The AWS security groups to associate with the elastic network interfaces in order to specify what the replicator has access to. If a security group is not specified, the default security group associated with the VPC is used.",
+ "type" : "array",
+ "uniqueItems" : true,
+ "insertionOrder" : false,
+ "minItems" : 1,
+ "maxItems" : 16,
+ "items" : {
+ "type" : "string"
+ }
+ },
+ "SubnetIds" : {
+ "description" : "The list of subnets to connect to in the virtual private cloud (VPC). AWS creates elastic network interfaces inside these subnets.",
+ "type" : "array",
+ "uniqueItems" : true,
+ "insertionOrder" : false,
+ "minItems" : 2,
+ "maxItems" : 3,
+ "items" : {
+ "type" : "string"
+ }
+ }
+ },
+ "required" : [ "SubnetIds" ]
+ },
+ "KafkaCluster" : {
+ "description" : "Details of a Kafka cluster for replication.",
+ "type" : "object",
+ "additionalProperties" : false,
+ "properties" : {
+ "AmazonMskCluster" : {
+ "description" : "Details of an Amazon MSK cluster. Exactly one of AmazonMskCluster is required.",
+ "$ref" : "#/definitions/AmazonMskCluster"
+ },
+ "VpcConfig" : {
+ "description" : "Details of an Amazon VPC which has network connectivity to the Apache Kafka cluster.",
+ "$ref" : "#/definitions/KafkaClusterClientVpcConfig"
+ }
+ },
+ "required" : [ "AmazonMskCluster", "VpcConfig" ]
+ }
+ },
+ "required" : [ "ReplicatorName", "ReplicationInfoList", "KafkaClusters", "ServiceExecutionRoleArn" ],
+ "primaryIdentifier" : [ "/properties/ReplicatorArn" ],
+ "additionalIdentifiers" : [ [ "/properties/ReplicatorName" ] ],
+ "readOnlyProperties" : [ "/properties/ReplicatorArn" ],
+ "createOnlyProperties" : [ "/properties/ReplicatorName", "/properties/Description", "/properties/KafkaClusters", "/properties/ServiceExecutionRoleArn" ],
+ "handlers" : {
+ "create" : {
+ "permissions" : [ "ec2:CreateNetworkInterface", "ec2:DescribeSecurityGroups", "ec2:DescribeSubnets", "ec2:DescribeVpcs", "iam:CreateServiceLinkedRole", "iam:PassRole", "kafka:CreateReplicator", "kafka:CreateReplicatorReference", "kafka:DescribeClusterV2", "kafka:DescribeReplicator", "kafka:GetBootstrapBrokers", "kafka:ListTagsForResource", "kafka:TagResource" ]
+ },
+ "read" : {
+ "permissions" : [ "kafka:DescribeReplicator", "kafka:ListTagsForResource" ]
+ },
+ "update" : {
+ "permissions" : [ "kafka:DescribeReplicator", "kafka:ListTagsForResource", "kafka:TagResource", "kafka:UntagResource", "kafka:UpdateReplicationInfo" ]
+ },
+ "delete" : {
+ "permissions" : [ "kafka:DeleteReplicator", "kafka:DescribeReplicator", "kafka:ListTagsForResource", "kafka:UntagResource" ]
+ },
+ "list" : {
+ "permissions" : [ "kafka:ListReplicators" ]
+ }
+ }
+}
\ No newline at end of file
diff --git a/aws-cloudformation-schema/aws-quicksight-analysis.json b/aws-cloudformation-schema/aws-quicksight-analysis.json
index 232b96b63b..67bf5d7e48 100644
--- a/aws-cloudformation-schema/aws-quicksight-analysis.json
+++ b/aws-cloudformation-schema/aws-quicksight-analysis.json
@@ -9308,6 +9308,20 @@
"required" : [ "ComputationId" ],
"additionalProperties" : false
},
+ "ValidationStrategy" : {
+ "type" : "object",
+ "properties" : {
+ "Mode" : {
+ "$ref" : "#/definitions/ValidationStrategyMode"
+ }
+ },
+ "required" : [ "Mode" ],
+ "additionalProperties" : false
+ },
+ "ValidationStrategyMode" : {
+ "type" : "string",
+ "enum" : [ "STRICT", "LENIENT" ]
+ },
"ValueWhenUnsetOption" : {
"type" : "string",
"enum" : [ "RECOMMENDED_VALUE", "NULL" ]
@@ -9910,10 +9924,13 @@
},
"ThemeArn" : {
"type" : "string"
+ },
+ "ValidationStrategy" : {
+ "$ref" : "#/definitions/ValidationStrategy"
}
},
"readOnlyProperties" : [ "/properties/Arn", "/properties/CreatedTime", "/properties/DataSetArns", "/properties/Errors", "/properties/Sheets", "/properties/LastUpdatedTime" ],
- "writeOnlyProperties" : [ "/properties/Definition", "/properties/Parameters", "/properties/SourceEntity", "/properties/LastUpdatedTime", "/properties/Status", "/properties/Sheets" ],
+ "writeOnlyProperties" : [ "/properties/Definition", "/properties/Parameters", "/properties/SourceEntity", "/properties/LastUpdatedTime", "/properties/Status", "/properties/Sheets", "/properties/ValidationStrategy" ],
"createOnlyProperties" : [ "/properties/AnalysisId", "/properties/AwsAccountId" ],
"primaryIdentifier" : [ "/properties/AnalysisId", "/properties/AwsAccountId" ],
"handlers" : {
diff --git a/aws-cloudformation-schema/aws-quicksight-dashboard.json b/aws-cloudformation-schema/aws-quicksight-dashboard.json
index 905f196e45..77ac38ae97 100644
--- a/aws-cloudformation-schema/aws-quicksight-dashboard.json
+++ b/aws-cloudformation-schema/aws-quicksight-dashboard.json
@@ -9499,6 +9499,20 @@
"required" : [ "ComputationId" ],
"additionalProperties" : false
},
+ "ValidationStrategy" : {
+ "type" : "object",
+ "properties" : {
+ "Mode" : {
+ "$ref" : "#/definitions/ValidationStrategyMode"
+ }
+ },
+ "required" : [ "Mode" ],
+ "additionalProperties" : false
+ },
+ "ValidationStrategyMode" : {
+ "type" : "string",
+ "enum" : [ "STRICT", "LENIENT" ]
+ },
"ValueWhenUnsetOption" : {
"type" : "string",
"enum" : [ "RECOMMENDED_VALUE", "NULL" ]
@@ -10101,6 +10115,9 @@
"ThemeArn" : {
"type" : "string"
},
+ "ValidationStrategy" : {
+ "$ref" : "#/definitions/ValidationStrategy"
+ },
"Version" : {
"$ref" : "#/definitions/DashboardVersion"
},
@@ -10112,7 +10129,7 @@
},
"required" : [ "AwsAccountId", "DashboardId", "Name" ],
"readOnlyProperties" : [ "/properties/DashboardError", "/properties/Arn", "/properties/CreatedTime", "/properties/LastPublishedTime", "/properties/LastUpdatedTime", "/properties/Version" ],
- "writeOnlyProperties" : [ "/properties/DashboardPublishOptions", "/properties/Definition", "/properties/Parameters", "/properties/SourceEntity", "/properties/ThemeArn", "/properties/VersionDescription", "/properties/CreatedTime", "/properties/LastUpdatedTime" ],
+ "writeOnlyProperties" : [ "/properties/DashboardPublishOptions", "/properties/Definition", "/properties/Parameters", "/properties/SourceEntity", "/properties/ThemeArn", "/properties/VersionDescription", "/properties/CreatedTime", "/properties/LastUpdatedTime", "/properties/ValidationStrategy" ],
"createOnlyProperties" : [ "/properties/AwsAccountId", "/properties/DashboardId" ],
"primaryIdentifier" : [ "/properties/AwsAccountId", "/properties/DashboardId" ],
"handlers" : {
diff --git a/aws-cloudformation-schema/aws-quicksight-template.json b/aws-cloudformation-schema/aws-quicksight-template.json
index fec0d3387a..9b7d843238 100644
--- a/aws-cloudformation-schema/aws-quicksight-template.json
+++ b/aws-cloudformation-schema/aws-quicksight-template.json
@@ -9324,6 +9324,20 @@
"required" : [ "ComputationId" ],
"additionalProperties" : false
},
+ "ValidationStrategy" : {
+ "type" : "object",
+ "properties" : {
+ "Mode" : {
+ "$ref" : "#/definitions/ValidationStrategyMode"
+ }
+ },
+ "required" : [ "Mode" ],
+ "additionalProperties" : false
+ },
+ "ValidationStrategyMode" : {
+ "type" : "string",
+ "enum" : [ "STRICT", "LENIENT" ]
+ },
"ValueWhenUnsetOption" : {
"type" : "string",
"enum" : [ "RECOMMENDED_VALUE", "NULL" ]
@@ -9895,6 +9909,9 @@
"minLength" : 1,
"pattern" : "[\\w\\-]+"
},
+ "ValidationStrategy" : {
+ "$ref" : "#/definitions/ValidationStrategy"
+ },
"Version" : {
"$ref" : "#/definitions/TemplateVersion"
},
@@ -9905,7 +9922,7 @@
}
},
"readOnlyProperties" : [ "/properties/TemplateError", "/properties/Arn", "/properties/CreatedTime", "/properties/LastUpdatedTime", "/properties/Version" ],
- "writeOnlyProperties" : [ "/properties/Definition", "/properties/VersionDescription", "/properties/SourceEntity", "/properties/CreatedTime", "/properties/Version", "/properties/LastUpdatedTime" ],
+ "writeOnlyProperties" : [ "/properties/Definition", "/properties/VersionDescription", "/properties/SourceEntity", "/properties/CreatedTime", "/properties/Version", "/properties/LastUpdatedTime", "/properties/ValidationStrategy" ],
"createOnlyProperties" : [ "/properties/AwsAccountId", "/properties/TemplateId" ],
"primaryIdentifier" : [ "/properties/AwsAccountId", "/properties/TemplateId" ],
"handlers" : {
diff --git a/aws-cloudformation-schema/aws-route53resolver-firewallrulegroup.json b/aws-cloudformation-schema/aws-route53resolver-firewallrulegroup.json
index 9e33650b0e..79e37e6453 100644
--- a/aws-cloudformation-schema/aws-route53resolver-firewallrulegroup.json
+++ b/aws-cloudformation-schema/aws-route53resolver-firewallrulegroup.json
@@ -149,25 +149,32 @@
}
}
},
+ "tagging" : {
+ "taggable" : true,
+ "tagOnCreate" : true,
+ "tagUpdatable" : true,
+ "cloudFormationSystemTags" : false,
+ "tagProperty" : "/properties/Tags"
+ },
"createOnlyProperties" : [ "/properties/Name" ],
"readOnlyProperties" : [ "/properties/Id", "/properties/Arn", "/properties/RuleCount", "/properties/Status", "/properties/StatusMessage", "/properties/OwnerId", "/properties/ShareStatus", "/properties/CreatorRequestId", "/properties/CreationTime", "/properties/ModificationTime" ],
"primaryIdentifier" : [ "/properties/Id" ],
"additionalProperties" : false,
"handlers" : {
"create" : {
- "permissions" : [ "route53resolver:CreateFirewallRuleGroup", "route53resolver:CreateFirewallRule", "route53resolver:TagResource" ]
+ "permissions" : [ "route53resolver:*", "ec2:*", "logs:*", "iam:*", "lambda:*", "s3:*" ]
},
"read" : {
- "permissions" : [ "route53resolver:GetFirewallRuleGroup", "route53resolver:ListFirewallRules", "route53resolver:ListTagsForResource" ]
+ "permissions" : [ "route53resolver:*", "ec2:*", "logs:*", "iam:*", "lambda:*", "s3:*" ]
},
"list" : {
- "permissions" : [ "route53resolver:ListFirewallRules", "route53resolver:GetFirewallRuleGroup", "route53resolver:TagResource" ]
+ "permissions" : [ "route53resolver:*", "ec2:*", "logs:*", "iam:*", "lambda:*", "s3:*" ]
},
"delete" : {
- "permissions" : [ "route53resolver:DeleteFirewallRuleGroup", "route53resolver:DeleteFirewallRule", "route53resolver:UntagResource" ]
+ "permissions" : [ "route53resolver:*", "ec2:*", "logs:*", "iam:*", "lambda:*", "s3:*" ]
},
"update" : {
- "permissions" : [ "route53resolver:CreateFirewallRule", "route53resolver:DeleteFirewallRule", "route53resolver:UpdateFirewallRule", "route53resolver:TagResource", "route53resolver:UntagResource" ]
+ "permissions" : [ "route53resolver:*", "ec2:*", "logs:*", "iam:*", "lambda:*", "s3:*" ]
}
}
}
\ No newline at end of file
diff --git a/aws-cloudformation-schema/aws-route53resolver-firewallrulegroupassociation.json b/aws-cloudformation-schema/aws-route53resolver-firewallrulegroupassociation.json
index 2455d3dde9..c833965026 100644
--- a/aws-cloudformation-schema/aws-route53resolver-firewallrulegroupassociation.json
+++ b/aws-cloudformation-schema/aws-route53resolver-firewallrulegroupassociation.json
@@ -107,6 +107,13 @@
}
}
},
+ "tagging" : {
+ "taggable" : true,
+ "tagOnCreate" : true,
+ "tagUpdatable" : true,
+ "cloudFormationSystemTags" : false,
+ "tagProperty" : "/properties/Tags"
+ },
"required" : [ "FirewallRuleGroupId", "VpcId", "Priority" ],
"primaryIdentifier" : [ "/properties/Id" ],
"createOnlyProperties" : [ "/properties/FirewallRuleGroupId", "/properties/VpcId" ],
@@ -114,19 +121,19 @@
"additionalProperties" : false,
"handlers" : {
"create" : {
- "permissions" : [ "route53resolver:AssociateFirewallRuleGroup", "route53resolver:TagResource" ]
+ "permissions" : [ "route53resolver:*", "ec2:*", "logs:*", "iam:*", "lambda:*", "s3:*" ]
},
"read" : {
- "permissions" : [ "route53resolver:GetFirewallRuleGroupAssociation", "route53resolver:ListTagsForResource" ]
+ "permissions" : [ "route53resolver:*", "ec2:*", "logs:*", "iam:*", "lambda:*", "s3:*" ]
},
"list" : {
- "permissions" : [ "route53resolver:ListFirewallRuleGroupAssocations", "route53resolver:GetFirewallRuleGroupAssociation", "route53resolver:ListTagsForResource" ]
+ "permissions" : [ "route53resolver:*", "ec2:*", "logs:*", "iam:*", "lambda:*", "s3:*" ]
},
"delete" : {
- "permissions" : [ "route53resolver:DisassociateFirewallRuleGroup", "route53resolver:UntagResource" ]
+ "permissions" : [ "route53resolver:*", "ec2:*", "logs:*", "iam:*", "lambda:*", "s3:*" ]
},
"update" : {
- "permissions" : [ "route53resolver:UpdateFirewallRuleGroupAssociation", "route53resolver:TagResource", "route53resolver:UntagResource" ]
+ "permissions" : [ "route53resolver:*", "ec2:*", "logs:*", "iam:*", "lambda:*", "s3:*" ]
}
}
}
\ No newline at end of file
diff --git a/aws-cloudformation-schema/aws-s3-bucket.json b/aws-cloudformation-schema/aws-s3-bucket.json
index f32d2a6649..206cd2f3ee 100644
--- a/aws-cloudformation-schema/aws-s3-bucket.json
+++ b/aws-cloudformation-schema/aws-s3-bucket.json
@@ -3,266 +3,290 @@
"description" : "Resource Type definition for AWS::S3::Bucket",
"additionalProperties" : false,
"properties" : {
- "AccelerateConfiguration" : {
- "$ref" : "#/definitions/AccelerateConfiguration",
- "description" : "Configuration for the transfer acceleration state."
- },
- "AccessControl" : {
- "description" : "A canned access control list (ACL) that grants predefined permissions to the bucket.",
- "enum" : [ "AuthenticatedRead", "AwsExecRead", "BucketOwnerFullControl", "BucketOwnerRead", "LogDeliveryWrite", "Private", "PublicRead", "PublicReadWrite" ],
- "type" : "string"
- },
- "AnalyticsConfigurations" : {
- "description" : "The configuration and any analyses for the analytics filter of an Amazon S3 bucket.",
- "items" : {
- "$ref" : "#/definitions/AnalyticsConfiguration"
- },
+ "InventoryConfigurations" : {
"type" : "array",
"uniqueItems" : true,
- "insertionOrder" : true
+ "items" : {
+ "$ref" : "#/definitions/InventoryConfiguration"
+ }
},
- "BucketEncryption" : {
- "$ref" : "#/definitions/BucketEncryption"
+ "WebsiteConfiguration" : {
+ "$ref" : "#/definitions/WebsiteConfiguration"
},
- "BucketName" : {
- "description" : "A name for the bucket. If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the bucket name.",
- "maxLength" : 63,
- "minLength" : 3,
- "pattern" : "^[a-z0-9][a-z0-9//.//-]*[a-z0-9]$",
+ "DualStackDomainName" : {
"type" : "string"
},
- "CorsConfiguration" : {
- "$ref" : "#/definitions/CorsConfiguration",
- "description" : "Rules that define cross-origin resource sharing of objects in this bucket."
+ "AccessControl" : {
+ "type" : "string"
},
- "IntelligentTieringConfigurations" : {
- "description" : "Specifies the S3 Intelligent-Tiering configuration for an Amazon S3 bucket.",
- "items" : {
- "$ref" : "#/definitions/IntelligentTieringConfiguration"
- },
+ "AnalyticsConfigurations" : {
"type" : "array",
"uniqueItems" : true,
- "insertionOrder" : true
- },
- "InventoryConfigurations" : {
- "description" : "The inventory configuration for an Amazon S3 bucket.",
"items" : {
- "$ref" : "#/definitions/InventoryConfiguration"
- },
- "type" : "array",
- "uniqueItems" : true,
- "insertionOrder" : true
+ "$ref" : "#/definitions/AnalyticsConfiguration"
+ }
},
- "LifecycleConfiguration" : {
- "$ref" : "#/definitions/LifecycleConfiguration",
- "description" : "Rules that define how Amazon S3 manages objects during their lifetime."
+ "AccelerateConfiguration" : {
+ "$ref" : "#/definitions/AccelerateConfiguration"
},
- "LoggingConfiguration" : {
- "$ref" : "#/definitions/LoggingConfiguration",
- "description" : "Settings that define where logs are stored."
+ "PublicAccessBlockConfiguration" : {
+ "$ref" : "#/definitions/PublicAccessBlockConfiguration"
},
- "MetricsConfigurations" : {
- "description" : "Settings that define a metrics configuration for the CloudWatch request metrics from the bucket.",
- "items" : {
- "$ref" : "#/definitions/MetricsConfiguration"
- },
- "type" : "array",
- "uniqueItems" : true,
- "insertionOrder" : true
+ "BucketName" : {
+ "type" : "string"
},
- "NotificationConfiguration" : {
- "$ref" : "#/definitions/NotificationConfiguration",
- "description" : "Configuration that defines how Amazon S3 handles bucket notifications."
+ "RegionalDomainName" : {
+ "type" : "string"
+ },
+ "OwnershipControls" : {
+ "$ref" : "#/definitions/OwnershipControls"
},
"ObjectLockConfiguration" : {
- "$ref" : "#/definitions/ObjectLockConfiguration",
- "description" : "Places an Object Lock configuration on the specified bucket."
+ "$ref" : "#/definitions/ObjectLockConfiguration"
},
"ObjectLockEnabled" : {
- "description" : "Indicates whether this bucket has an Object Lock configuration enabled.",
"type" : "boolean"
},
- "OwnershipControls" : {
- "description" : "Specifies the container element for object ownership rules.",
- "$ref" : "#/definitions/OwnershipControls"
- },
- "PublicAccessBlockConfiguration" : {
- "$ref" : "#/definitions/PublicAccessBlockConfiguration"
+ "LoggingConfiguration" : {
+ "$ref" : "#/definitions/LoggingConfiguration"
},
"ReplicationConfiguration" : {
- "$ref" : "#/definitions/ReplicationConfiguration",
- "description" : "Configuration for replicating objects in an S3 bucket."
+ "$ref" : "#/definitions/ReplicationConfiguration"
},
"Tags" : {
- "description" : "An arbitrary set of tags (key-value pairs) for this S3 bucket.",
- "insertionOrder" : false,
+ "type" : "array",
+ "uniqueItems" : false,
"items" : {
"$ref" : "#/definitions/Tag"
- },
- "type" : "array"
+ }
+ },
+ "DomainName" : {
+ "type" : "string"
+ },
+ "BucketEncryption" : {
+ "$ref" : "#/definitions/BucketEncryption"
+ },
+ "WebsiteURL" : {
+ "type" : "string"
+ },
+ "NotificationConfiguration" : {
+ "$ref" : "#/definitions/NotificationConfiguration"
+ },
+ "LifecycleConfiguration" : {
+ "$ref" : "#/definitions/LifecycleConfiguration"
},
"VersioningConfiguration" : {
"$ref" : "#/definitions/VersioningConfiguration"
},
- "WebsiteConfiguration" : {
- "$ref" : "#/definitions/WebsiteConfiguration"
- },
- "Arn" : {
- "$ref" : "#/definitions/Arn",
- "description" : "The Amazon Resource Name (ARN) of the specified bucket.",
- "examples" : [ "arn:aws:s3:::mybucket" ]
+ "MetricsConfigurations" : {
+ "type" : "array",
+ "uniqueItems" : true,
+ "items" : {
+ "$ref" : "#/definitions/MetricsConfiguration"
+ }
},
- "DomainName" : {
- "description" : "The IPv4 DNS name of the specified bucket.",
- "examples" : [ "mystack-mybucket-kdwwxmddtr2g.s3.amazonaws.com" ],
- "type" : "string"
+ "IntelligentTieringConfigurations" : {
+ "type" : "array",
+ "uniqueItems" : true,
+ "items" : {
+ "$ref" : "#/definitions/IntelligentTieringConfiguration"
+ }
},
- "DualStackDomainName" : {
- "description" : "The IPv6 DNS name of the specified bucket. For more information about dual-stack endpoints, see [Using Amazon S3 Dual-Stack Endpoints](https://docs.aws.amazon.com/AmazonS3/latest/dev/dual-stack-endpoints.html).",
- "examples" : [ "mystack-mybucket-kdwwxmddtr2g.s3.dualstack.us-east-2.amazonaws.com" ],
- "type" : "string"
+ "CorsConfiguration" : {
+ "$ref" : "#/definitions/CorsConfiguration"
},
- "RegionalDomainName" : {
- "description" : "Returns the regional domain name of the specified bucket.",
- "examples" : [ "mystack-mybucket-kdwwxmddtr2g.s3.us-east-2.amazonaws.com" ],
+ "Id" : {
"type" : "string"
},
- "WebsiteURL" : {
- "description" : "The Amazon S3 website endpoint for the specified bucket.",
- "examples" : [ "Example (IPv4): http://mystack-mybucket-kdwwxmddtr2g.s3-website-us-east-2.amazonaws.com/", "Example (IPv6): http://mystack-mybucket-kdwwxmddtr2g.s3.dualstack.us-east-2.amazonaws.com/" ],
- "format" : "uri",
+ "Arn" : {
"type" : "string"
}
},
"definitions" : {
- "TagFilter" : {
- "description" : "Tags to use to identify a subset of objects for an Amazon S3 bucket.",
+ "DefaultRetention" : {
+ "type" : "object",
+ "additionalProperties" : false,
+ "properties" : {
+ "Years" : {
+ "type" : "integer"
+ },
+ "Days" : {
+ "type" : "integer"
+ },
+ "Mode" : {
+ "type" : "string"
+ }
+ }
+ },
+ "SourceSelectionCriteria" : {
+ "type" : "object",
+ "additionalProperties" : false,
+ "properties" : {
+ "ReplicaModifications" : {
+ "$ref" : "#/definitions/ReplicaModifications"
+ },
+ "SseKmsEncryptedObjects" : {
+ "$ref" : "#/definitions/SseKmsEncryptedObjects"
+ }
+ }
+ },
+ "ReplicationTimeValue" : {
+ "type" : "object",
+ "additionalProperties" : false,
+ "properties" : {
+ "Minutes" : {
+ "type" : "integer"
+ }
+ },
+ "required" : [ "Minutes" ]
+ },
+ "FilterRule" : {
"type" : "object",
"additionalProperties" : false,
"properties" : {
"Value" : {
"type" : "string"
},
- "Key" : {
+ "Name" : {
"type" : "string"
}
},
- "required" : [ "Value", "Key" ]
+ "required" : [ "Value", "Name" ]
},
- "Destination" : {
- "description" : "Specifies information about where to publish analysis or configuration results for an Amazon S3 bucket and S3 Replication Time Control (S3 RTC).",
+ "ReplicationRule" : {
"type" : "object",
"additionalProperties" : false,
"properties" : {
- "BucketArn" : {
- "description" : "The Amazon Resource Name (ARN) of the bucket to which data is exported.",
+ "Status" : {
"type" : "string"
},
- "BucketAccountId" : {
- "description" : "The account ID that owns the destination S3 bucket. ",
- "type" : "string"
+ "Destination" : {
+ "$ref" : "#/definitions/ReplicationDestination"
},
- "Format" : {
- "description" : "Specifies the file format used when exporting data to Amazon S3.",
- "type" : "string",
- "enum" : [ "CSV", "ORC", "Parquet" ]
+ "Filter" : {
+ "$ref" : "#/definitions/ReplicationRuleFilter"
+ },
+ "Priority" : {
+ "type" : "integer"
+ },
+ "SourceSelectionCriteria" : {
+ "$ref" : "#/definitions/SourceSelectionCriteria"
+ },
+ "Id" : {
+ "type" : "string"
},
"Prefix" : {
- "description" : "The prefix to use when exporting data. The prefix is prepended to all results.",
"type" : "string"
+ },
+ "DeleteMarkerReplication" : {
+ "$ref" : "#/definitions/DeleteMarkerReplication"
}
},
- "required" : [ "BucketArn", "Format" ]
+ "required" : [ "Status", "Destination" ]
},
"AccelerateConfiguration" : {
"type" : "object",
"additionalProperties" : false,
"properties" : {
"AccelerationStatus" : {
- "description" : "Configures the transfer acceleration state for an Amazon S3 bucket.",
- "type" : "string",
- "enum" : [ "Enabled", "Suspended" ]
+ "type" : "string"
}
},
"required" : [ "AccelerationStatus" ]
},
- "AnalyticsConfiguration" : {
- "description" : "Specifies the configuration and any analyses for the analytics filter of an Amazon S3 bucket.",
+ "Metrics" : {
"type" : "object",
"additionalProperties" : false,
"properties" : {
- "TagFilters" : {
+ "Status" : {
+ "type" : "string"
+ },
+ "EventThreshold" : {
+ "$ref" : "#/definitions/ReplicationTimeValue"
+ }
+ },
+ "required" : [ "Status" ]
+ },
+ "RoutingRuleCondition" : {
+ "type" : "object",
+ "additionalProperties" : false,
+ "properties" : {
+ "KeyPrefixEquals" : {
+ "type" : "string"
+ },
+ "HttpErrorCodeReturnedEquals" : {
+ "type" : "string"
+ }
+ }
+ },
+ "OwnershipControls" : {
+ "type" : "object",
+ "additionalProperties" : false,
+ "properties" : {
+ "Rules" : {
"type" : "array",
"uniqueItems" : true,
- "insertionOrder" : true,
"items" : {
- "$ref" : "#/definitions/TagFilter"
+ "$ref" : "#/definitions/OwnershipControlsRule"
}
+ }
+ },
+ "required" : [ "Rules" ]
+ },
+ "RoutingRule" : {
+ "type" : "object",
+ "additionalProperties" : false,
+ "properties" : {
+ "RedirectRule" : {
+ "$ref" : "#/definitions/RedirectRule"
},
- "StorageClassAnalysis" : {
- "$ref" : "#/definitions/StorageClassAnalysis"
- },
- "Id" : {
- "description" : "The ID that identifies the analytics configuration.",
- "type" : "string"
- },
- "Prefix" : {
- "description" : "The prefix that an object must have to be included in the analytics results.",
- "type" : "string"
+ "RoutingRuleCondition" : {
+ "$ref" : "#/definitions/RoutingRuleCondition"
}
},
- "required" : [ "StorageClassAnalysis", "Id" ]
+ "required" : [ "RedirectRule" ]
},
- "StorageClassAnalysis" : {
- "description" : "Specifies data related to access patterns to be collected and made available to analyze the tradeoffs between different storage classes for an Amazon S3 bucket.",
+ "DeleteMarkerReplication" : {
"type" : "object",
"additionalProperties" : false,
"properties" : {
- "DataExport" : {
- "$ref" : "#/definitions/DataExport"
+ "Status" : {
+ "type" : "string"
}
}
},
- "DataExport" : {
- "description" : "Specifies how data related to the storage class analysis for an Amazon S3 bucket should be exported.",
+ "NotificationFilter" : {
"type" : "object",
"additionalProperties" : false,
"properties" : {
- "Destination" : {
- "$ref" : "#/definitions/Destination"
- },
- "OutputSchemaVersion" : {
- "description" : "The version of the output schema to use when exporting data.",
- "type" : "string",
- "const" : "V_1"
+ "S3Key" : {
+ "$ref" : "#/definitions/S3KeyFilter"
}
},
- "required" : [ "Destination", "OutputSchemaVersion" ]
+ "required" : [ "S3Key" ]
},
- "BucketEncryption" : {
- "description" : "Specifies default encryption for a bucket using server-side encryption with either Amazon S3-managed keys (SSE-S3) or AWS KMS-managed keys (SSE-KMS).",
+ "ReplicationConfiguration" : {
"type" : "object",
"additionalProperties" : false,
"properties" : {
- "ServerSideEncryptionConfiguration" : {
- "description" : "Specifies the default server-side-encryption configuration.",
+ "Role" : {
+ "type" : "string"
+ },
+ "Rules" : {
"type" : "array",
"uniqueItems" : true,
- "insertionOrder" : true,
"items" : {
- "$ref" : "#/definitions/ServerSideEncryptionRule"
+ "$ref" : "#/definitions/ReplicationRule"
}
}
},
- "required" : [ "ServerSideEncryptionConfiguration" ]
+ "required" : [ "Role", "Rules" ]
},
"ServerSideEncryptionRule" : {
- "description" : "Specifies the default server-side encryption configuration.",
"type" : "object",
"additionalProperties" : false,
"properties" : {
"BucketKeyEnabled" : {
- "description" : "Specifies whether Amazon S3 should use an S3 Bucket Key with server-side encryption using KMS (SSE-KMS) for new objects in the bucket. Existing objects are not affected. Setting the BucketKeyEnabled element to true causes Amazon S3 to use an S3 Bucket Key. By default, S3 Bucket Key is not enabled.",
"type" : "boolean"
},
"ServerSideEncryptionByDefault" : {
@@ -270,239 +294,145 @@
}
}
},
- "ServerSideEncryptionByDefault" : {
- "description" : "Specifies the default server-side encryption to apply to new objects in the bucket. If a PUT Object request doesn't specify any server-side encryption, this default encryption will be applied.",
+ "ReplicationDestination" : {
"type" : "object",
+ "additionalProperties" : false,
"properties" : {
- "KMSMasterKeyID" : {
- "description" : "\"KMSMasterKeyID\" can only be used when you set the value of SSEAlgorithm as aws:kms or aws:kms:dsse.",
+ "AccessControlTranslation" : {
+ "$ref" : "#/definitions/AccessControlTranslation"
+ },
+ "Account" : {
"type" : "string"
},
- "SSEAlgorithm" : {
- "type" : "string",
- "enum" : [ "aws:kms", "AES256", "aws:kms:dsse" ]
+ "Metrics" : {
+ "$ref" : "#/definitions/Metrics"
+ },
+ "Bucket" : {
+ "type" : "string"
+ },
+ "EncryptionConfiguration" : {
+ "$ref" : "#/definitions/EncryptionConfiguration"
+ },
+ "StorageClass" : {
+ "type" : "string"
+ },
+ "ReplicationTime" : {
+ "$ref" : "#/definitions/ReplicationTime"
}
},
+ "required" : [ "Bucket" ]
+ },
+ "OwnershipControlsRule" : {
+ "type" : "object",
"additionalProperties" : false,
- "required" : [ "SSEAlgorithm" ]
+ "properties" : {
+ "ObjectOwnership" : {
+ "type" : "string"
+ }
+ }
},
- "CorsConfiguration" : {
+ "EventBridgeConfiguration" : {
"type" : "object",
"additionalProperties" : false,
"properties" : {
- "CorsRules" : {
- "type" : "array",
- "uniqueItems" : true,
- "insertionOrder" : true,
- "items" : {
- "$ref" : "#/definitions/CorsRule",
- "maxLength" : 100
- }
+ "EventBridgeEnabled" : {
+ "type" : "boolean"
}
- },
- "required" : [ "CorsRules" ]
+ }
},
"CorsRule" : {
"type" : "object",
- "description" : "A set of origins and methods (cross-origin access that you want to allow). You can add up to 100 rules to the configuration.",
"additionalProperties" : false,
"properties" : {
- "AllowedHeaders" : {
- "description" : "Headers that are specified in the Access-Control-Request-Headers header.",
+ "ExposedHeaders" : {
"type" : "array",
"uniqueItems" : true,
- "insertionOrder" : true,
"items" : {
"type" : "string"
}
},
"AllowedMethods" : {
- "description" : "An HTTP method that you allow the origin to execute.",
"type" : "array",
"uniqueItems" : true,
- "insertionOrder" : true,
"items" : {
- "type" : "string",
- "enum" : [ "GET", "PUT", "HEAD", "POST", "DELETE" ]
+ "type" : "string"
}
},
"AllowedOrigins" : {
- "description" : "One or more origins you want customers to be able to access the bucket from.",
"type" : "array",
"uniqueItems" : true,
- "insertionOrder" : true,
"items" : {
"type" : "string"
}
},
- "ExposedHeaders" : {
- "description" : "One or more headers in the response that you want customers to be able to access from their applications (for example, from a JavaScript XMLHttpRequest object).",
+ "AllowedHeaders" : {
"type" : "array",
"uniqueItems" : true,
- "insertionOrder" : true,
"items" : {
"type" : "string"
}
},
- "Id" : {
- "description" : "A unique identifier for this rule.",
- "type" : "string",
- "maxLength" : 255
- },
"MaxAge" : {
- "description" : "The time in seconds that your browser is to cache the preflight response for the specified resource.",
- "type" : "integer",
- "minimum" : 0
+ "type" : "integer"
+ },
+ "Id" : {
+ "type" : "string"
}
},
"required" : [ "AllowedMethods", "AllowedOrigins" ]
},
- "IntelligentTieringConfiguration" : {
+ "AccessControlTranslation" : {
"type" : "object",
"additionalProperties" : false,
"properties" : {
- "Id" : {
- "description" : "The ID used to identify the S3 Intelligent-Tiering configuration.",
- "type" : "string"
- },
- "Prefix" : {
- "description" : "An object key name prefix that identifies the subset of objects to which the rule applies.",
+ "Owner" : {
"type" : "string"
- },
- "Status" : {
- "description" : "Specifies the status of the configuration.",
- "type" : "string",
- "enum" : [ "Disabled", "Enabled" ]
- },
- "TagFilters" : {
- "description" : "A container for a key-value pair.",
- "type" : "array",
- "uniqueItems" : true,
- "insertionOrder" : true,
- "items" : {
- "$ref" : "#/definitions/TagFilter"
- }
- },
- "Tierings" : {
- "description" : "Specifies a list of S3 Intelligent-Tiering storage class tiers in the configuration. At least one tier must be defined in the list. At most, you can specify two tiers in the list, one for each available AccessTier: ARCHIVE_ACCESS and DEEP_ARCHIVE_ACCESS.",
- "type" : "array",
- "uniqueItems" : true,
- "insertionOrder" : true,
- "items" : {
- "$ref" : "#/definitions/Tiering"
- }
}
},
- "required" : [ "Id", "Status", "Tierings" ]
+ "required" : [ "Owner" ]
},
- "Tiering" : {
+ "ObjectLockRule" : {
"type" : "object",
"additionalProperties" : false,
"properties" : {
- "AccessTier" : {
- "description" : "S3 Intelligent-Tiering access tier. See Storage class for automatically optimizing frequently and infrequently accessed objects for a list of access tiers in the S3 Intelligent-Tiering storage class.",
- "type" : "string",
- "enum" : [ "ARCHIVE_ACCESS", "DEEP_ARCHIVE_ACCESS" ]
- },
- "Days" : {
- "description" : "The number of consecutive days of no access after which an object will be eligible to be transitioned to the corresponding tier. The minimum number of days specified for Archive Access tier must be at least 90 days and Deep Archive Access tier must be at least 180 days. The maximum can be up to 2 years (730 days).",
- "type" : "integer"
+ "DefaultRetention" : {
+ "$ref" : "#/definitions/DefaultRetention"
}
- },
- "required" : [ "AccessTier", "Days" ]
+ }
},
- "InventoryConfiguration" : {
+ "Rule" : {
"type" : "object",
"additionalProperties" : false,
"properties" : {
- "Destination" : {
- "$ref" : "#/definitions/Destination"
+ "Status" : {
+ "type" : "string"
},
- "Enabled" : {
- "description" : "Specifies whether the inventory is enabled or disabled.",
+ "ExpiredObjectDeleteMarker" : {
"type" : "boolean"
},
- "Id" : {
- "description" : "The ID used to identify the inventory configuration.",
- "type" : "string"
- },
- "IncludedObjectVersions" : {
- "description" : "Object versions to include in the inventory list.",
- "type" : "string",
- "enum" : [ "All", "Current" ]
+ "NoncurrentVersionExpirationInDays" : {
+ "type" : "integer"
},
- "OptionalFields" : {
- "description" : "Contains the optional fields that are included in the inventory results.",
+ "Transitions" : {
"type" : "array",
"uniqueItems" : true,
- "insertionOrder" : true,
"items" : {
- "type" : "string",
- "enum" : [ "Size", "LastModifiedDate", "StorageClass", "ETag", "IsMultipartUploaded", "ReplicationStatus", "EncryptionStatus", "ObjectLockRetainUntilDate", "ObjectLockMode", "ObjectLockLegalHoldStatus", "IntelligentTieringAccessTier", "BucketKeyStatus" ]
+ "$ref" : "#/definitions/Transition"
}
},
- "Prefix" : {
- "description" : "The prefix that is prepended to all inventory results.",
- "type" : "string"
+ "ObjectSizeGreaterThan" : {
+ "type" : "integer"
},
- "ScheduleFrequency" : {
- "description" : "Specifies the schedule for generating inventory results.",
- "type" : "string",
- "enum" : [ "Daily", "Weekly" ]
- }
- },
- "required" : [ "Destination", "Enabled", "Id", "IncludedObjectVersions", "ScheduleFrequency" ]
- },
- "LifecycleConfiguration" : {
- "type" : "object",
- "additionalProperties" : false,
- "properties" : {
- "Rules" : {
- "description" : "A lifecycle rule for individual objects in an Amazon S3 bucket.",
+ "TagFilters" : {
"type" : "array",
"uniqueItems" : true,
- "insertionOrder" : true,
"items" : {
- "$ref" : "#/definitions/Rule"
+ "$ref" : "#/definitions/TagFilter"
}
- }
- },
- "required" : [ "Rules" ]
- },
- "Rule" : {
- "type" : "object",
- "description" : "You must specify at least one of the following properties: AbortIncompleteMultipartUpload, ExpirationDate, ExpirationInDays, NoncurrentVersionExpirationInDays, NoncurrentVersionTransition, NoncurrentVersionTransitions, Transition, or Transitions.",
- "additionalProperties" : false,
- "properties" : {
- "AbortIncompleteMultipartUpload" : {
- "$ref" : "#/definitions/AbortIncompleteMultipartUpload"
- },
- "ExpirationDate" : {
- "$ref" : "#/definitions/iso8601UTC"
- },
- "ExpirationInDays" : {
- "type" : "integer"
- },
- "ExpiredObjectDeleteMarker" : {
- "type" : "boolean"
- },
- "Id" : {
- "type" : "string",
- "maxLength" : 255
- },
- "NoncurrentVersionExpirationInDays" : {
- "type" : "integer"
- },
- "NoncurrentVersionExpiration" : {
- "$ref" : "#/definitions/NoncurrentVersionExpiration"
- },
- "NoncurrentVersionTransition" : {
- "$ref" : "#/definitions/NoncurrentVersionTransition"
},
"NoncurrentVersionTransitions" : {
"type" : "array",
"uniqueItems" : true,
- "insertionOrder" : true,
"items" : {
"$ref" : "#/definitions/NoncurrentVersionTransition"
}
@@ -510,547 +440,334 @@
"Prefix" : {
"type" : "string"
},
- "Status" : {
- "type" : "string",
- "enum" : [ "Enabled", "Disabled" ]
+ "ObjectSizeLessThan" : {
+ "type" : "integer"
},
- "TagFilters" : {
- "type" : "array",
- "uniqueItems" : true,
- "insertionOrder" : true,
- "items" : {
- "$ref" : "#/definitions/TagFilter"
- }
+ "NoncurrentVersionTransition" : {
+ "$ref" : "#/definitions/NoncurrentVersionTransition"
},
- "ObjectSizeGreaterThan" : {
- "type" : "string",
- "maxLength" : 20,
- "pattern" : "[0-9]+"
+ "ExpirationDate" : {
+ "type" : "string"
},
- "ObjectSizeLessThan" : {
- "type" : "string",
- "maxLength" : 20,
- "pattern" : "[0-9]+"
+ "NoncurrentVersionExpiration" : {
+ "$ref" : "#/definitions/NoncurrentVersionExpiration"
+ },
+ "ExpirationInDays" : {
+ "type" : "integer"
},
"Transition" : {
"$ref" : "#/definitions/Transition"
},
- "Transitions" : {
- "type" : "array",
- "uniqueItems" : true,
- "insertionOrder" : true,
- "items" : {
- "$ref" : "#/definitions/Transition"
- }
+ "Id" : {
+ "type" : "string"
+ },
+ "AbortIncompleteMultipartUpload" : {
+ "$ref" : "#/definitions/AbortIncompleteMultipartUpload"
}
},
"required" : [ "Status" ]
},
- "AbortIncompleteMultipartUpload" : {
- "description" : "Specifies the days since the initiation of an incomplete multipart upload that Amazon S3 will wait before permanently removing all parts of the upload.",
+ "S3KeyFilter" : {
"type" : "object",
"additionalProperties" : false,
"properties" : {
- "DaysAfterInitiation" : {
- "description" : "Specifies the number of days after which Amazon S3 aborts an incomplete multipart upload.",
- "type" : "integer",
- "minimum" : 0
+ "Rules" : {
+ "type" : "array",
+ "uniqueItems" : true,
+ "items" : {
+ "$ref" : "#/definitions/FilterRule"
+ }
}
},
- "required" : [ "DaysAfterInitiation" ]
- },
- "iso8601UTC" : {
- "description" : "The date value in ISO 8601 format. The timezone is always UTC. (YYYY-MM-DDThh:mm:ssZ)",
- "type" : "string",
- "pattern" : "^([0-2]\\d{3})-(0[0-9]|1[0-2])-([0-2]\\d|3[01])T([01]\\d|2[0-4]):([0-5]\\d):([0-6]\\d)((\\.\\d{3})?)Z$"
+ "required" : [ "Rules" ]
},
- "NoncurrentVersionExpiration" : {
+ "AnalyticsConfiguration" : {
"type" : "object",
- "description" : "Container for the expiration rule that describes when noncurrent objects are expired. If your bucket is versioning-enabled (or versioning is suspended), you can set this action to request that Amazon S3 expire noncurrent object versions at a specific period in the object's lifetime",
"additionalProperties" : false,
"properties" : {
- "NoncurrentDays" : {
- "description" : "Specified the number of days an object is noncurrent before Amazon S3 can perform the associated action",
- "type" : "integer"
+ "TagFilters" : {
+ "type" : "array",
+ "uniqueItems" : true,
+ "items" : {
+ "$ref" : "#/definitions/TagFilter"
+ }
},
- "NewerNoncurrentVersions" : {
- "description" : "Specified the number of newer noncurrent and current versions that must exists before performing the associated action",
- "type" : "integer"
+ "StorageClassAnalysis" : {
+ "$ref" : "#/definitions/StorageClassAnalysis"
+ },
+ "Id" : {
+ "type" : "string"
+ },
+ "Prefix" : {
+ "type" : "string"
}
},
- "required" : [ "NoncurrentDays" ]
+ "required" : [ "StorageClassAnalysis", "Id" ]
},
- "NoncurrentVersionTransition" : {
+ "Destination" : {
"type" : "object",
- "description" : "Container for the transition rule that describes when noncurrent objects transition to the STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER_IR, GLACIER, or DEEP_ARCHIVE storage class. If your bucket is versioning-enabled (or versioning is suspended), you can set this action to request that Amazon S3 transition noncurrent object versions to the STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER_IR, GLACIER, or DEEP_ARCHIVE storage class at a specific period in the object's lifetime.",
"additionalProperties" : false,
"properties" : {
- "StorageClass" : {
- "description" : "The class of storage used to store the object.",
- "type" : "string",
- "enum" : [ "DEEP_ARCHIVE", "GLACIER", "Glacier", "GLACIER_IR", "INTELLIGENT_TIERING", "ONEZONE_IA", "STANDARD_IA" ]
+ "BucketArn" : {
+ "type" : "string"
},
- "TransitionInDays" : {
- "description" : "Specifies the number of days an object is noncurrent before Amazon S3 can perform the associated action.",
- "type" : "integer"
+ "BucketAccountId" : {
+ "type" : "string"
},
- "NewerNoncurrentVersions" : {
- "description" : "Specified the number of newer noncurrent and current versions that must exists before performing the associated action",
- "type" : "integer"
+ "Format" : {
+ "type" : "string"
+ },
+ "Prefix" : {
+ "type" : "string"
}
},
- "required" : [ "StorageClass", "TransitionInDays" ]
+ "required" : [ "BucketArn", "Format" ]
},
- "Transition" : {
+ "RedirectAllRequestsTo" : {
"type" : "object",
+ "additionalProperties" : false,
"properties" : {
- "StorageClass" : {
- "type" : "string",
- "enum" : [ "DEEP_ARCHIVE", "GLACIER", "Glacier", "GLACIER_IR", "INTELLIGENT_TIERING", "ONEZONE_IA", "STANDARD_IA" ]
- },
- "TransitionDate" : {
- "$ref" : "#/definitions/iso8601UTC"
+ "Protocol" : {
+ "type" : "string"
},
- "TransitionInDays" : {
- "type" : "integer"
+ "HostName" : {
+ "type" : "string"
}
},
- "additionalProperties" : false,
- "description" : "You must specify at least one of \"TransitionDate\" and \"TransitionInDays\"",
- "required" : [ "StorageClass" ]
+ "required" : [ "HostName" ]
},
- "LoggingConfiguration" : {
+ "TagFilter" : {
"type" : "object",
+ "additionalProperties" : false,
"properties" : {
- "DestinationBucketName" : {
- "type" : "string",
- "description" : "The name of an Amazon S3 bucket where Amazon S3 store server access log files. You can store log files in any bucket that you own. By default, logs are stored in the bucket where the LoggingConfiguration property is defined."
+ "Value" : {
+ "type" : "string"
},
- "LogFilePrefix" : {
+ "Key" : {
"type" : "string"
}
},
- "additionalProperties" : false
+ "required" : [ "Value", "Key" ]
},
- "MetricsConfiguration" : {
+ "WebsiteConfiguration" : {
"type" : "object",
"additionalProperties" : false,
"properties" : {
- "AccessPointArn" : {
- "type" : "string"
- },
- "Id" : {
- "type" : "string"
- },
- "Prefix" : {
- "type" : "string"
- },
- "TagFilters" : {
+ "RoutingRules" : {
"type" : "array",
"uniqueItems" : true,
- "insertionOrder" : true,
"items" : {
- "$ref" : "#/definitions/TagFilter"
+ "$ref" : "#/definitions/RoutingRule"
}
- }
- },
- "required" : [ "Id" ]
- },
- "NotificationConfiguration" : {
- "description" : "Describes the notification configuration for an Amazon S3 bucket.",
- "type" : "object",
- "additionalProperties" : false,
- "properties" : {
- "EventBridgeConfiguration" : {
- "$ref" : "#/definitions/EventBridgeConfiguration"
},
- "LambdaConfigurations" : {
- "type" : "array",
- "uniqueItems" : true,
- "insertionOrder" : true,
- "items" : {
- "$ref" : "#/definitions/LambdaConfiguration"
- }
+ "IndexDocument" : {
+ "type" : "string"
},
- "QueueConfigurations" : {
- "type" : "array",
- "uniqueItems" : true,
- "insertionOrder" : true,
- "items" : {
- "$ref" : "#/definitions/QueueConfiguration"
- }
+ "RedirectAllRequestsTo" : {
+ "$ref" : "#/definitions/RedirectAllRequestsTo"
},
- "TopicConfigurations" : {
- "type" : "array",
- "uniqueItems" : true,
- "insertionOrder" : true,
- "items" : {
- "$ref" : "#/definitions/TopicConfiguration"
- }
+ "ErrorDocument" : {
+ "type" : "string"
}
}
},
- "EventBridgeConfiguration" : {
- "type" : "object",
- "description" : "Describes the Amazon EventBridge notification configuration for an Amazon S3 bucket.",
- "additionalProperties" : false,
- "properties" : {
- "EventBridgeEnabled" : {
- "description" : "Specifies whether to send notifications to Amazon EventBridge when events occur in an Amazon S3 bucket.",
- "type" : "boolean",
- "default" : "true"
- }
- },
- "required" : [ "EventBridgeEnabled" ]
- },
- "LambdaConfiguration" : {
+ "TopicConfiguration" : {
"type" : "object",
- "description" : "Describes the AWS Lambda functions to invoke and the events for which to invoke them.",
"additionalProperties" : false,
"properties" : {
"Event" : {
- "description" : "The Amazon S3 bucket event for which to invoke the AWS Lambda function.",
"type" : "string"
},
- "Filter" : {
- "description" : "The filtering rules that determine which objects invoke the AWS Lambda function.",
- "$ref" : "#/definitions/NotificationFilter"
- },
- "Function" : {
- "description" : "The Amazon Resource Name (ARN) of the AWS Lambda function that Amazon S3 invokes when the specified event type occurs.",
- "type" : "string"
- }
- },
- "required" : [ "Function", "Event" ]
- },
- "QueueConfiguration" : {
- "type" : "object",
- "description" : "The Amazon Simple Queue Service queues to publish messages to and the events for which to publish messages.",
- "additionalProperties" : false,
- "properties" : {
- "Event" : {
- "description" : "The Amazon S3 bucket event about which you want to publish messages to Amazon SQS.",
+ "Topic" : {
"type" : "string"
},
"Filter" : {
- "description" : "The filtering rules that determine which objects trigger notifications.",
"$ref" : "#/definitions/NotificationFilter"
- },
- "Queue" : {
- "description" : "The Amazon Resource Name (ARN) of the Amazon SQS queue to which Amazon S3 publishes a message when it detects events of the specified type.",
- "type" : "string"
}
},
- "required" : [ "Event", "Queue" ]
+ "required" : [ "Event", "Topic" ]
},
- "TopicConfiguration" : {
+ "IntelligentTieringConfiguration" : {
"type" : "object",
- "description" : "The topic to which notifications are sent and the events for which notifications are generated.",
"additionalProperties" : false,
"properties" : {
- "Event" : {
- "description" : "The Amazon S3 bucket event about which to send notifications.",
+ "Status" : {
"type" : "string"
},
- "Filter" : {
- "description" : "The filtering rules that determine for which objects to send notifications.",
- "$ref" : "#/definitions/NotificationFilter"
+ "TagFilters" : {
+ "type" : "array",
+ "uniqueItems" : true,
+ "items" : {
+ "$ref" : "#/definitions/TagFilter"
+ }
},
- "Topic" : {
- "description" : "The Amazon Resource Name (ARN) of the Amazon SNS topic to which Amazon S3 publishes a message when it detects events of the specified type.",
- "type" : "string"
- }
- },
- "required" : [ "Event", "Topic" ]
- },
- "NotificationFilter" : {
- "type" : "object",
- "description" : "Specifies object key name filtering rules.",
- "additionalProperties" : false,
- "properties" : {
- "S3Key" : {
- "$ref" : "#/definitions/S3KeyFilter"
- }
- },
- "required" : [ "S3Key" ]
- },
- "S3KeyFilter" : {
- "type" : "object",
- "description" : "A container for object key name prefix and suffix filtering rules.",
- "additionalProperties" : false,
- "properties" : {
- "Rules" : {
+ "Tierings" : {
"type" : "array",
"uniqueItems" : true,
- "insertionOrder" : true,
"items" : {
- "$ref" : "#/definitions/FilterRule"
+ "$ref" : "#/definitions/Tiering"
}
- }
- },
- "required" : [ "Rules" ]
- },
- "FilterRule" : {
- "type" : "object",
- "description" : "Specifies the Amazon S3 object key name to filter on and whether to filter on the suffix or prefix of the key name.",
- "additionalProperties" : false,
- "properties" : {
- "Name" : {
- "type" : "string",
- "maxLength" : 1024
},
- "Value" : {
+ "Id" : {
+ "type" : "string"
+ },
+ "Prefix" : {
"type" : "string"
}
},
- "required" : [ "Value", "Name" ]
+ "required" : [ "Status", "Tierings", "Id" ]
},
- "ObjectLockConfiguration" : {
+ "PublicAccessBlockConfiguration" : {
"type" : "object",
"additionalProperties" : false,
"properties" : {
- "ObjectLockEnabled" : {
- "type" : "string",
- "const" : "Enabled"
+ "RestrictPublicBuckets" : {
+ "type" : "boolean"
},
- "Rule" : {
- "$ref" : "#/definitions/ObjectLockRule"
- }
- }
- },
- "ObjectLockRule" : {
- "type" : "object",
- "description" : "The Object Lock rule in place for the specified object.",
- "additionalProperties" : false,
- "properties" : {
- "DefaultRetention" : {
- "$ref" : "#/definitions/DefaultRetention"
+ "IgnorePublicAcls" : {
+ "type" : "boolean"
+ },
+ "BlockPublicPolicy" : {
+ "type" : "boolean"
+ },
+ "BlockPublicAcls" : {
+ "type" : "boolean"
}
}
},
- "DefaultRetention" : {
+ "NoncurrentVersionTransition" : {
"type" : "object",
- "description" : "The default retention period that you want to apply to new objects placed in the specified bucket.",
"additionalProperties" : false,
"properties" : {
- "Years" : {
+ "TransitionInDays" : {
"type" : "integer"
},
- "Days" : {
- "type" : "integer"
+ "StorageClass" : {
+ "type" : "string"
},
- "Mode" : {
- "type" : "string",
- "enum" : [ "COMPLIANCE", "GOVERNANCE" ]
- }
- }
- },
- "OwnershipControls" : {
- "type" : "object",
- "additionalProperties" : false,
- "properties" : {
- "Rules" : {
- "type" : "array",
- "uniqueItems" : true,
- "insertionOrder" : true,
- "items" : {
- "$ref" : "#/definitions/OwnershipControlsRule"
- }
+ "NewerNoncurrentVersions" : {
+ "type" : "integer"
}
},
- "required" : [ "Rules" ]
+ "required" : [ "StorageClass", "TransitionInDays" ]
},
- "OwnershipControlsRule" : {
+ "StorageClassAnalysis" : {
"type" : "object",
"additionalProperties" : false,
"properties" : {
- "ObjectOwnership" : {
- "description" : "Specifies an object ownership rule.",
- "type" : "string",
- "enum" : [ "ObjectWriter", "BucketOwnerPreferred", "BucketOwnerEnforced" ]
+ "DataExport" : {
+ "$ref" : "#/definitions/DataExport"
}
}
},
- "PublicAccessBlockConfiguration" : {
- "description" : "Configuration that defines how Amazon S3 handles public access.",
+ "ServerSideEncryptionByDefault" : {
"type" : "object",
"additionalProperties" : false,
"properties" : {
- "BlockPublicAcls" : {
- "type" : "boolean",
- "description" : "Specifies whether Amazon S3 should block public access control lists (ACLs) for this bucket and objects in this bucket. Setting this element to TRUE causes the following behavior:\n- PUT Bucket acl and PUT Object acl calls fail if the specified ACL is public.\n - PUT Object calls fail if the request includes a public ACL.\nEnabling this setting doesn't affect existing policies or ACLs."
- },
- "BlockPublicPolicy" : {
- "type" : "boolean",
- "description" : "Specifies whether Amazon S3 should block public bucket policies for this bucket. Setting this element to TRUE causes Amazon S3 to reject calls to PUT Bucket policy if the specified bucket policy allows public access.\nEnabling this setting doesn't affect existing bucket policies."
- },
- "IgnorePublicAcls" : {
- "type" : "boolean",
- "description" : "Specifies whether Amazon S3 should ignore public ACLs for this bucket and objects in this bucket. Setting this element to TRUE causes Amazon S3 to ignore all public ACLs on this bucket and objects in this bucket.\nEnabling this setting doesn't affect the persistence of any existing ACLs and doesn't prevent new public ACLs from being set."
+ "SSEAlgorithm" : {
+ "type" : "string"
},
- "RestrictPublicBuckets" : {
- "type" : "boolean",
- "description" : "Specifies whether Amazon S3 should restrict public bucket policies for this bucket. Setting this element to TRUE restricts access to this bucket to only AWS services and authorized users within this account if the bucket has a public policy.\nEnabling this setting doesn't affect previously stored bucket policies, except that public and cross-account access within any public bucket policy, including non-public delegation to specific accounts, is blocked."
+ "KMSMasterKeyID" : {
+ "type" : "string"
}
- }
+ },
+ "required" : [ "SSEAlgorithm" ]
},
- "ReplicationConfiguration" : {
+ "MetricsConfiguration" : {
"type" : "object",
- "description" : "A container for replication rules. You can add up to 1,000 rules. The maximum size of a replication configuration is 2 MB.",
"additionalProperties" : false,
"properties" : {
- "Role" : {
- "description" : "The Amazon Resource Name (ARN) of the AWS Identity and Access Management (IAM) role that Amazon S3 assumes when replicating objects.",
- "type" : "string"
- },
- "Rules" : {
- "description" : "A container for one or more replication rules.",
+ "TagFilters" : {
"type" : "array",
"uniqueItems" : true,
- "insertionOrder" : true,
"items" : {
- "$ref" : "#/definitions/ReplicationRule",
- "maxLength" : 1000,
- "minLength" : 1
+ "$ref" : "#/definitions/TagFilter"
}
- }
- },
- "required" : [ "Role", "Rules" ]
- },
- "ReplicationRule" : {
- "type" : "object",
- "description" : "Specifies which Amazon S3 objects to replicate and where to store the replicas.",
- "additionalProperties" : false,
- "properties" : {
- "DeleteMarkerReplication" : {
- "$ref" : "#/definitions/DeleteMarkerReplication"
- },
- "Destination" : {
- "$ref" : "#/definitions/ReplicationDestination"
- },
- "Filter" : {
- "$ref" : "#/definitions/ReplicationRuleFilter"
},
"Id" : {
- "description" : "A unique identifier for the rule.",
- "type" : "string",
- "maxLength" : 255
+ "type" : "string"
},
"Prefix" : {
- "description" : "An object key name prefix that identifies the object or objects to which the rule applies.",
- "type" : "string",
- "maxLength" : 1024
- },
- "Priority" : {
- "type" : "integer"
- },
- "SourceSelectionCriteria" : {
- "$ref" : "#/definitions/SourceSelectionCriteria"
+ "type" : "string"
},
- "Status" : {
- "description" : "Specifies whether the rule is enabled.",
- "type" : "string",
- "enum" : [ "Disabled", "Enabled" ]
+ "AccessPointArn" : {
+ "type" : "string"
}
},
- "required" : [ "Destination", "Status" ]
+ "required" : [ "Id" ]
},
- "DeleteMarkerReplication" : {
+ "ObjectLockConfiguration" : {
"type" : "object",
"additionalProperties" : false,
"properties" : {
- "Status" : {
- "type" : "string",
- "enum" : [ "Disabled", "Enabled" ]
+ "ObjectLockEnabled" : {
+ "type" : "string"
+ },
+ "Rule" : {
+ "$ref" : "#/definitions/ObjectLockRule"
}
}
},
- "ReplicationDestination" : {
+ "LoggingConfiguration" : {
"type" : "object",
- "description" : "Specifies which Amazon S3 bucket to store replicated objects in and their storage class.",
"additionalProperties" : false,
"properties" : {
- "AccessControlTranslation" : {
- "$ref" : "#/definitions/AccessControlTranslation"
- },
- "Account" : {
+ "DestinationBucketName" : {
"type" : "string"
},
- "Bucket" : {
+ "LogFilePrefix" : {
"type" : "string"
- },
- "EncryptionConfiguration" : {
- "$ref" : "#/definitions/EncryptionConfiguration"
- },
- "Metrics" : {
- "$ref" : "#/definitions/Metrics"
- },
- "ReplicationTime" : {
- "$ref" : "#/definitions/ReplicationTime"
- },
- "StorageClass" : {
- "description" : "The storage class to use when replicating objects, such as S3 Standard or reduced redundancy.",
- "type" : "string",
- "enum" : [ "DEEP_ARCHIVE", "GLACIER", "GLACIER_IR", "INTELLIGENT_TIERING", "ONEZONE_IA", "REDUCED_REDUNDANCY", "STANDARD", "STANDARD_IA" ]
}
- },
- "required" : [ "Bucket" ]
- },
- "AccessControlTranslation" : {
- "type" : "object",
- "description" : "Specify this only in a cross-account scenario (where source and destination bucket owners are not the same), and you want to change replica ownership to the AWS account that owns the destination bucket. If this is not specified in the replication configuration, the replicas are owned by same AWS account that owns the source object.",
- "additionalProperties" : false,
- "properties" : {
- "Owner" : {
- "type" : "string",
- "const" : "Destination"
- }
- },
- "required" : [ "Owner" ]
+ }
},
- "EncryptionConfiguration" : {
+ "LambdaConfiguration" : {
"type" : "object",
- "description" : "Specifies encryption-related information for an Amazon S3 bucket that is a destination for replicated objects.",
"additionalProperties" : false,
"properties" : {
- "ReplicaKmsKeyID" : {
- "description" : "Specifies the ID (Key ARN or Alias ARN) of the customer managed customer master key (CMK) stored in AWS Key Management Service (KMS) for the destination bucket.",
+ "Function" : {
"type" : "string"
+ },
+ "Event" : {
+ "type" : "string"
+ },
+ "Filter" : {
+ "$ref" : "#/definitions/NotificationFilter"
}
},
- "required" : [ "ReplicaKmsKeyID" ]
+ "required" : [ "Function", "Event" ]
},
- "Metrics" : {
+ "Tiering" : {
"type" : "object",
"additionalProperties" : false,
"properties" : {
- "EventThreshold" : {
- "$ref" : "#/definitions/ReplicationTimeValue"
+ "AccessTier" : {
+ "type" : "string"
},
- "Status" : {
- "type" : "string",
- "enum" : [ "Disabled", "Enabled" ]
+ "Days" : {
+ "type" : "integer"
}
},
- "required" : [ "Status" ]
+ "required" : [ "AccessTier", "Days" ]
},
- "ReplicationTimeValue" : {
+ "DataExport" : {
"type" : "object",
"additionalProperties" : false,
"properties" : {
- "Minutes" : {
- "type" : "integer"
+ "Destination" : {
+ "$ref" : "#/definitions/Destination"
+ },
+ "OutputSchemaVersion" : {
+ "type" : "string"
}
},
- "required" : [ "Minutes" ]
+ "required" : [ "Destination", "OutputSchemaVersion" ]
},
"ReplicationTime" : {
"type" : "object",
"additionalProperties" : false,
"properties" : {
"Status" : {
- "type" : "string",
- "enum" : [ "Disabled", "Enabled" ]
+ "type" : "string"
},
"Time" : {
"$ref" : "#/definitions/ReplicationTimeValue"
@@ -1062,236 +779,268 @@
"type" : "object",
"additionalProperties" : false,
"properties" : {
- "And" : {
- "$ref" : "#/definitions/ReplicationRuleAndOperator"
- },
"Prefix" : {
"type" : "string"
},
+ "And" : {
+ "$ref" : "#/definitions/ReplicationRuleAndOperator"
+ },
"TagFilter" : {
"$ref" : "#/definitions/TagFilter"
}
}
},
- "ReplicationRuleAndOperator" : {
+ "RedirectRule" : {
"type" : "object",
"additionalProperties" : false,
"properties" : {
- "Prefix" : {
+ "ReplaceKeyWith" : {
"type" : "string"
},
- "TagFilters" : {
+ "HttpRedirectCode" : {
+ "type" : "string"
+ },
+ "Protocol" : {
+ "type" : "string"
+ },
+ "HostName" : {
+ "type" : "string"
+ },
+ "ReplaceKeyPrefixWith" : {
+ "type" : "string"
+ }
+ }
+ },
+ "EncryptionConfiguration" : {
+ "type" : "object",
+ "additionalProperties" : false,
+ "properties" : {
+ "ReplicaKmsKeyID" : {
+ "type" : "string"
+ }
+ },
+ "required" : [ "ReplicaKmsKeyID" ]
+ },
+ "BucketEncryption" : {
+ "type" : "object",
+ "additionalProperties" : false,
+ "properties" : {
+ "ServerSideEncryptionConfiguration" : {
"type" : "array",
"uniqueItems" : true,
- "insertionOrder" : true,
"items" : {
- "$ref" : "#/definitions/TagFilter"
+ "$ref" : "#/definitions/ServerSideEncryptionRule"
}
}
- }
+ },
+ "required" : [ "ServerSideEncryptionConfiguration" ]
},
- "SourceSelectionCriteria" : {
- "description" : "A container that describes additional filters for identifying the source objects that you want to replicate.",
+ "NotificationConfiguration" : {
"type" : "object",
"additionalProperties" : false,
"properties" : {
- "ReplicaModifications" : {
- "description" : "A filter that you can specify for selection for modifications on replicas.",
- "$ref" : "#/definitions/ReplicaModifications"
+ "QueueConfigurations" : {
+ "type" : "array",
+ "uniqueItems" : true,
+ "items" : {
+ "$ref" : "#/definitions/QueueConfiguration"
+ }
},
- "SseKmsEncryptedObjects" : {
- "description" : "A container for filter information for the selection of Amazon S3 objects encrypted with AWS KMS.",
- "$ref" : "#/definitions/SseKmsEncryptedObjects"
+ "LambdaConfigurations" : {
+ "type" : "array",
+ "uniqueItems" : true,
+ "items" : {
+ "$ref" : "#/definitions/LambdaConfiguration"
+ }
+ },
+ "EventBridgeConfiguration" : {
+ "$ref" : "#/definitions/EventBridgeConfiguration"
+ },
+ "TopicConfigurations" : {
+ "type" : "array",
+ "uniqueItems" : true,
+ "items" : {
+ "$ref" : "#/definitions/TopicConfiguration"
+ }
}
}
},
- "ReplicaModifications" : {
+ "LifecycleConfiguration" : {
"type" : "object",
"additionalProperties" : false,
"properties" : {
- "Status" : {
- "description" : "Specifies whether Amazon S3 replicates modifications on replicas.",
- "type" : "string",
- "enum" : [ "Enabled", "Disabled" ]
+ "Rules" : {
+ "type" : "array",
+ "uniqueItems" : true,
+ "items" : {
+ "$ref" : "#/definitions/Rule"
+ }
}
},
- "required" : [ "Status" ]
+ "required" : [ "Rules" ]
},
- "SseKmsEncryptedObjects" : {
+ "InventoryConfiguration" : {
"type" : "object",
- "description" : "A container for filter information for the selection of S3 objects encrypted with AWS KMS.",
"additionalProperties" : false,
"properties" : {
- "Status" : {
- "description" : "Specifies whether Amazon S3 replicates objects created with server-side encryption using a customer master key (CMK) stored in AWS Key Management Service.",
- "type" : "string",
- "enum" : [ "Disabled", "Enabled" ]
+ "Destination" : {
+ "$ref" : "#/definitions/Destination"
+ },
+ "OptionalFields" : {
+ "type" : "array",
+ "uniqueItems" : true,
+ "items" : {
+ "type" : "string"
+ }
+ },
+ "IncludedObjectVersions" : {
+ "type" : "string"
+ },
+ "Enabled" : {
+ "type" : "boolean"
+ },
+ "Id" : {
+ "type" : "string"
+ },
+ "Prefix" : {
+ "type" : "string"
+ },
+ "ScheduleFrequency" : {
+ "type" : "string"
}
},
- "required" : [ "Status" ]
+ "required" : [ "Destination", "IncludedObjectVersions", "Enabled", "Id", "ScheduleFrequency" ]
},
- "Tag" : {
+ "ReplicationRuleAndOperator" : {
"type" : "object",
"additionalProperties" : false,
"properties" : {
- "Key" : {
- "type" : "string",
- "minLength" : 1,
- "maxLength" : 128
+ "TagFilters" : {
+ "type" : "array",
+ "uniqueItems" : true,
+ "items" : {
+ "$ref" : "#/definitions/TagFilter"
+ }
},
- "Value" : {
- "type" : "string",
- "minLength" : 1,
- "maxLength" : 256
+ "Prefix" : {
+ "type" : "string"
}
- },
- "required" : [ "Value", "Key" ]
+ }
},
"VersioningConfiguration" : {
- "description" : "Describes the versioning state of an Amazon S3 bucket.",
"type" : "object",
"additionalProperties" : false,
"properties" : {
"Status" : {
- "description" : "The versioning state of the bucket.",
- "type" : "string",
- "default" : "Suspended",
- "enum" : [ "Enabled", "Suspended" ]
+ "type" : "string"
}
},
"required" : [ "Status" ]
},
- "WebsiteConfiguration" : {
+ "CorsConfiguration" : {
"type" : "object",
- "description" : "Specifies website configuration parameters for an Amazon S3 bucket.",
"additionalProperties" : false,
"properties" : {
- "ErrorDocument" : {
- "description" : "The name of the error document for the website.",
- "type" : "string"
- },
- "IndexDocument" : {
- "description" : "The name of the index document for the website.",
- "type" : "string"
- },
- "RoutingRules" : {
+ "CorsRules" : {
"type" : "array",
- "insertionOrder" : true,
+ "uniqueItems" : true,
"items" : {
- "$ref" : "#/definitions/RoutingRule"
+ "$ref" : "#/definitions/CorsRule"
}
- },
- "RedirectAllRequestsTo" : {
- "$ref" : "#/definitions/RedirectAllRequestsTo"
}
- }
+ },
+ "required" : [ "CorsRules" ]
},
- "RoutingRule" : {
- "description" : "Specifies the redirect behavior and when a redirect is applied.",
+ "ReplicaModifications" : {
"type" : "object",
"additionalProperties" : false,
"properties" : {
- "RedirectRule" : {
- "description" : "Container for redirect information. You can redirect requests to another host, to another page, or with another protocol. In the event of an error, you can specify a different error code to return.",
- "$ref" : "#/definitions/RedirectRule"
+ "Status" : {
+ "type" : "string"
+ }
+ },
+ "required" : [ "Status" ]
+ },
+ "NoncurrentVersionExpiration" : {
+ "type" : "object",
+ "additionalProperties" : false,
+ "properties" : {
+ "NoncurrentDays" : {
+ "type" : "integer"
},
- "RoutingRuleCondition" : {
- "$ref" : "#/definitions/RoutingRuleCondition"
+ "NewerNoncurrentVersions" : {
+ "type" : "integer"
}
},
- "required" : [ "RedirectRule" ]
+ "required" : [ "NoncurrentDays" ]
},
- "RedirectRule" : {
+ "QueueConfiguration" : {
"type" : "object",
- "description" : "Specifies how requests are redirected. In the event of an error, you can specify a different error code to return.",
"additionalProperties" : false,
"properties" : {
- "HostName" : {
- "description" : "The host name to use in the redirect request.",
+ "Event" : {
"type" : "string"
},
- "HttpRedirectCode" : {
- "description" : "The HTTP redirect code to use on the response. Not required if one of the siblings is present.",
- "type" : "string"
+ "Filter" : {
+ "$ref" : "#/definitions/NotificationFilter"
},
- "Protocol" : {
- "description" : "Protocol to use when redirecting requests. The default is the protocol that is used in the original request.",
- "enum" : [ "http", "https" ],
+ "Queue" : {
"type" : "string"
- },
- "ReplaceKeyPrefixWith" : {
- "description" : "The object key prefix to use in the redirect request.",
+ }
+ },
+ "required" : [ "Event", "Queue" ]
+ },
+ "Transition" : {
+ "type" : "object",
+ "additionalProperties" : false,
+ "properties" : {
+ "TransitionDate" : {
"type" : "string"
},
- "ReplaceKeyWith" : {
- "description" : "The specific object key to use in the redirect request.d",
+ "TransitionInDays" : {
+ "type" : "integer"
+ },
+ "StorageClass" : {
"type" : "string"
}
- }
+ },
+ "required" : [ "StorageClass" ]
},
- "RoutingRuleCondition" : {
- "description" : "A container for describing a condition that must be met for the specified redirect to apply.You must specify at least one of HttpErrorCodeReturnedEquals and KeyPrefixEquals",
+ "SseKmsEncryptedObjects" : {
"type" : "object",
"additionalProperties" : false,
"properties" : {
- "KeyPrefixEquals" : {
- "description" : "The object key name prefix when the redirect is applied.",
- "type" : "string"
- },
- "HttpErrorCodeReturnedEquals" : {
- "description" : "The HTTP error code when the redirect is applied. ",
+ "Status" : {
"type" : "string"
}
- }
+ },
+ "required" : [ "Status" ]
},
- "RedirectAllRequestsTo" : {
- "description" : "Specifies the redirect behavior of all requests to a website endpoint of an Amazon S3 bucket.",
+ "Tag" : {
"type" : "object",
"additionalProperties" : false,
"properties" : {
- "HostName" : {
- "description" : "Name of the host where requests are redirected.",
+ "Value" : {
"type" : "string"
},
- "Protocol" : {
- "description" : "Protocol to use when redirecting requests. The default is the protocol that is used in the original request.",
- "type" : "string",
- "enum" : [ "http", "https" ]
+ "Key" : {
+ "type" : "string"
}
},
- "required" : [ "HostName" ]
+ "required" : [ "Value", "Key" ]
},
- "Arn" : {
- "description" : "the Amazon Resource Name (ARN) of the specified bucket.",
- "type" : "string"
+ "AbortIncompleteMultipartUpload" : {
+ "type" : "object",
+ "additionalProperties" : false,
+ "properties" : {
+ "DaysAfterInitiation" : {
+ "type" : "integer"
+ }
+ },
+ "required" : [ "DaysAfterInitiation" ]
}
},
- "tagging" : {
- "taggable" : true,
- "tagOnCreate" : true,
- "tagUpdatable" : true,
- "cloudFormationSystemTags" : true,
- "tagProperty" : "/properties/Tags"
- },
- "createOnlyProperties" : [ "/properties/BucketName", "/properties/ObjectLockEnabled" ],
- "primaryIdentifier" : [ "/properties/BucketName" ],
- "readOnlyProperties" : [ "/properties/Arn", "/properties/DomainName", "/properties/DualStackDomainName", "/properties/RegionalDomainName", "/properties/WebsiteURL" ],
- "writeOnlyProperties" : [ "/properties/AccessControl", "/properties/LifecycleConfiguration/Rules/*/NoncurrentVersionExpirationInDays", "/properties/LifecycleConfiguration/Rules/*/NoncurrentVersionTransition", "/properties/LifecycleConfiguration/Rules/*/Transition", "/properties/ReplicationConfiguration/Rules/*/Prefix" ],
- "handlers" : {
- "create" : {
- "permissions" : [ "s3:CreateBucket", "s3:PutBucketTagging", "s3:PutAnalyticsConfiguration", "s3:PutEncryptionConfiguration", "s3:PutBucketCORS", "s3:PutInventoryConfiguration", "s3:PutLifecycleConfiguration", "s3:PutMetricsConfiguration", "s3:PutBucketNotification", "s3:PutBucketReplication", "s3:PutBucketWebsite", "s3:PutAccelerateConfiguration", "s3:PutBucketPublicAccessBlock", "s3:PutReplicationConfiguration", "s3:PutObjectAcl", "s3:PutBucketObjectLockConfiguration", "s3:GetBucketAcl", "s3:ListBucket", "iam:PassRole", "s3:DeleteObject", "s3:PutBucketLogging", "s3:PutBucketVersioning", "s3:PutObjectLockConfiguration", "s3:PutBucketOwnershipControls", "s3:PutIntelligentTieringConfiguration" ]
- },
- "read" : {
- "permissions" : [ "s3:GetAccelerateConfiguration", "s3:GetLifecycleConfiguration", "s3:GetBucketPublicAccessBlock", "s3:GetAnalyticsConfiguration", "s3:GetBucketCORS", "s3:GetEncryptionConfiguration", "s3:GetInventoryConfiguration", "s3:GetBucketLogging", "s3:GetMetricsConfiguration", "s3:GetBucketNotification", "s3:GetBucketVersioning", "s3:GetReplicationConfiguration", "S3:GetBucketWebsite", "s3:GetBucketPublicAccessBlock", "s3:GetBucketObjectLockConfiguration", "s3:GetBucketTagging", "s3:GetBucketOwnershipControls", "s3:GetIntelligentTieringConfiguration", "s3:ListBucket" ]
- },
- "update" : {
- "permissions" : [ "s3:PutBucketAcl", "s3:PutBucketTagging", "s3:PutAnalyticsConfiguration", "s3:PutEncryptionConfiguration", "s3:PutBucketCORS", "s3:PutInventoryConfiguration", "s3:PutLifecycleConfiguration", "s3:PutMetricsConfiguration", "s3:PutBucketNotification", "s3:PutBucketReplication", "s3:PutBucketWebsite", "s3:PutAccelerateConfiguration", "s3:PutBucketPublicAccessBlock", "s3:PutReplicationConfiguration", "s3:PutBucketOwnershipControls", "s3:PutIntelligentTieringConfiguration", "s3:DeleteBucketWebsite", "s3:PutBucketLogging", "s3:PutBucketVersioning", "s3:PutObjectLockConfiguration", "s3:PutBucketObjectLockConfiguration", "s3:DeleteBucketAnalyticsConfiguration", "s3:DeleteBucketCors", "s3:DeleteBucketMetricsConfiguration", "s3:DeleteBucketEncryption", "s3:DeleteBucketLifecycle", "s3:DeleteBucketReplication", "iam:PassRole", "s3:ListBucket" ]
- },
- "delete" : {
- "permissions" : [ "s3:DeleteBucket", "s3:ListBucket" ]
- },
- "list" : {
- "permissions" : [ "s3:ListAllMyBuckets" ]
- }
- }
+ "createOnlyProperties" : [ "/properties/ObjectLockEnabled", "/properties/BucketName" ],
+ "primaryIdentifier" : [ "/properties/Id" ],
+ "readOnlyProperties" : [ "/properties/RegionalDomainName", "/properties/Id", "/properties/WebsiteURL", "/properties/Arn", "/properties/DomainName", "/properties/DualStackDomainName" ]
}
\ No newline at end of file
diff --git a/aws-cloudformation-schema/aws-sagemaker-dataqualityjobdefinition.json b/aws-cloudformation-schema/aws-sagemaker-dataqualityjobdefinition.json
index 43e1c7d1c2..fd55384668 100644
--- a/aws-cloudformation-schema/aws-sagemaker-dataqualityjobdefinition.json
+++ b/aws-cloudformation-schema/aws-sagemaker-dataqualityjobdefinition.json
@@ -195,6 +195,11 @@
"type" : "string",
"description" : "Whether the Pipe or File is used as the input mode for transfering data for the monitoring job. Pipe mode is recommended for large datasets. File mode is useful for small files that fit in memory. Defaults to File.",
"enum" : [ "Pipe", "File" ]
+ },
+ "ExcludeFeaturesAttribute" : {
+ "type" : "string",
+ "description" : "Indexes or names of the features to be excluded from analysis",
+ "maxLength" : 100
}
},
"required" : [ "EndpointName", "LocalPath" ]
@@ -228,6 +233,11 @@
"type" : "string",
"description" : "Whether the Pipe or File is used as the input mode for transfering data for the monitoring job. Pipe mode is recommended for large datasets. File mode is useful for small files that fit in memory. Defaults to File.",
"enum" : [ "Pipe", "File" ]
+ },
+ "ExcludeFeaturesAttribute" : {
+ "type" : "string",
+ "description" : "Indexes or names of the features to be excluded from analysis",
+ "maxLength" : 100
}
},
"required" : [ "DataCapturedDestinationS3Uri", "DatasetFormat", "LocalPath" ]
diff --git a/aws-cloudformation-schema/aws-sagemaker-monitoringschedule.json b/aws-cloudformation-schema/aws-sagemaker-monitoringschedule.json
index c50f41288a..09f0e3dfb5 100644
--- a/aws-cloudformation-schema/aws-sagemaker-monitoringschedule.json
+++ b/aws-cloudformation-schema/aws-sagemaker-monitoringschedule.json
@@ -264,6 +264,11 @@
"type" : "string",
"description" : "Whether the Pipe or File is used as the input mode for transfering data for the monitoring job. Pipe mode is recommended for large datasets. File mode is useful for small files that fit in memory. Defaults to File.",
"enum" : [ "Pipe", "File" ]
+ },
+ "ExcludeFeaturesAttribute" : {
+ "type" : "string",
+ "description" : "Indexes or names of the features to be excluded from analysis",
+ "maxLength" : 100
}
},
"required" : [ "EndpointName", "LocalPath" ]
@@ -297,6 +302,11 @@
"type" : "string",
"description" : "Whether the Pipe or File is used as the input mode for transfering data for the monitoring job. Pipe mode is recommended for large datasets. File mode is useful for small files that fit in memory. Defaults to File.",
"enum" : [ "Pipe", "File" ]
+ },
+ "ExcludeFeaturesAttribute" : {
+ "type" : "string",
+ "description" : "Indexes or names of the features to be excluded from analysis",
+ "maxLength" : 100
}
},
"required" : [ "DataCapturedDestinationS3Uri", "DatasetFormat", "LocalPath" ]
@@ -469,14 +479,29 @@
"description" : "Configuration details about the monitoring schedule.",
"properties" : {
"ScheduleExpression" : {
- "description" : "A cron expression that describes details about the monitoring schedule.",
+ "description" : "A cron expression or 'NOW' that describes details about the monitoring schedule.",
"type" : "string",
"minLength" : 1,
"maxLength" : 256
+ },
+ "DataAnalysisStartTime" : {
+ "description" : "Data Analysis start time, e.g. -PT1H",
+ "$ref" : "#/definitions/DataAnalysisTimeString"
+ },
+ "DataAnalysisEndTime" : {
+ "description" : "Data Analysis end time, e.g. PT0H",
+ "$ref" : "#/definitions/DataAnalysisTimeString"
}
},
"required" : [ "ScheduleExpression" ]
},
+ "DataAnalysisTimeString" : {
+ "type" : "string",
+ "description" : "Analysis time in ISO duration format",
+ "pattern" : "^.?P.*",
+ "minLength" : 1,
+ "maxLength" : 15
+ },
"Tag" : {
"description" : "A key-value pair to associate with a resource.",
"type" : "object",
diff --git a/aws-cloudformation-schema/aws-scheduler-schedulegroup.json b/aws-cloudformation-schema/aws-scheduler-schedulegroup.json
index 50d32787f9..9395cd778d 100644
--- a/aws-cloudformation-schema/aws-scheduler-schedulegroup.json
+++ b/aws-cloudformation-schema/aws-scheduler-schedulegroup.json
@@ -71,7 +71,7 @@
"primaryIdentifier" : [ "/properties/Name" ],
"handlers" : {
"create" : {
- "permissions" : [ "scheduler:CreateScheduleGroup", "scheduler:GetScheduleGroup", "scheduler:ListTagsForResource" ]
+ "permissions" : [ "scheduler:TagResource", "scheduler:CreateScheduleGroup", "scheduler:GetScheduleGroup", "scheduler:ListTagsForResource" ]
},
"read" : {
"permissions" : [ "scheduler:GetScheduleGroup", "scheduler:ListTagsForResource" ]
diff --git a/aws-cloudformation-schema/aws-servicecatalogappregistry-attributegroupassociation.json b/aws-cloudformation-schema/aws-servicecatalogappregistry-attributegroupassociation.json
index e1e9fd92d1..722f680ef9 100644
--- a/aws-cloudformation-schema/aws-servicecatalogappregistry-attributegroupassociation.json
+++ b/aws-cloudformation-schema/aws-servicecatalogappregistry-attributegroupassociation.json
@@ -1,7 +1,7 @@
{
"typeName" : "AWS::ServiceCatalogAppRegistry::AttributeGroupAssociation",
"description" : "Resource Schema for AWS::ServiceCatalogAppRegistry::AttributeGroupAssociation.",
- "sourceUrl" : "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-servicecatalog-appregistry.git",
+ "sourceUrl" : "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-servicecatalog-appregistry",
"documentationUrl" : "https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-appregistry-attributegroupassociation.html",
"properties" : {
"Application" : {
@@ -25,26 +25,39 @@
"AttributeGroupArn" : {
"type" : "string",
"pattern" : "arn:aws[-a-z]*:servicecatalog:[a-z]{2}(-gov)?-[a-z]+-\\d:\\d{12}:/attribute-groups/[a-z0-9]+"
- },
- "Id" : {
- "type" : "string"
}
},
"additionalProperties" : false,
"required" : [ "Application", "AttributeGroup" ],
- "readOnlyProperties" : [ "/properties/ApplicationArn", "/properties/AttributeGroupArn", "/properties/Id" ],
+ "readOnlyProperties" : [ "/properties/ApplicationArn", "/properties/AttributeGroupArn" ],
"createOnlyProperties" : [ "/properties/Application", "/properties/AttributeGroup" ],
- "primaryIdentifier" : [ "/properties/Id" ],
- "taggable" : false,
+ "primaryIdentifier" : [ "/properties/ApplicationArn", "/properties/AttributeGroupArn" ],
+ "tagging" : {
+ "taggable" : false,
+ "tagOnCreate" : false,
+ "tagUpdatable" : false,
+ "cloudFormationSystemTags" : false
+ },
"handlers" : {
"create" : {
"permissions" : [ "servicecatalog:AssociateAttributeGroup" ]
},
"read" : {
- "permissions" : [ "servicecatalog:ListAssociatedAttributeGroups" ]
+ "permissions" : [ "servicecatalog:ListAttributeGroupsForApplication" ]
},
"delete" : {
"permissions" : [ "servicecatalog:DisassociateAttributeGroup" ]
+ },
+ "list" : {
+ "permissions" : [ "servicecatalog:ListAttributeGroupsForApplication" ],
+ "handlerSchema" : {
+ "properties" : {
+ "ApplicationArn" : {
+ "$ref" : "resource-schema.json#/properties/ApplicationArn"
+ }
+ },
+ "required" : [ "ApplicationArn" ]
+ }
}
}
}
\ No newline at end of file
diff --git a/aws-cloudformation-schema/aws-servicecatalogappregistry-resourceassociation.json b/aws-cloudformation-schema/aws-servicecatalogappregistry-resourceassociation.json
index 6e8f5c6479..2447d706ee 100644
--- a/aws-cloudformation-schema/aws-servicecatalogappregistry-resourceassociation.json
+++ b/aws-cloudformation-schema/aws-servicecatalogappregistry-resourceassociation.json
@@ -1,7 +1,7 @@
{
"typeName" : "AWS::ServiceCatalogAppRegistry::ResourceAssociation",
"description" : "Resource Schema for AWS::ServiceCatalogAppRegistry::ResourceAssociation",
- "sourceUrl" : "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-servicecatalog-appregistry.git",
+ "sourceUrl" : "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-servicecatalog-appregistry",
"documentationUrl" : "https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-appregistry-resourceassociation.html",
"properties" : {
"Application" : {
@@ -28,17 +28,19 @@
"ResourceArn" : {
"type" : "string",
"pattern" : "arn:aws[-a-z]*:cloudformation:[a-z]{2}(-gov)?-[a-z]+-\\d:\\d{12}:stack/[a-zA-Z][-A-Za-z0-9]{0,127}/[0-9a-f]{8}(-[0-9a-f]{4}){3}-[0-9a-f]{12}"
- },
- "Id" : {
- "type" : "string"
}
},
"additionalProperties" : false,
"required" : [ "Application", "Resource", "ResourceType" ],
- "readOnlyProperties" : [ "/properties/ApplicationArn", "/properties/ResourceArn", "/properties/Id" ],
+ "readOnlyProperties" : [ "/properties/ApplicationArn", "/properties/ResourceArn" ],
"createOnlyProperties" : [ "/properties/Application", "/properties/Resource", "/properties/ResourceType" ],
- "primaryIdentifier" : [ "/properties/Id" ],
- "taggable" : false,
+ "primaryIdentifier" : [ "/properties/ApplicationArn", "/properties/ResourceArn", "/properties/ResourceType" ],
+ "tagging" : {
+ "taggable" : false,
+ "tagOnCreate" : false,
+ "tagUpdatable" : false,
+ "cloudFormationSystemTags" : false
+ },
"handlers" : {
"create" : {
"permissions" : [ "servicecatalog:AssociateResource", "cloudformation:DescribeStacks" ]
@@ -48,6 +50,17 @@
},
"delete" : {
"permissions" : [ "servicecatalog:DisassociateResource" ]
+ },
+ "list" : {
+ "permissions" : [ "servicecatalog:ListAssociatedResources" ],
+ "handlerSchema" : {
+ "properties" : {
+ "ApplicationArn" : {
+ "$ref" : "resource-schema.json#/properties/ApplicationArn"
+ }
+ },
+ "required" : [ "ApplicationArn" ]
+ }
}
}
}
\ No newline at end of file
diff --git a/aws-cloudformation-schema/aws-sns-topic.json b/aws-cloudformation-schema/aws-sns-topic.json
index 4c4f367a8e..8dba6f534e 100644
--- a/aws-cloudformation-schema/aws-sns-topic.json
+++ b/aws-cloudformation-schema/aws-sns-topic.json
@@ -33,6 +33,10 @@
"description" : "Enables content-based deduplication for FIFO topics. By default, ContentBasedDeduplication is set to false. If you create a FIFO topic and this attribute is false, you must specify a value for the MessageDeduplicationId parameter for the Publish action.\n\nWhen you set ContentBasedDeduplication to true, Amazon SNS uses a SHA-256 hash to generate the MessageDeduplicationId using the body of the message (but not the attributes of the message).\n\n(Optional) To override the generated value, you can specify a value for the the MessageDeduplicationId parameter for the Publish action.\n\n",
"type" : "boolean"
},
+ "ArchivePolicy" : {
+ "description" : "The archive policy determines the number of days Amazon SNS retains messages. You can set a retention period from 1 to 365 days.",
+ "type" : "object"
+ },
"Tags" : {
"type" : "array",
"uniqueItems" : false,
diff --git a/aws-cloudformation-schema/aws-sqs-queuepolicy.json b/aws-cloudformation-schema/aws-sqs-queuepolicy.json
index 430f9dd7fe..89237db2a1 100644
--- a/aws-cloudformation-schema/aws-sqs-queuepolicy.json
+++ b/aws-cloudformation-schema/aws-sqs-queuepolicy.json
@@ -1,6 +1,6 @@
{
"typeName" : "AWS::SQS::QueuePolicy",
- "description" : "Resource Type definition for AWS::SQS::QueuePolicy",
+ "description" : "The ``AWS::SQS::QueuePolicy`` type applies a policy to SQS queues. For an example snippet, see [Declaring an policy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/quickref-iam.html#scenario-sqs-policy) in the *User Guide*.",
"sourceUrl" : "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-sqs.git",
"additionalProperties" : false,
"properties" : {
@@ -10,11 +10,11 @@
},
"PolicyDocument" : {
"type" : [ "object", "string" ],
- "description" : "A policy document that contains the permissions for the specified Amazon SQS queues. For more information about Amazon SQS policies, see Creating Custom Policies Using the Access Policy Language in the Amazon Simple Queue Service Developer Guide."
+ "description" : "A policy document that contains the permissions for the specified SQS queues. For more information about SQS policies, see [Using custom policies with the access policy language](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-creating-custom-policies.html) in the *Developer Guide*."
},
"Queues" : {
"type" : "array",
- "description" : "The URLs of the queues to which you want to add the policy. You can use the Ref function to specify an AWS::SQS::Queue resource.",
+ "description" : "The URLs of the queues to which you want to add the policy. You can use the ``Ref`` function to specify an ``AWS::SQS::Queue`` resource.",
"uniqueItems" : false,
"insertionOrder" : false,
"items" : {
diff --git a/provider/cmd/cf2pulumi/schema-full.json b/provider/cmd/cf2pulumi/schema-full.json
index 1362bd7228..464acdd8aa 100644
--- a/provider/cmd/cf2pulumi/schema-full.json
+++ b/provider/cmd/cf2pulumi/schema-full.json
@@ -1803,19 +1803,21 @@
]
},
"aws-native:apigateway:DeploymentAccessLogSetting": {
+ "description": "The ``AccessLogSetting`` property type specifies settings for logging access in this stage.\n ``AccessLogSetting`` is a property of the [StageDescription](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription.html) property type.",
"properties": {
"destinationArn": {
"type": "string",
- "description": "The Amazon Resource Name (ARN) of the CloudWatch Logs log group or Kinesis Data Firehose delivery stream to receive access logs. If you specify a Kinesis Data Firehose delivery stream, the stream name must begin with amazon-apigateway-. "
+ "description": "The Amazon Resource Name (ARN) of the CloudWatch Logs log group or Kinesis Data Firehose delivery stream to receive access logs. If you specify a Kinesis Data Firehose delivery stream, the stream name must begin with ``amazon-apigateway-``."
},
"format": {
"type": "string",
- "description": "A single line format of the access logs of data, as specified by selected $context variables. The format must include at least $context.requestId. "
+ "description": "A single line format of the access logs of data, as specified by selected $context variables. The format must include at least ``$context.requestId``."
}
},
"type": "object"
},
"aws-native:apigateway:DeploymentCanarySetting": {
+ "description": "The ``CanarySetting`` property type specifies settings for the canary deployment in this stage.\n ``CanarySetting`` is a property of the [StageDescription](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription.html) property type.",
"properties": {
"percentTraffic": {
"type": "number",
@@ -1823,49 +1825,51 @@
},
"stageVariableOverrides": {
"$ref": "pulumi.json#/Any",
- "description": "Stage variables overridden for a canary release deployment, including new stage variables introduced in the canary. These stage variables are represented as a string-to-string map between stage variable names and their values. "
+ "description": "Stage variables overridden for a canary release deployment, including new stage variables introduced in the canary. These stage variables are represented as a string-to-string map between stage variable names and their values."
},
"useStageCache": {
"type": "boolean",
- "description": "Whether the canary deployment uses the stage cache or not."
+ "description": "A Boolean flag to indicate whether the canary deployment uses the stage cache or not."
}
},
"type": "object"
},
"aws-native:apigateway:DeploymentCanarySettings": {
+ "description": "The ``DeploymentCanarySettings`` property type specifies settings for the canary deployment.",
"properties": {
"percentTraffic": {
"type": "number",
- "description": "The percentage (0-100) of traffic diverted to a canary deployment."
+ "description": "The percentage (0.0-100.0) of traffic routed to the canary deployment."
},
"stageVariableOverrides": {
"$ref": "pulumi.json#/Any",
- "description": "Stage variables overridden for a canary release deployment, including new stage variables introduced in the canary. These stage variables are represented as a string-to-string map between stage variable names and their values. Duplicates are not allowed."
+ "description": "A stage variable overrides used for the canary release deployment. They can override existing stage variables or add new stage variables for the canary release deployment. These stage variables are represented as a string-to-string map between stage variable names and their values."
},
"useStageCache": {
"type": "boolean",
- "description": "Whether the canary deployment uses the stage cache."
+ "description": "A Boolean flag to indicate whether the canary release deployment uses the stage cache or not."
}
},
"type": "object"
},
"aws-native:apigateway:DeploymentMethodSetting": {
+ "description": "The ``MethodSetting`` property type configures settings for all methods in a stage.\n The ``MethodSettings`` property of the [Amazon API Gateway Deployment StageDescription](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription.html) property type contains a list of ``MethodSetting`` property types.",
"properties": {
"cacheDataEncrypted": {
"type": "boolean",
- "description": "Indicates whether the cached responses are encrypted"
+ "description": "Specifies whether the cached responses are encrypted."
},
"cacheTtlInSeconds": {
"type": "integer",
- "description": "The time-to-live (TTL) period, in seconds, that specifies how long API Gateway caches responses. "
+ "description": "Specifies the time to live (TTL), in seconds, for cached responses. The higher the TTL, the longer the response will be cached."
},
"cachingEnabled": {
"type": "boolean",
- "description": "Indicates whether responses are cached and returned for requests. You must enable a cache cluster on the stage to cache responses."
+ "description": "Specifies whether responses should be cached and returned for requests. A cache cluster must be enabled on the stage for responses to be cached."
},
"dataTraceEnabled": {
"type": "boolean",
- "description": "Indicates whether data trace logging is enabled for methods in the stage. API Gateway pushes these logs to Amazon CloudWatch Logs. "
+ "description": "Specifies whether data trace logging is enabled for this method, which affects the log entries pushed to Amazon CloudWatch Logs. This can be useful to troubleshoot APIs, but can result in logging sensitive data. We recommend that you don't enable this option for production APIs."
},
"httpMethod": {
"type": "string",
@@ -1873,28 +1877,29 @@
},
"loggingLevel": {
"type": "string",
- "description": "The logging level for this method. For valid values, see the loggingLevel property of the Stage resource in the Amazon API Gateway API Reference. "
+ "description": "Specifies the logging level for this method, which affects the log entries pushed to Amazon CloudWatch Logs. Valid values are ``OFF``, ``ERROR``, and ``INFO``. Choose ``ERROR`` to write only error-level entries to CloudWatch Logs, or choose ``INFO`` to include all ``ERROR`` events as well as extra informational events."
},
"metricsEnabled": {
"type": "boolean",
- "description": "Indicates whether Amazon CloudWatch metrics are enabled for methods in the stage."
+ "description": "Specifies whether Amazon CloudWatch metrics are enabled for this method."
},
"resourcePath": {
"type": "string",
- "description": "The resource path for this method. Forward slashes (/) are encoded as ~1 and the initial slash must include a forward slash. "
+ "description": "The resource path for this method. Forward slashes (``/``) are encoded as ``~1`` and the initial slash must include a forward slash. For example, the path value ``/resource/subresource`` must be encoded as ``/~1resource~1subresource``. To specify the root path, use only a slash (``/``)."
},
"throttlingBurstLimit": {
"type": "integer",
- "description": "The number of burst requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account."
+ "description": "Specifies the throttling burst limit."
},
"throttlingRateLimit": {
"type": "number",
- "description": "The number of steady-state requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account."
+ "description": "Specifies the throttling rate limit."
}
},
"type": "object"
},
"aws-native:apigateway:DeploymentStageDescription": {
+ "description": "``StageDescription`` is a property of the [AWS::ApiGateway::Deployment](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-deployment.html) resource that configures a deployment stage.",
"properties": {
"accessLogSetting": {
"$ref": "#/types/aws-native:apigateway:DeploymentAccessLogSetting",
@@ -1902,23 +1907,23 @@
},
"cacheClusterEnabled": {
"type": "boolean",
- "description": "Indicates whether cache clustering is enabled for the stage."
+ "description": "Specifies whether a cache cluster is enabled for the stage."
},
"cacheClusterSize": {
"type": "string",
- "description": "The size of the stage's cache cluster."
+ "description": "The size of the stage's cache cluster. For more information, see [cacheClusterSize](https://docs.aws.amazon.com/apigateway/latest/api/API_CreateStage.html#apigw-CreateStage-request-cacheClusterSize) in the *API Gateway API Reference*."
},
"cacheDataEncrypted": {
"type": "boolean",
- "description": "The time-to-live (TTL) period, in seconds, that specifies how long API Gateway caches responses. "
+ "description": "Indicates whether the cached responses are encrypted."
},
"cacheTtlInSeconds": {
"type": "integer",
- "description": "The time-to-live (TTL) period, in seconds, that specifies how long API Gateway caches responses. "
+ "description": "The time-to-live (TTL) period, in seconds, that specifies how long API Gateway caches responses."
},
"cachingEnabled": {
"type": "boolean",
- "description": "Indicates whether responses are cached and returned for requests. You must enable a cache cluster on the stage to cache responses."
+ "description": "Indicates whether responses are cached and returned for requests. You must enable a cache cluster on the stage to cache responses. For more information, see [Enable API Gateway Caching in a Stage to Enhance API Performance](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-caching.html) in the *API Gateway Developer Guide*."
},
"canarySetting": {
"$ref": "#/types/aws-native:apigateway:DeploymentCanarySetting",
@@ -1926,11 +1931,11 @@
},
"clientCertificateId": {
"type": "string",
- "description": "The identifier of the client certificate that API Gateway uses to call your integration endpoints in the stage. "
+ "description": "The identifier of the client certificate that API Gateway uses to call your integration endpoints in the stage."
},
"dataTraceEnabled": {
"type": "boolean",
- "description": "Indicates whether data trace logging is enabled for methods in the stage. API Gateway pushes these logs to Amazon CloudWatch Logs. "
+ "description": "Indicates whether data trace logging is enabled for methods in the stage. API Gateway pushes these logs to Amazon CloudWatch Logs."
},
"description": {
"type": "string",
@@ -1942,7 +1947,7 @@
},
"loggingLevel": {
"type": "string",
- "description": "The logging level for this method. For valid values, see the loggingLevel property of the Stage resource in the Amazon API Gateway API Reference. "
+ "description": "The logging level for this method. For valid values, see the ``loggingLevel`` property of the [MethodSetting](https://docs.aws.amazon.com/apigateway/latest/api/API_MethodSetting.html) resource in the *Amazon API Gateway API Reference*."
},
"methodSettings": {
"type": "array",
@@ -1964,19 +1969,19 @@
},
"throttlingBurstLimit": {
"type": "integer",
- "description": "The number of burst requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account."
+ "description": "The target request burst rate limit. This allows more requests through for a period of time than the target rate limit. For more information, see [Manage API Request Throttling](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-request-throttling.html) in the *API Gateway Developer Guide*."
},
"throttlingRateLimit": {
"type": "number",
- "description": "The number of steady-state requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account."
+ "description": "The target request steady-state rate limit. For more information, see [Manage API Request Throttling](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-request-throttling.html) in the *API Gateway Developer Guide*."
},
"tracingEnabled": {
"type": "boolean",
- "description": "Specifies whether active tracing with X-ray is enabled for this stage."
+ "description": "Specifies whether active tracing with X-ray is enabled for this stage.\n For more information, see [Trace API Gateway API Execution with X-Ray](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-xray.html) in the *API Gateway Developer Guide*."
},
"variables": {
"$ref": "pulumi.json#/Any",
- "description": "A map that defines the stage variables. Variable names must consist of alphanumeric characters, and the values must match the following regular expression: [A-Za-z0-9-._~:/?#\u0026=,]+. "
+ "description": "A map that defines the stage variables. Variable names must consist of alphanumeric characters, and the values must match the following regular expression: ``[A-Za-z0-9-._~:/?#\u0026=,]+``."
}
},
"type": "object"
@@ -1999,32 +2004,33 @@
]
},
"aws-native:apigateway:DocumentationPartLocation": {
+ "description": "The ``Location`` property specifies the location of the Amazon API Gateway API entity that the documentation applies to. ``Location`` is a property of the [AWS::ApiGateway::DocumentationPart](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-documentationpart.html) resource.\n For more information about each property, including constraints and valid values, see [DocumentationPart](https://docs.aws.amazon.com/apigateway/latest/api/API_DocumentationPartLocation.html) in the *Amazon API Gateway REST API Reference*.",
"properties": {
"method": {
"type": "string",
- "description": "The HTTP verb of a method."
+ "description": "The HTTP verb of a method. It is a valid field for the API entity types of ``METHOD``, ``PATH_PARAMETER``, ``QUERY_PARAMETER``, ``REQUEST_HEADER``, ``REQUEST_BODY``, ``RESPONSE``, ``RESPONSE_HEADER``, and ``RESPONSE_BODY``. The default value is ``*`` for any method. When an applicable child entity inherits the content of an entity of the same type with more general specifications of the other ``location`` attributes, the child entity's ``method`` attribute must match that of the parent entity exactly."
},
"name": {
"type": "string",
- "description": "The name of the targeted API entity."
+ "description": "The name of the targeted API entity. It is a valid and required field for the API entity types of ``AUTHORIZER``, ``MODEL``, ``PATH_PARAMETER``, ``QUERY_PARAMETER``, ``REQUEST_HEADER``, ``REQUEST_BODY`` and ``RESPONSE_HEADER``. It is an invalid field for any other entity type."
},
"path": {
"type": "string",
- "description": "The URL path of the target."
+ "description": "The URL path of the target. It is a valid field for the API entity types of ``RESOURCE``, ``METHOD``, ``PATH_PARAMETER``, ``QUERY_PARAMETER``, ``REQUEST_HEADER``, ``REQUEST_BODY``, ``RESPONSE``, ``RESPONSE_HEADER``, and ``RESPONSE_BODY``. The default value is ``/`` for the root resource. When an applicable child entity inherits the content of another entity of the same type with more general specifications of the other ``location`` attributes, the child entity's ``path`` attribute must match that of the parent entity as a prefix."
},
"statusCode": {
"type": "string",
- "description": "The HTTP status code of a response."
+ "description": "The HTTP status code of a response. It is a valid field for the API entity types of ``RESPONSE``, ``RESPONSE_HEADER``, and ``RESPONSE_BODY``. The default value is ``*`` for any status code. When an applicable child entity inherits the content of an entity of the same type with more general specifications of the other ``location`` attributes, the child entity's ``statusCode`` attribute must match that of the parent entity exactly."
},
"type": {
"$ref": "#/types/aws-native:apigateway:DocumentationPartLocationType",
- "description": "The type of API entity that the documentation content applies to."
+ "description": "The type of API entity to which the documentation content applies. Valid values are ``API``, ``AUTHORIZER``, ``MODEL``, ``RESOURCE``, ``METHOD``, ``PATH_PARAMETER``, ``QUERY_PARAMETER``, ``REQUEST_HEADER``, ``REQUEST_BODY``, ``RESPONSE``, ``RESPONSE_HEADER``, and ``RESPONSE_BODY``. Content inheritance does not apply to any entity of the ``API``, ``AUTHORIZER``, ``METHOD``, ``MODEL``, ``REQUEST_BODY``, or ``RESOURCE`` type."
}
},
"type": "object"
},
"aws-native:apigateway:DocumentationPartLocationType": {
- "description": "The type of API entity that the documentation content applies to.",
+ "description": "The type of API entity to which the documentation content applies. Valid values are ``API``, ``AUTHORIZER``, ``MODEL``, ``RESOURCE``, ``METHOD``, ``PATH_PARAMETER``, ``QUERY_PARAMETER``, ``REQUEST_HEADER``, ``REQUEST_BODY``, ``RESPONSE``, ``RESPONSE_HEADER``, and ``RESPONSE_BODY``. Content inheritance does not apply to any entity of the ``API``, ``AUTHORIZER``, ``METHOD``, ``MODEL``, ``REQUEST_BODY``, or ``RESOURCE`` type.",
"type": "string",
"enum": [
{
@@ -2111,7 +2117,7 @@
"type": "object"
},
"aws-native:apigateway:MethodAuthorizationType": {
- "description": "The method's authorization type.",
+ "description": "The method's authorization type. This parameter is required. For valid values, see [Method](https://docs.aws.amazon.com/apigateway/latest/api/API_Method.html) in the *API Gateway API Reference*.\n If you specify the ``AuthorizerId`` property, specify ``CUSTOM`` or ``COGNITO_USER_POOLS`` for this property.",
"type": "string",
"enum": [
{
@@ -2133,68 +2139,69 @@
]
},
"aws-native:apigateway:MethodIntegration": {
+ "description": "``Integration`` is a property of the [AWS::ApiGateway::Method](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-method.html) resource that specifies information about the target backend that a method calls.",
"properties": {
"cacheKeyParameters": {
"type": "array",
"items": {
"type": "string"
},
- "description": "A list of request parameters whose values API Gateway caches."
+ "description": "A list of request parameters whose values API Gateway caches. To be valid values for ``cacheKeyParameters``, these parameters must also be specified for Method ``requestParameters``."
},
"cacheNamespace": {
"type": "string",
- "description": "An API-specific tag group of related cached parameters."
+ "description": "Specifies a group of related cached parameters. By default, API Gateway uses the resource ID as the ``cacheNamespace``. You can specify the same ``cacheNamespace`` across resources to return the same cached data for requests to different resources."
},
"connectionId": {
"type": "string",
- "description": "The ID of the VpcLink used for the integration when connectionType=VPC_LINK, otherwise undefined."
+ "description": "The ID of the VpcLink used for the integration when ``connectionType=VPC_LINK`` and undefined, otherwise."
},
"connectionType": {
"$ref": "#/types/aws-native:apigateway:MethodIntegrationConnectionType",
- "description": "The type of the network connection to the integration endpoint."
+ "description": "The type of the network connection to the integration endpoint. The valid value is ``INTERNET`` for connections through the public routable internet or ``VPC_LINK`` for private connections between API Gateway and a network load balancer in a VPC. The default value is ``INTERNET``."
},
"contentHandling": {
"$ref": "#/types/aws-native:apigateway:MethodIntegrationContentHandling",
- "description": "Specifies how to handle request payload content type conversions."
+ "description": "Specifies how to handle request payload content type conversions. Supported values are ``CONVERT_TO_BINARY`` and ``CONVERT_TO_TEXT``, with the following behaviors:\n If this property is not defined, the request payload will be passed through from the method request to integration request without modification, provided that the ``passthroughBehavior`` is configured to support payload pass-through."
},
"credentials": {
"type": "string",
- "description": "The credentials that are required for the integration."
+ "description": "Specifies the credentials required for the integration, if any. For AWS integrations, three options are available. To specify an IAM Role for API Gateway to assume, use the role's Amazon Resource Name (ARN). To require that the caller's identity be passed through from the request, specify the string ``arn:aws:iam::\\*:user/\\*``. To use resource-based permissions on supported AWS services, specify null."
},
"integrationHttpMethod": {
"type": "string",
- "description": "The integration's HTTP method type."
+ "description": "Specifies the integration's HTTP method type. For the Type property, if you specify ``MOCK``, this property is optional. For Lambda integrations, you must set the integration method to ``POST``. For all other types, you must specify this property."
},
"integrationResponses": {
"type": "array",
"items": {
"$ref": "#/types/aws-native:apigateway:MethodIntegrationResponse"
},
- "description": "The response that API Gateway provides after a method's backend completes processing a request."
+ "description": "Specifies the integration's responses."
},
"passthroughBehavior": {
"$ref": "#/types/aws-native:apigateway:MethodIntegrationPassthroughBehavior",
- "description": "Indicates when API Gateway passes requests to the targeted backend."
+ "description": "Specifies how the method request body of an unmapped content type will be passed through the integration request to the back end without transformation. A content type is unmapped if no mapping template is defined in the integration or the content type does not match any of the mapped content types, as specified in ``requestTemplates``. The valid value is one of the following: ``WHEN_NO_MATCH``: passes the method request body through the integration request to the back end without transformation when the method request content type does not match any content type associated with the mapping templates defined in the integration request. ``WHEN_NO_TEMPLATES``: passes the method request body through the integration request to the back end without transformation when no mapping template is defined in the integration request. If a template is defined when this option is selected, the method request of an unmapped content-type will be rejected with an HTTP 415 Unsupported Media Type response. ``NEVER``: rejects the method request with an HTTP 415 Unsupported Media Type response when either the method request content type does not match any content type associated with the mapping templates defined in the integration request or no mapping template is defined in the integration request."
},
"requestParameters": {
"$ref": "pulumi.json#/Any",
- "description": "The request parameters that API Gateway sends with the backend request."
+ "description": "A key-value map specifying request parameters that are passed from the method request to the back end. The key is an integration request parameter name and the associated value is a method request parameter value or static value that must be enclosed within single quotes and pre-encoded as required by the back end. The method request parameter value must match the pattern of ``method.request.{location}.{name}``, where ``location`` is ``querystring``, ``path``, or ``header`` and ``name`` must be a valid and unique method request parameter name."
},
"requestTemplates": {
"$ref": "pulumi.json#/Any",
- "description": "A map of Apache Velocity templates that are applied on the request payload."
+ "description": "Represents a map of Velocity templates that are applied on the request payload based on the value of the Content-Type header sent by the client. The content type value is the key in this map, and the template (as a String) is the value."
},
"timeoutInMillis": {
"type": "integer",
- "description": "Custom timeout between 50 and 29,000 milliseconds."
+ "description": "Custom timeout between 50 and 29,000 milliseconds. The default value is 29,000 milliseconds or 29 seconds."
},
"type": {
"$ref": "#/types/aws-native:apigateway:MethodIntegrationType",
- "description": "The type of backend that your method is running."
+ "description": "Specifies an API method integration type. The valid value is one of the following:\n For the HTTP and HTTP proxy integrations, each integration can specify a protocol (``http/https``), port and path. Standard 80 and 443 ports are supported as well as custom ports above 1024. An HTTP or HTTP proxy integration with a ``connectionType`` of ``VPC_LINK`` is referred to as a private integration and uses a VpcLink to connect API Gateway to a network load balancer of a VPC."
},
"uri": {
"type": "string",
- "description": "The Uniform Resource Identifier (URI) for the integration."
+ "description": "Specifies Uniform Resource Identifier (URI) of the integration endpoint.\n For ``HTTP`` or ``HTTP_PROXY`` integrations, the URI must be a fully formed, encoded HTTP(S) URL according to the RFC-3986 specification for standard integrations. If ``connectionType`` is ``VPC_LINK`` specify the Network Load Balancer DNS name. For ``AWS`` or ``AWS_PROXY`` integrations, the URI is of the form ``arn:aws:apigateway:{region}:{subdomain.service|service}:path|action/{service_api}``. Here, {Region} is the API Gateway region (e.g., us-east-1); {service} is the name of the integrated AWS service (e.g., s3); and {subdomain} is a designated subdomain supported by certain AWS service for fast host-name lookup. action can be used for an AWS service action-based API, using an Action={name}\u0026{p1}={v1}\u0026p2={v2}... query string. The ensuing {service_api} refers to a supported action {name} plus any required input parameters. Alternatively, path can be used for an AWS service path-based API. The ensuing service_api refers to the path to an AWS service resource, including the region of the integrated AWS service, if applicable. For example, for integration with the S3 API of GetObject, the uri can be either ``arn:aws:apigateway:us-west-2:s3:action/GetObject\u0026Bucket={bucket}\u0026Key={key}`` or ``arn:aws:apigateway:us-west-2:s3:path/{bucket}/{key}``"
}
},
"type": "object",
@@ -2203,7 +2210,7 @@
]
},
"aws-native:apigateway:MethodIntegrationConnectionType": {
- "description": "The type of the network connection to the integration endpoint.",
+ "description": "The type of the network connection to the integration endpoint. The valid value is ``INTERNET`` for connections through the public routable internet or ``VPC_LINK`` for private connections between API Gateway and a network load balancer in a VPC. The default value is ``INTERNET``.",
"type": "string",
"enum": [
{
@@ -2217,7 +2224,7 @@
]
},
"aws-native:apigateway:MethodIntegrationContentHandling": {
- "description": "Specifies how to handle request payload content type conversions.",
+ "description": "Specifies how to handle request payload content type conversions. Supported values are ``CONVERT_TO_BINARY`` and ``CONVERT_TO_TEXT``, with the following behaviors:\n If this property is not defined, the request payload will be passed through from the method request to integration request without modification, provided that the ``passthroughBehavior`` is configured to support payload pass-through.",
"type": "string",
"enum": [
{
@@ -2231,7 +2238,7 @@
]
},
"aws-native:apigateway:MethodIntegrationPassthroughBehavior": {
- "description": "Indicates when API Gateway passes requests to the targeted backend.",
+ "description": "Specifies how the method request body of an unmapped content type will be passed through the integration request to the back end without transformation. A content type is unmapped if no mapping template is defined in the integration or the content type does not match any of the mapped content types, as specified in ``requestTemplates``. The valid value is one of the following: ``WHEN_NO_MATCH``: passes the method request body through the integration request to the back end without transformation when the method request content type does not match any content type associated with the mapping templates defined in the integration request. ``WHEN_NO_TEMPLATES``: passes the method request body through the integration request to the back end without transformation when no mapping template is defined in the integration request. If a template is defined when this option is selected, the method request of an unmapped content-type will be rejected with an HTTP 415 Unsupported Media Type response. ``NEVER``: rejects the method request with an HTTP 415 Unsupported Media Type response when either the method request content type does not match any content type associated with the mapping templates defined in the integration request or no mapping template is defined in the integration request.",
"type": "string",
"enum": [
{
@@ -2249,26 +2256,27 @@
]
},
"aws-native:apigateway:MethodIntegrationResponse": {
+ "description": "``IntegrationResponse`` is a property of the [Amazon API Gateway Method Integration](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-method-integration.html) property type that specifies the response that API Gateway sends after a method's backend finishes processing a request.",
"properties": {
"contentHandling": {
"$ref": "#/types/aws-native:apigateway:MethodIntegrationResponseContentHandling",
- "description": "Specifies how to handle request payload content type conversions."
+ "description": "Specifies how to handle response payload content type conversions. Supported values are ``CONVERT_TO_BINARY`` and ``CONVERT_TO_TEXT``, with the following behaviors:\n If this property is not defined, the response payload will be passed through from the integration response to the method response without modification."
},
"responseParameters": {
"$ref": "pulumi.json#/Any",
- "description": "The response parameters from the backend response that API Gateway sends to the method response."
+ "description": "A key-value map specifying response parameters that are passed to the method response from the back end. The key is a method response header parameter name and the mapped value is an integration response header value, a static value enclosed within a pair of single quotes, or a JSON expression from the integration response body. The mapping key must match the pattern of ``method.response.header.{name}``, where ``name`` is a valid and unique header name. The mapped non-static value must match the pattern of ``integration.response.header.{name}`` or ``integration.response.body.{JSON-expression}``, where ``name`` is a valid and unique response header name and ``JSON-expression`` is a valid JSON expression without the ``$`` prefix."
},
"responseTemplates": {
"$ref": "pulumi.json#/Any",
- "description": "The templates that are used to transform the integration response body. Specify templates as key-value pairs (string-to-string mappings), with a content type as the key and a template as the value."
+ "description": "Specifies the templates used to transform the integration response body. Response templates are represented as a key/value map, with a content-type as the key and a template as the value."
},
"selectionPattern": {
"type": "string",
- "description": "A regular expression that specifies which error strings or status codes from the backend map to the integration response."
+ "description": "Specifies the regular expression (regex) pattern used to choose an integration response based on the response from the back end. For example, if the success response returns nothing and the error response returns some string, you could use the ``.+`` regex to match error response. However, make sure that the error response does not contain any newline (``\\n``) character in such cases. If the back end is an LAMlong function, the LAMlong function error header is matched. For all other HTTP and AWS back ends, the HTTP status code is matched."
},
"statusCode": {
"type": "string",
- "description": "The status code that API Gateway uses to map the integration response to a MethodResponse status code."
+ "description": "Specifies the status code that is used to map the integration response to an existing MethodResponse."
}
},
"type": "object",
@@ -2277,7 +2285,7 @@
]
},
"aws-native:apigateway:MethodIntegrationResponseContentHandling": {
- "description": "Specifies how to handle request payload content type conversions.",
+ "description": "Specifies how to handle response payload content type conversions. Supported values are ``CONVERT_TO_BINARY`` and ``CONVERT_TO_TEXT``, with the following behaviors:\n If this property is not defined, the response payload will be passed through from the integration response to the method response without modification.",
"type": "string",
"enum": [
{
@@ -2291,7 +2299,7 @@
]
},
"aws-native:apigateway:MethodIntegrationType": {
- "description": "The type of backend that your method is running.",
+ "description": "Specifies an API method integration type. The valid value is one of the following:\n For the HTTP and HTTP proxy integrations, each integration can specify a protocol (``http/https``), port and path. Standard 80 and 443 ports are supported as well as custom ports above 1024. An HTTP or HTTP proxy integration with a ``connectionType`` of ``VPC_LINK`` is referred to as a private integration and uses a VpcLink to connect API Gateway to a network load balancer of a VPC.",
"type": "string",
"enum": [
{
@@ -2317,18 +2325,19 @@
]
},
"aws-native:apigateway:MethodResponse": {
+ "description": "Represents a method response of a given HTTP status code returned to the client. The method response is passed from the back end through the associated integration response that can be transformed using a mapping template.",
"properties": {
"responseModels": {
"$ref": "pulumi.json#/Any",
- "description": "The resources used for the response's content type. Specify response models as key-value pairs (string-to-string maps), with a content type as the key and a Model resource name as the value."
+ "description": "Specifies the Model resources used for the response's content-type. Response models are represented as a key/value map, with a content-type as the key and a Model name as the value."
},
"responseParameters": {
"$ref": "pulumi.json#/Any",
- "description": "Response parameters that API Gateway sends to the client that called a method. Specify response parameters as key-value pairs (string-to-Boolean maps), with a destination as the key and a Boolean as the value."
+ "description": "A key-value map specifying required or optional response parameters that API Gateway can send back to the caller. A key defines a method response header and the value specifies whether the associated method response header is required or not. The expression of the key must match the pattern ``method.response.header.{name}``, where ``name`` is a valid and unique header name. API Gateway passes certain integration response data to the method response headers specified here according to the mapping you prescribe in the API's IntegrationResponse. The integration response data that can be mapped include an integration response header expressed in ``integration.response.header.{name}``, a static value enclosed within a pair of single quotes (e.g., ``'application/json'``), or a JSON expression from the back-end response payload in the form of ``integration.response.body.{JSON-expression}``, where ``JSON-expression`` is a valid JSON expression without the ``$`` prefix.)"
},
"statusCode": {
"type": "string",
- "description": "The method response's status code, which you map to an IntegrationResponse."
+ "description": "The method response's status code."
}
},
"type": "object",
@@ -2337,35 +2346,43 @@
]
},
"aws-native:apigateway:RestApiEndpointConfiguration": {
+ "description": "The ``EndpointConfiguration`` property type specifies the endpoint types of a REST API.\n ``EndpointConfiguration`` is a property of the [AWS::ApiGateway::RestApi](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html) resource.",
"properties": {
"types": {
"type": "array",
"items": {
"type": "string"
- }
+ },
+ "description": "A list of endpoint types of an API (RestApi) or its custom domain name (DomainName). For an edge-optimized API and its custom domain name, the endpoint type is ``\"EDGE\"``. For a regional API and its custom domain name, the endpoint type is ``REGIONAL``. For a private API, the endpoint type is ``PRIVATE``."
},
"vpcEndpointIds": {
"type": "array",
"items": {
"type": "string"
- }
+ },
+ "description": "A list of VpcEndpointIds of an API (RestApi) against which to create Route53 ALIASes. It is only supported for ``PRIVATE`` endpoint type."
}
},
"type": "object"
},
"aws-native:apigateway:RestApiS3Location": {
+ "description": "``S3Location`` is a property of the [AWS::ApiGateway::RestApi](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html) resource that specifies the Amazon S3 location of a OpenAPI (formerly Swagger) file that defines a set of RESTful APIs in JSON or YAML.\n On January 1, 2016, the Swagger Specification was donated to the [OpenAPI initiative](https://docs.aws.amazon.com/https://www.openapis.org/), becoming the foundation of the OpenAPI Specification.",
"properties": {
"bucket": {
- "type": "string"
+ "type": "string",
+ "description": "The name of the S3 bucket where the OpenAPI file is stored."
},
"eTag": {
- "type": "string"
+ "type": "string",
+ "description": "The Amazon S3 ETag (a file checksum) of the OpenAPI file. If you don't specify a value, API Gateway skips ETag validation of your OpenAPI file."
},
"key": {
- "type": "string"
+ "type": "string",
+ "description": "The file name of the OpenAPI file (Amazon S3 object name)."
},
"version": {
- "type": "string"
+ "type": "string",
+ "description": "For versioning-enabled buckets, a specific version of the OpenAPI file."
}
},
"type": "object"
@@ -2386,29 +2403,29 @@
]
},
"aws-native:apigateway:StageAccessLogSetting": {
- "description": "Specifies settings for logging access in this stage.",
+ "description": "The ``AccessLogSetting`` property type specifies settings for logging access in this stage.\n ``AccessLogSetting`` is a property of the [AWS::ApiGateway::Stage](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html) resource.",
"properties": {
"destinationArn": {
"type": "string",
- "description": "The Amazon Resource Name (ARN) of the CloudWatch Logs log group or Kinesis Data Firehose delivery stream to receive access logs. If you specify a Kinesis Data Firehose delivery stream, the stream name must begin with amazon-apigateway-. This parameter is required to enable access logging."
+ "description": "The Amazon Resource Name (ARN) of the CloudWatch Logs log group or Kinesis Data Firehose delivery stream to receive access logs. If you specify a Kinesis Data Firehose delivery stream, the stream name must begin with ``amazon-apigateway-``. This parameter is required to enable access logging."
},
"format": {
"type": "string",
- "description": "A single line format of the access logs of data, as specified by selected $context variables (https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-mapping-template-reference.html#context-variable-reference). The format must include at least $context.requestId. This parameter is required to enable access logging."
+ "description": "A single line format of the access logs of data, as specified by selected [$context variables](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-mapping-template-reference.html#context-variable-reference). The format must include at least ``$context.requestId``. This parameter is required to enable access logging."
}
},
"type": "object"
},
"aws-native:apigateway:StageCanarySetting": {
- "description": "Specifies settings for the canary deployment in this stage.",
+ "description": "Configuration settings of a canary deployment.",
"properties": {
"deploymentId": {
"type": "string",
- "description": "The identifier of the deployment that the stage points to."
+ "description": "The ID of the canary deployment."
},
"percentTraffic": {
"type": "number",
- "description": "The percentage (0-100) of traffic diverted to a canary deployment."
+ "description": "The percent (0-100) of traffic diverted to a canary deployment."
},
"stageVariableOverrides": {
"$ref": "pulumi.json#/Any",
@@ -2416,53 +2433,53 @@
},
"useStageCache": {
"type": "boolean",
- "description": "Whether the canary deployment uses the stage cache or not."
+ "description": "A Boolean flag to indicate whether the canary deployment uses the stage cache or not."
}
},
"type": "object"
},
"aws-native:apigateway:StageMethodSetting": {
- "description": "Configures settings for all methods in a stage.",
+ "description": "The ``MethodSetting`` property type configures settings for all methods in a stage.\n The ``MethodSettings`` property of the ``AWS::ApiGateway::Stage`` resource contains a list of ``MethodSetting`` property types.",
"properties": {
"cacheDataEncrypted": {
"type": "boolean",
- "description": "Indicates whether the cached responses are encrypted."
+ "description": "Specifies whether the cached responses are encrypted."
},
"cacheTtlInSeconds": {
"type": "integer",
- "description": "The time-to-live (TTL) period, in seconds, that specifies how long API Gateway caches responses."
+ "description": "Specifies the time to live (TTL), in seconds, for cached responses. The higher the TTL, the longer the response will be cached."
},
"cachingEnabled": {
"type": "boolean",
- "description": "Indicates whether responses are cached and returned for requests. You must enable a cache cluster on the stage to cache responses."
+ "description": "Specifies whether responses should be cached and returned for requests. A cache cluster must be enabled on the stage for responses to be cached."
},
"dataTraceEnabled": {
"type": "boolean",
- "description": "Indicates whether data trace logging is enabled for methods in the stage. API Gateway pushes these logs to Amazon CloudWatch Logs."
+ "description": "Specifies whether data trace logging is enabled for this method, which affects the log entries pushed to Amazon CloudWatch Logs. This can be useful to troubleshoot APIs, but can result in logging sensitive data. We recommend that you don't enable this option for production APIs."
},
"httpMethod": {
"type": "string",
- "description": "The HTTP method. You can use an asterisk (*) as a wildcard to apply method settings to multiple methods."
+ "description": "The HTTP method. To apply settings to multiple resources and methods, specify an asterisk (``*``) for the ``HttpMethod`` and ``/*`` for the ``ResourcePath``. This parameter is required when you specify a ``MethodSetting``."
},
"loggingLevel": {
"type": "string",
- "description": "The logging level for this method. For valid values, see the loggingLevel property of the Stage (https://docs.aws.amazon.com/apigateway/api-reference/resource/stage/#loggingLevel) resource in the Amazon API Gateway API Reference."
+ "description": "Specifies the logging level for this method, which affects the log entries pushed to Amazon CloudWatch Logs. Valid values are ``OFF``, ``ERROR``, and ``INFO``. Choose ``ERROR`` to write only error-level entries to CloudWatch Logs, or choose ``INFO`` to include all ``ERROR`` events as well as extra informational events."
},
"metricsEnabled": {
"type": "boolean",
- "description": "Indicates whether Amazon CloudWatch metrics are enabled for methods in the stage."
+ "description": "Specifies whether Amazon CloudWatch metrics are enabled for this method."
},
"resourcePath": {
"type": "string",
- "description": "The resource path for this method. Forward slashes (/) are encoded as ~1 and the initial slash must include a forward slash. For example, the path value /resource/subresource must be encoded as /~1resource~1subresource. To specify the root path, use only a slash (/). You can use an asterisk (*) as a wildcard to apply method settings to multiple methods."
+ "description": "The resource path for this method. Forward slashes (``/``) are encoded as ``~1`` and the initial slash must include a forward slash. For example, the path value ``/resource/subresource`` must be encoded as ``/~1resource~1subresource``. To specify the root path, use only a slash (``/``). To apply settings to multiple resources and methods, specify an asterisk (``*``) for the ``HttpMethod`` and ``/*`` for the ``ResourcePath``. This parameter is required when you specify a ``MethodSetting``."
},
"throttlingBurstLimit": {
"type": "integer",
- "description": "The number of burst requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account."
+ "description": "Specifies the throttling burst limit."
},
"throttlingRateLimit": {
"type": "number",
- "description": "The number of steady-state requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account."
+ "description": "Specifies the throttling rate limit."
}
},
"type": "object"
@@ -2503,7 +2520,7 @@
"type": "object"
},
"aws-native:apigateway:UsagePlanKeyKeyType": {
- "description": "The type of usage plan key. Currently, the only valid key type is API_KEY.",
+ "description": "The type of a UsagePlanKey resource for a plan customer.",
"type": "string",
"enum": [
{
@@ -2829,15 +2846,22 @@
"type": "object"
},
"aws-native:appconfig:ApplicationTags": {
+ "description": "Metadata to assign to the application. Tags help organize and categorize your AWS AppConfig resources. Each tag consists of a key and an optional value, both of which you define.",
"properties": {
"key": {
- "type": "string"
+ "type": "string",
+ "description": "The key-value string map. The valid character set is [a-zA-Z1-9+-=._:/]. The tag key can be up to 128 characters and must not start with aws:."
},
"value": {
- "type": "string"
+ "type": "string",
+ "description": "The tag value can be up to 256 characters."
}
},
- "type": "object"
+ "type": "object",
+ "required": [
+ "key",
+ "value"
+ ]
},
"aws-native:appconfig:ConfigurationProfileTags": {
"properties": {
@@ -10365,12 +10389,15 @@
]
},
"aws-native:appsync:FunctionConfigurationAppSyncRuntime": {
+ "description": "Describes a runtime used by an AWS AppSync pipeline resolver or AWS AppSync function. Specifies the name and version of the runtime to use. Note that if a runtime is specified, code must also be specified.",
"properties": {
"name": {
- "type": "string"
+ "type": "string",
+ "description": "The name of the runtime to use. Currently, the only allowed value is APPSYNC_JS."
},
"runtimeVersion": {
- "type": "string"
+ "type": "string",
+ "description": "The version of the runtime to use. Currently, the only allowed version is 1.0.0."
}
},
"type": "object",
@@ -10380,20 +10407,25 @@
]
},
"aws-native:appsync:FunctionConfigurationLambdaConflictHandlerConfig": {
+ "description": "The LambdaConflictHandlerConfig when configuring LAMBDA as the Conflict Handler.",
"properties": {
"lambdaConflictHandlerArn": {
- "type": "string"
+ "type": "string",
+ "description": "The Amazon Resource Name (ARN) for the Lambda function to use as the Conflict Handler."
}
},
"type": "object"
},
"aws-native:appsync:FunctionConfigurationSyncConfig": {
+ "description": "Describes a Sync configuration for a resolver. Specifies which Conflict Detection strategy and Resolution strategy to use when the resolver is invoked.",
"properties": {
"conflictDetection": {
- "type": "string"
+ "type": "string",
+ "description": "The Conflict Detection strategy to use."
},
"conflictHandler": {
- "type": "string"
+ "type": "string",
+ "description": "The Conflict Resolution strategy to perform in the event of a conflict."
},
"lambdaConflictHandlerConfig": {
"$ref": "#/types/aws-native:appsync:FunctionConfigurationLambdaConflictHandlerConfig"
@@ -19557,11 +19589,7 @@
"type": "boolean"
}
},
- "type": "object",
- "required": [
- "clientId",
- "providerName"
- ]
+ "type": "object"
},
"aws-native:cognito:IdentityPoolCognitoStreams": {
"properties": {
@@ -19591,24 +19619,6 @@
},
"type": "object"
},
- "aws-native:cognito:IdentityPoolTag": {
- "description": "A key-value pair to associate with a resource.",
- "properties": {
- "key": {
- "type": "string",
- "description": "The key name of the tag. You can specify a value that is 1 to 128 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -."
- },
- "value": {
- "type": "string",
- "description": "The value for the tag. You can specify a value that is 0 to 256 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -."
- }
- },
- "type": "object",
- "required": [
- "key",
- "value"
- ]
- },
"aws-native:cognito:LogDeliveryConfigurationCloudWatchLogsConfiguration": {
"properties": {
"logGroupArn": {
@@ -22594,34 +22604,6 @@
},
"type": "object"
},
- "aws-native:connect:ContactFlowModuleState": {
- "description": "The state of the contact flow module.",
- "type": "string",
- "enum": [
- {
- "name": "Active",
- "value": "ACTIVE"
- },
- {
- "name": "Archived",
- "value": "ARCHIVED"
- }
- ]
- },
- "aws-native:connect:ContactFlowModuleStatus": {
- "description": "The status of the contact flow module.",
- "type": "string",
- "enum": [
- {
- "name": "Published",
- "value": "PUBLISHED"
- },
- {
- "name": "Saved",
- "value": "SAVED"
- }
- ]
- },
"aws-native:connect:ContactFlowModuleTag": {
"description": "A key-value pair to associate with a resource.",
"properties": {
@@ -24781,6 +24763,321 @@
"uri"
]
},
+ "aws-native:customerprofiles:DomainAttributeTypesSelector": {
+ "description": "Configures information about the AttributeTypesSelector where the rule-based identity resolution uses to match profiles.",
+ "properties": {
+ "address": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "The Address type. You can choose from Address, BusinessAddress, MaillingAddress, and ShippingAddress. You only can use the Address type in the MatchingRule. For example, if you want to match profile based on BusinessAddress.City or MaillingAddress.City, you need to choose the BusinessAddress and the MaillingAddress to represent the Address type and specify the Address.City on the matching rule."
+ },
+ "attributeMatchingModel": {
+ "$ref": "#/types/aws-native:customerprofiles:DomainAttributeTypesSelectorAttributeMatchingModel",
+ "description": "Configures the AttributeMatchingModel, you can either choose ONE_TO_ONE or MANY_TO_MANY."
+ },
+ "emailAddress": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "The Email type. You can choose from EmailAddress, BusinessEmailAddress and PersonalEmailAddress. You only can use the EmailAddress type in the MatchingRule. For example, if you want to match profile based on PersonalEmailAddress or BusinessEmailAddress, you need to choose the PersonalEmailAddress and the BusinessEmailAddress to represent the EmailAddress type and only specify the EmailAddress on the matching rule."
+ },
+ "phoneNumber": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "The PhoneNumber type. You can choose from PhoneNumber, HomePhoneNumber, and MobilePhoneNumber. You only can use the PhoneNumber type in the MatchingRule. For example, if you want to match a profile based on Phone or HomePhone, you need to choose the Phone and the HomePhone to represent the PhoneNumber type and only specify the PhoneNumber on the matching rule."
+ }
+ },
+ "type": "object",
+ "required": [
+ "attributeMatchingModel"
+ ]
+ },
+ "aws-native:customerprofiles:DomainAttributeTypesSelectorAttributeMatchingModel": {
+ "description": "Configures the AttributeMatchingModel, you can either choose ONE_TO_ONE or MANY_TO_MANY.",
+ "type": "string",
+ "enum": [
+ {
+ "name": "OneToOne",
+ "value": "ONE_TO_ONE"
+ },
+ {
+ "name": "ManyToMany",
+ "value": "MANY_TO_MANY"
+ }
+ ]
+ },
+ "aws-native:customerprofiles:DomainAutoMerging": {
+ "description": "Configuration information about the auto-merging process.",
+ "properties": {
+ "conflictResolution": {
+ "$ref": "#/types/aws-native:customerprofiles:DomainConflictResolution"
+ },
+ "consolidation": {
+ "$ref": "#/types/aws-native:customerprofiles:DomainConsolidation"
+ },
+ "enabled": {
+ "type": "boolean",
+ "description": "The flag that enables the auto-merging of duplicate profiles."
+ },
+ "minAllowedConfidenceScoreForMerging": {
+ "type": "number",
+ "description": "A number between 0 and 1 that represents the minimum confidence score required for profiles within a matching group to be merged during the auto-merge process. A higher score means higher similarity required to merge profiles."
+ }
+ },
+ "type": "object",
+ "required": [
+ "enabled"
+ ]
+ },
+ "aws-native:customerprofiles:DomainConflictResolution": {
+ "description": "How the auto-merging process should resolve conflicts between different profiles. For example, if Profile A and Profile B have the same FirstName and LastName (and that is the matching criteria), which EmailAddress should be used? ",
+ "properties": {
+ "conflictResolvingModel": {
+ "$ref": "#/types/aws-native:customerprofiles:DomainConflictResolutionConflictResolvingModel",
+ "description": "How the auto-merging process should resolve conflicts between different profiles."
+ },
+ "sourceName": {
+ "type": "string",
+ "description": "The ObjectType name that is used to resolve profile merging conflicts when choosing SOURCE as the ConflictResolvingModel."
+ }
+ },
+ "type": "object",
+ "required": [
+ "conflictResolvingModel"
+ ]
+ },
+ "aws-native:customerprofiles:DomainConflictResolutionConflictResolvingModel": {
+ "description": "How the auto-merging process should resolve conflicts between different profiles.",
+ "type": "string",
+ "enum": [
+ {
+ "name": "Recency",
+ "value": "RECENCY"
+ },
+ {
+ "name": "Source",
+ "value": "SOURCE"
+ }
+ ]
+ },
+ "aws-native:customerprofiles:DomainConsolidation": {
+ "description": "A list of matching attributes that represent matching criteria. If two profiles meet at least one of the requirements in the matching attributes list, they will be merged.",
+ "properties": {
+ "matchingAttributesList": {
+ "type": "array",
+ "items": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "description": "A list of matching criteria."
+ }
+ },
+ "type": "object",
+ "required": [
+ "matchingAttributesList"
+ ]
+ },
+ "aws-native:customerprofiles:DomainExportingConfig": {
+ "description": "Configuration information for exporting Identity Resolution results, for example, to an S3 bucket.",
+ "properties": {
+ "s3Exporting": {
+ "$ref": "#/types/aws-native:customerprofiles:DomainS3ExportingConfig"
+ }
+ },
+ "type": "object"
+ },
+ "aws-native:customerprofiles:DomainJobSchedule": {
+ "description": "The day and time when do you want to start the Identity Resolution Job every week.",
+ "properties": {
+ "dayOfTheWeek": {
+ "$ref": "#/types/aws-native:customerprofiles:DomainJobScheduleDayOfTheWeek",
+ "description": "The day when the Identity Resolution Job should run every week."
+ },
+ "time": {
+ "type": "string",
+ "description": "The time when the Identity Resolution Job should run every week."
+ }
+ },
+ "type": "object",
+ "required": [
+ "dayOfTheWeek",
+ "time"
+ ]
+ },
+ "aws-native:customerprofiles:DomainJobScheduleDayOfTheWeek": {
+ "description": "The day when the Identity Resolution Job should run every week.",
+ "type": "string",
+ "enum": [
+ {
+ "name": "Sunday",
+ "value": "SUNDAY"
+ },
+ {
+ "name": "Monday",
+ "value": "MONDAY"
+ },
+ {
+ "name": "Tuesday",
+ "value": "TUESDAY"
+ },
+ {
+ "name": "Wednesday",
+ "value": "WEDNESDAY"
+ },
+ {
+ "name": "Thursday",
+ "value": "THURSDAY"
+ },
+ {
+ "name": "Friday",
+ "value": "FRIDAY"
+ },
+ {
+ "name": "Saturday",
+ "value": "SATURDAY"
+ }
+ ]
+ },
+ "aws-native:customerprofiles:DomainMatching": {
+ "description": "The process of matching duplicate profiles. If Matching = true, Amazon Connect Customer Profiles starts a weekly batch process called Identity Resolution Job. If you do not specify a date and time for Identity Resolution Job to run, by default it runs every Saturday at 12AM UTC to detect duplicate profiles in your domains. After the Identity Resolution Job completes, use the GetMatches API to return and review the results. Or, if you have configured ExportingConfig in the MatchingRequest, you can download the results from S3.",
+ "properties": {
+ "autoMerging": {
+ "$ref": "#/types/aws-native:customerprofiles:DomainAutoMerging"
+ },
+ "enabled": {
+ "type": "boolean",
+ "description": "The flag that enables the matching process of duplicate profiles."
+ },
+ "exportingConfig": {
+ "$ref": "#/types/aws-native:customerprofiles:DomainExportingConfig"
+ },
+ "jobSchedule": {
+ "$ref": "#/types/aws-native:customerprofiles:DomainJobSchedule"
+ }
+ },
+ "type": "object",
+ "required": [
+ "enabled"
+ ]
+ },
+ "aws-native:customerprofiles:DomainMatchingRule": {
+ "description": "Specifies how does the rule-based matching process should match profiles.",
+ "properties": {
+ "rule": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ },
+ "type": "object",
+ "required": [
+ "rule"
+ ]
+ },
+ "aws-native:customerprofiles:DomainRuleBasedMatching": {
+ "description": "The process of matching duplicate profiles using the Rule-Based matching. If RuleBasedMatching = true, Amazon Connect Customer Profiles will start to match and merge your profiles according to your configuration in the RuleBasedMatchingRequest. You can use the ListRuleBasedMatches and GetSimilarProfiles API to return and review the results. Also, if you have configured ExportingConfig in the RuleBasedMatchingRequest, you can download the results from S3.",
+ "properties": {
+ "attributeTypesSelector": {
+ "$ref": "#/types/aws-native:customerprofiles:DomainAttributeTypesSelector"
+ },
+ "conflictResolution": {
+ "$ref": "#/types/aws-native:customerprofiles:DomainConflictResolution"
+ },
+ "enabled": {
+ "type": "boolean",
+ "description": "The flag that enables the rule-based matching process of duplicate profiles."
+ },
+ "exportingConfig": {
+ "$ref": "#/types/aws-native:customerprofiles:DomainExportingConfig"
+ },
+ "matchingRules": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:customerprofiles:DomainMatchingRule"
+ },
+ "description": "Configures how the rule-based matching process should match profiles. You can have up to 15 MatchingRule in the MatchingRules."
+ },
+ "maxAllowedRuleLevelForMatching": {
+ "type": "integer",
+ "description": "Indicates the maximum allowed rule level for matching."
+ },
+ "maxAllowedRuleLevelForMerging": {
+ "type": "integer",
+ "description": "Indicates the maximum allowed rule level for merging."
+ },
+ "status": {
+ "$ref": "#/types/aws-native:customerprofiles:DomainRuleBasedMatchingStatus"
+ }
+ },
+ "type": "object",
+ "required": [
+ "enabled"
+ ]
+ },
+ "aws-native:customerprofiles:DomainRuleBasedMatchingStatus": {
+ "type": "string",
+ "enum": [
+ {
+ "name": "Pending",
+ "value": "PENDING"
+ },
+ {
+ "name": "InProgress",
+ "value": "IN_PROGRESS"
+ },
+ {
+ "name": "Active",
+ "value": "ACTIVE"
+ }
+ ]
+ },
+ "aws-native:customerprofiles:DomainS3ExportingConfig": {
+ "description": "The S3 location where Identity Resolution Jobs write result files.",
+ "properties": {
+ "s3BucketName": {
+ "type": "string",
+ "description": "The name of the S3 bucket where Identity Resolution Jobs write result files."
+ },
+ "s3KeyName": {
+ "type": "string",
+ "description": "The S3 key name of the location where Identity Resolution Jobs write result files."
+ }
+ },
+ "type": "object",
+ "required": [
+ "s3BucketName"
+ ]
+ },
+ "aws-native:customerprofiles:DomainStats": {
+ "description": "Usage-specific statistics about the domain.",
+ "properties": {
+ "meteringProfileCount": {
+ "type": "number",
+ "description": "The number of profiles that you are currently paying for in the domain. If you have more than 100 objects associated with a single profile, that profile counts as two profiles. If you have more than 200 objects, that profile counts as three, and so on."
+ },
+ "objectCount": {
+ "type": "number",
+ "description": "The total number of objects in domain."
+ },
+ "profileCount": {
+ "type": "number",
+ "description": "The total number of profiles currently in the domain."
+ },
+ "totalSize": {
+ "type": "number",
+ "description": "The total size, in bytes, of all objects in the domain."
+ }
+ },
+ "type": "object"
+ },
"aws-native:customerprofiles:DomainTag": {
"properties": {
"key": {
@@ -42012,6 +42309,106 @@
"aws-native:emrserverless:ApplicationWorkerTypeSpecificationInputMap": {
"type": "object"
},
+ "aws-native:entityresolution:IdMappingWorkflowIdMappingTechniques": {
+ "properties": {
+ "idMappingType": {
+ "$ref": "#/types/aws-native:entityresolution:IdMappingWorkflowIdMappingTechniquesIdMappingType"
+ },
+ "providerProperties": {
+ "$ref": "#/types/aws-native:entityresolution:IdMappingWorkflowProviderProperties"
+ }
+ },
+ "type": "object"
+ },
+ "aws-native:entityresolution:IdMappingWorkflowIdMappingTechniquesIdMappingType": {
+ "type": "string",
+ "enum": [
+ {
+ "name": "Provider",
+ "value": "PROVIDER"
+ }
+ ]
+ },
+ "aws-native:entityresolution:IdMappingWorkflowInputSource": {
+ "properties": {
+ "inputSourceArn": {
+ "type": "string",
+ "description": "An Glue table ARN for the input source table"
+ },
+ "schemaArn": {
+ "type": "string"
+ }
+ },
+ "type": "object",
+ "required": [
+ "inputSourceArn",
+ "schemaArn"
+ ]
+ },
+ "aws-native:entityresolution:IdMappingWorkflowIntermediateSourceConfiguration": {
+ "properties": {
+ "intermediateS3Path": {
+ "type": "string",
+ "description": "The s3 path that would be used to stage the intermediate data being generated during workflow execution."
+ }
+ },
+ "type": "object",
+ "required": [
+ "intermediateS3Path"
+ ]
+ },
+ "aws-native:entityresolution:IdMappingWorkflowOutputSource": {
+ "properties": {
+ "kmsArn": {
+ "type": "string"
+ },
+ "outputS3Path": {
+ "type": "string",
+ "description": "The S3 path to which Entity Resolution will write the output table"
+ }
+ },
+ "type": "object",
+ "required": [
+ "outputS3Path"
+ ]
+ },
+ "aws-native:entityresolution:IdMappingWorkflowProviderProperties": {
+ "properties": {
+ "intermediateSourceConfiguration": {
+ "$ref": "#/types/aws-native:entityresolution:IdMappingWorkflowIntermediateSourceConfiguration"
+ },
+ "providerConfiguration": {
+ "$ref": "pulumi.json#/Any",
+ "description": "Additional Provider configuration that would be required for the provider service. The Configuration must be in JSON string format"
+ },
+ "providerServiceArn": {
+ "type": "string",
+ "description": "Arn of the Provider Service being used."
+ }
+ },
+ "type": "object",
+ "required": [
+ "providerServiceArn"
+ ]
+ },
+ "aws-native:entityresolution:IdMappingWorkflowTag": {
+ "description": "A key-value pair to associate with a resource",
+ "properties": {
+ "key": {
+ "type": "string",
+ "description": "The key name of the tag. You can specify a value that is 1 to 128 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -."
+ },
+ "value": {
+ "type": "string",
+ "description": "The value for the tag. You can specify a value that is 0 to 256 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -."
+ }
+ },
+ "type": "object",
+ "required": [
+ "key",
+ "value"
+ ]
+ },
"aws-native:entityresolution:MatchingWorkflowInputSource": {
"properties": {
"applyNormalization": {
@@ -42893,12 +43290,6 @@
"sql": {
"type": "string"
},
- "sqls": {
- "type": "array",
- "items": {
- "type": "string"
- }
- },
"statementName": {
"type": "string"
},
@@ -42991,20 +43382,6 @@
"messageGroupId"
]
},
- "aws-native:events:RuleState": {
- "description": "The state of the rule.",
- "type": "string",
- "enum": [
- {
- "name": "Disabled",
- "value": "DISABLED"
- },
- {
- "name": "Enabled",
- "value": "ENABLED"
- }
- ]
- },
"aws-native:events:RuleTag": {
"properties": {
"key": {
@@ -45980,6 +46357,16 @@
}
]
},
+ "aws-native:gamelift:FleetInstanceRoleCredentialsProvider": {
+ "description": "Credentials provider implementation that loads credentials from the Amazon EC2 Instance Metadata Service.",
+ "type": "string",
+ "enum": [
+ {
+ "name": "SharedCredentialFile",
+ "value": "SHARED_CREDENTIAL_FILE"
+ }
+ ]
+ },
"aws-native:gamelift:FleetIpPermission": {
"description": "A range of IP addresses and port settings that allow inbound traffic to connect to server processes on an Amazon GameLift hosting resource. New game sessions that are started on the fleet are assigned an IP address/port number combination, which must fall into the fleet's allowed ranges. For fleets created with a custom game server, the ranges reflect the server's game session assignments. For Realtime Servers fleets, Amazon GameLift automatically opens two port ranges, one for TCP messaging and one for UDP, for use by the Realtime servers.",
"properties": {
@@ -50336,10 +50723,12 @@
"aws-native:iam:GroupPolicy": {
"properties": {
"policyDocument": {
- "$ref": "pulumi.json#/Any"
+ "type": "string",
+ "description": "The policy document."
},
"policyName": {
- "type": "string"
+ "type": "string",
+ "description": "The friendly name (not ARN) identifying the policy."
}
},
"type": "object",
@@ -54382,6 +54771,21 @@
}
]
},
+ "aws-native:iot:PolicyTag": {
+ "properties": {
+ "key": {
+ "type": "string"
+ },
+ "value": {
+ "type": "string"
+ }
+ },
+ "type": "object",
+ "required": [
+ "key",
+ "value"
+ ]
+ },
"aws-native:iot:PresignedUrlConfigProperties": {
"description": "Configuration for pre-signed S3 URLs.",
"properties": {
@@ -78266,6 +78670,199 @@
},
"type": "object"
},
+ "aws-native:msk:ReplicatorAmazonMskCluster": {
+ "description": "Details of an Amazon MSK cluster.",
+ "properties": {
+ "mskClusterArn": {
+ "type": "string",
+ "description": "The ARN of an Amazon MSK cluster."
+ }
+ },
+ "type": "object",
+ "required": [
+ "mskClusterArn"
+ ]
+ },
+ "aws-native:msk:ReplicatorConsumerGroupReplication": {
+ "description": "Configuration relating to consumer group replication.",
+ "properties": {
+ "consumerGroupsToExclude": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "List of regular expression patterns indicating the consumer groups that should not be replicated."
+ },
+ "consumerGroupsToReplicate": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "List of regular expression patterns indicating the consumer groups to copy."
+ },
+ "detectAndCopyNewConsumerGroups": {
+ "type": "boolean",
+ "description": "Whether to periodically check for new consumer groups."
+ },
+ "synchroniseConsumerGroupOffsets": {
+ "type": "boolean",
+ "description": "Whether to periodically write the translated offsets to __consumer_offsets topic in target cluster."
+ }
+ },
+ "type": "object",
+ "required": [
+ "consumerGroupsToReplicate"
+ ]
+ },
+ "aws-native:msk:ReplicatorKafkaCluster": {
+ "description": "Details of a Kafka cluster for replication.",
+ "properties": {
+ "amazonMskCluster": {
+ "$ref": "#/types/aws-native:msk:ReplicatorAmazonMskCluster",
+ "description": "Details of an Amazon MSK cluster. Exactly one of AmazonMskCluster is required."
+ },
+ "vpcConfig": {
+ "$ref": "#/types/aws-native:msk:ReplicatorKafkaClusterClientVpcConfig",
+ "description": "Details of an Amazon VPC which has network connectivity to the Apache Kafka cluster."
+ }
+ },
+ "type": "object",
+ "required": [
+ "amazonMskCluster",
+ "vpcConfig"
+ ]
+ },
+ "aws-native:msk:ReplicatorKafkaClusterClientVpcConfig": {
+ "description": "Details of an Amazon VPC which has network connectivity to the Kafka cluster.",
+ "properties": {
+ "securityGroupIds": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "The AWS security groups to associate with the elastic network interfaces in order to specify what the replicator has access to. If a security group is not specified, the default security group associated with the VPC is used."
+ },
+ "subnetIds": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "The list of subnets to connect to in the virtual private cloud (VPC). AWS creates elastic network interfaces inside these subnets."
+ }
+ },
+ "type": "object",
+ "required": [
+ "subnetIds"
+ ]
+ },
+ "aws-native:msk:ReplicatorReplicationInfo": {
+ "description": "Specifies configuration for replication between a source and target Kafka cluster.",
+ "properties": {
+ "consumerGroupReplication": {
+ "$ref": "#/types/aws-native:msk:ReplicatorConsumerGroupReplication",
+ "description": "Configuration relating to consumer group replication."
+ },
+ "sourceKafkaClusterArn": {
+ "type": "string",
+ "description": "Amazon Resource Name of the source Kafka cluster."
+ },
+ "targetCompressionType": {
+ "$ref": "#/types/aws-native:msk:ReplicatorReplicationInfoTargetCompressionType",
+ "description": "The type of compression to use writing records to target Kafka cluster."
+ },
+ "targetKafkaClusterArn": {
+ "type": "string",
+ "description": "Amazon Resource Name of the target Kafka cluster."
+ },
+ "topicReplication": {
+ "$ref": "#/types/aws-native:msk:ReplicatorTopicReplication",
+ "description": "Configuration relating to topic replication."
+ }
+ },
+ "type": "object",
+ "required": [
+ "consumerGroupReplication",
+ "sourceKafkaClusterArn",
+ "targetCompressionType",
+ "targetKafkaClusterArn",
+ "topicReplication"
+ ]
+ },
+ "aws-native:msk:ReplicatorReplicationInfoTargetCompressionType": {
+ "description": "The type of compression to use writing records to target Kafka cluster.",
+ "type": "string",
+ "enum": [
+ {
+ "name": "None",
+ "value": "NONE"
+ },
+ {
+ "name": "Gzip",
+ "value": "GZIP"
+ },
+ {
+ "name": "Snappy",
+ "value": "SNAPPY"
+ },
+ {
+ "name": "Lz4",
+ "value": "LZ4"
+ },
+ {
+ "name": "Zstd",
+ "value": "ZSTD"
+ }
+ ]
+ },
+ "aws-native:msk:ReplicatorTag": {
+ "properties": {
+ "key": {
+ "type": "string"
+ },
+ "value": {
+ "type": "string"
+ }
+ },
+ "type": "object",
+ "required": [
+ "key",
+ "value"
+ ]
+ },
+ "aws-native:msk:ReplicatorTopicReplication": {
+ "properties": {
+ "copyAccessControlListsForTopics": {
+ "type": "boolean",
+ "description": "Whether to periodically configure remote topic ACLs to match their corresponding upstream topics."
+ },
+ "copyTopicConfigurations": {
+ "type": "boolean",
+ "description": "Whether to periodically configure remote topics to match their corresponding upstream topics."
+ },
+ "detectAndCopyNewTopics": {
+ "type": "boolean",
+ "description": "Whether to periodically check for new topics and partitions."
+ },
+ "topicsToExclude": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "List of regular expression patterns indicating the topics that should not be replicated."
+ },
+ "topicsToReplicate": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "List of regular expression patterns indicating the topics to copy."
+ }
+ },
+ "type": "object",
+ "required": [
+ "topicsToReplicate"
+ ]
+ },
"aws-native:msk:ServerlessClusterClientAuthentication": {
"properties": {
"sasl": {
@@ -95539,6 +96136,30 @@
}
]
},
+ "aws-native:quicksight:AnalysisValidationStrategy": {
+ "properties": {
+ "mode": {
+ "$ref": "#/types/aws-native:quicksight:AnalysisValidationStrategyMode"
+ }
+ },
+ "type": "object",
+ "required": [
+ "mode"
+ ]
+ },
+ "aws-native:quicksight:AnalysisValidationStrategyMode": {
+ "type": "string",
+ "enum": [
+ {
+ "name": "Strict",
+ "value": "STRICT"
+ },
+ {
+ "name": "Lenient",
+ "value": "LENIENT"
+ }
+ ]
+ },
"aws-native:quicksight:AnalysisValueWhenUnsetOption": {
"type": "string",
"enum": [
@@ -105869,6 +106490,30 @@
}
]
},
+ "aws-native:quicksight:DashboardValidationStrategy": {
+ "properties": {
+ "mode": {
+ "$ref": "#/types/aws-native:quicksight:DashboardValidationStrategyMode"
+ }
+ },
+ "type": "object",
+ "required": [
+ "mode"
+ ]
+ },
+ "aws-native:quicksight:DashboardValidationStrategyMode": {
+ "type": "string",
+ "enum": [
+ {
+ "name": "Strict",
+ "value": "STRICT"
+ },
+ {
+ "name": "Lenient",
+ "value": "LENIENT"
+ }
+ ]
+ },
"aws-native:quicksight:DashboardValueWhenUnsetOption": {
"type": "string",
"enum": [
@@ -117567,6 +118212,30 @@
}
]
},
+ "aws-native:quicksight:TemplateValidationStrategy": {
+ "properties": {
+ "mode": {
+ "$ref": "#/types/aws-native:quicksight:TemplateValidationStrategyMode"
+ }
+ },
+ "type": "object",
+ "required": [
+ "mode"
+ ]
+ },
+ "aws-native:quicksight:TemplateValidationStrategyMode": {
+ "type": "string",
+ "enum": [
+ {
+ "name": "Strict",
+ "value": "STRICT"
+ },
+ {
+ "name": "Lenient",
+ "value": "LENIENT"
+ }
+ ]
+ },
"aws-native:quicksight:TemplateValueWhenUnsetOption": {
"type": "string",
"enum": [
@@ -123719,11 +124388,9 @@
"type": "object"
},
"aws-native:s3:BucketAbortIncompleteMultipartUpload": {
- "description": "Specifies the days since the initiation of an incomplete multipart upload that Amazon S3 will wait before permanently removing all parts of the upload.",
"properties": {
"daysAfterInitiation": {
- "type": "integer",
- "description": "Specifies the number of days after which Amazon S3 aborts an incomplete multipart upload."
+ "type": "integer"
}
},
"type": "object",
@@ -123734,8 +124401,7 @@
"aws-native:s3:BucketAccelerateConfiguration": {
"properties": {
"accelerationStatus": {
- "$ref": "#/types/aws-native:s3:BucketAccelerateConfigurationAccelerationStatus",
- "description": "Configures the transfer acceleration state for an Amazon S3 bucket."
+ "type": "string"
}
},
"type": "object",
@@ -123743,60 +124409,7 @@
"accelerationStatus"
]
},
- "aws-native:s3:BucketAccelerateConfigurationAccelerationStatus": {
- "description": "Configures the transfer acceleration state for an Amazon S3 bucket.",
- "type": "string",
- "enum": [
- {
- "name": "Enabled",
- "value": "Enabled"
- },
- {
- "name": "Suspended",
- "value": "Suspended"
- }
- ]
- },
- "aws-native:s3:BucketAccessControl": {
- "description": "A canned access control list (ACL) that grants predefined permissions to the bucket.",
- "type": "string",
- "enum": [
- {
- "name": "AuthenticatedRead",
- "value": "AuthenticatedRead"
- },
- {
- "name": "AwsExecRead",
- "value": "AwsExecRead"
- },
- {
- "name": "BucketOwnerFullControl",
- "value": "BucketOwnerFullControl"
- },
- {
- "name": "BucketOwnerRead",
- "value": "BucketOwnerRead"
- },
- {
- "name": "LogDeliveryWrite",
- "value": "LogDeliveryWrite"
- },
- {
- "name": "Private",
- "value": "Private"
- },
- {
- "name": "PublicRead",
- "value": "PublicRead"
- },
- {
- "name": "PublicReadWrite",
- "value": "PublicReadWrite"
- }
- ]
- },
"aws-native:s3:BucketAccessControlTranslation": {
- "description": "Specify this only in a cross-account scenario (where source and destination bucket owners are not the same), and you want to change replica ownership to the AWS account that owns the destination bucket. If this is not specified in the replication configuration, the replicas are owned by same AWS account that owns the source object.",
"properties": {
"owner": {
"type": "string"
@@ -123808,15 +124421,12 @@
]
},
"aws-native:s3:BucketAnalyticsConfiguration": {
- "description": "Specifies the configuration and any analyses for the analytics filter of an Amazon S3 bucket.",
"properties": {
"id": {
- "type": "string",
- "description": "The ID that identifies the analytics configuration."
+ "type": "string"
},
"prefix": {
- "type": "string",
- "description": "The prefix that an object must have to be included in the analytics results."
+ "type": "string"
},
"storageClassAnalysis": {
"$ref": "#/types/aws-native:s3:BucketStorageClassAnalysis"
@@ -123849,43 +124459,36 @@
]
},
"aws-native:s3:BucketCorsRule": {
- "description": "A set of origins and methods (cross-origin access that you want to allow). You can add up to 100 rules to the configuration.",
"properties": {
"allowedHeaders": {
"type": "array",
"items": {
"type": "string"
- },
- "description": "Headers that are specified in the Access-Control-Request-Headers header."
+ }
},
"allowedMethods": {
"type": "array",
"items": {
- "$ref": "#/types/aws-native:s3:BucketCorsRuleAllowedMethodsItem"
- },
- "description": "An HTTP method that you allow the origin to execute."
+ "type": "string"
+ }
},
"allowedOrigins": {
"type": "array",
"items": {
"type": "string"
- },
- "description": "One or more origins you want customers to be able to access the bucket from."
+ }
},
"exposedHeaders": {
"type": "array",
"items": {
"type": "string"
- },
- "description": "One or more headers in the response that you want customers to be able to access from their applications (for example, from a JavaScript XMLHttpRequest object)."
+ }
},
"id": {
- "type": "string",
- "description": "A unique identifier for this rule."
+ "type": "string"
},
"maxAge": {
- "type": "integer",
- "description": "The time in seconds that your browser is to cache the preflight response for the specified resource."
+ "type": "integer"
}
},
"type": "object",
@@ -123894,40 +124497,13 @@
"allowedOrigins"
]
},
- "aws-native:s3:BucketCorsRuleAllowedMethodsItem": {
- "type": "string",
- "enum": [
- {
- "name": "Get",
- "value": "GET"
- },
- {
- "name": "Put",
- "value": "PUT"
- },
- {
- "name": "Head",
- "value": "HEAD"
- },
- {
- "name": "Post",
- "value": "POST"
- },
- {
- "name": "Delete",
- "value": "DELETE"
- }
- ]
- },
"aws-native:s3:BucketDataExport": {
- "description": "Specifies how data related to the storage class analysis for an Amazon S3 bucket should be exported.",
"properties": {
"destination": {
"$ref": "#/types/aws-native:s3:BucketDestination"
},
"outputSchemaVersion": {
- "type": "string",
- "description": "The version of the output schema to use when exporting data."
+ "type": "string"
}
},
"type": "object",
@@ -123937,13 +124513,12 @@
]
},
"aws-native:s3:BucketDefaultRetention": {
- "description": "The default retention period that you want to apply to new objects placed in the specified bucket.",
"properties": {
"days": {
"type": "integer"
},
"mode": {
- "$ref": "#/types/aws-native:s3:BucketDefaultRetentionMode"
+ "type": "string"
},
"years": {
"type": "integer"
@@ -123951,58 +124526,27 @@
},
"type": "object"
},
- "aws-native:s3:BucketDefaultRetentionMode": {
- "type": "string",
- "enum": [
- {
- "name": "Compliance",
- "value": "COMPLIANCE"
- },
- {
- "name": "Governance",
- "value": "GOVERNANCE"
- }
- ]
- },
"aws-native:s3:BucketDeleteMarkerReplication": {
"properties": {
"status": {
- "$ref": "#/types/aws-native:s3:BucketDeleteMarkerReplicationStatus"
+ "type": "string"
}
},
"type": "object"
},
- "aws-native:s3:BucketDeleteMarkerReplicationStatus": {
- "type": "string",
- "enum": [
- {
- "name": "Disabled",
- "value": "Disabled"
- },
- {
- "name": "Enabled",
- "value": "Enabled"
- }
- ]
- },
"aws-native:s3:BucketDestination": {
- "description": "Specifies information about where to publish analysis or configuration results for an Amazon S3 bucket and S3 Replication Time Control (S3 RTC).",
"properties": {
"bucketAccountId": {
- "type": "string",
- "description": "The account ID that owns the destination S3 bucket. "
+ "type": "string"
},
"bucketArn": {
- "type": "string",
- "description": "The Amazon Resource Name (ARN) of the bucket to which data is exported."
+ "type": "string"
},
"format": {
- "$ref": "#/types/aws-native:s3:BucketDestinationFormat",
- "description": "Specifies the file format used when exporting data to Amazon S3."
+ "type": "string"
},
"prefix": {
- "type": "string",
- "description": "The prefix to use when exporting data. The prefix is prepended to all results."
+ "type": "string"
}
},
"type": "object",
@@ -124011,33 +124555,13 @@
"format"
]
},
- "aws-native:s3:BucketDestinationFormat": {
- "description": "Specifies the file format used when exporting data to Amazon S3.",
- "type": "string",
- "enum": [
- {
- "name": "Csv",
- "value": "CSV"
- },
- {
- "name": "Orc",
- "value": "ORC"
- },
- {
- "name": "Parquet",
- "value": "Parquet"
- }
- ]
- },
"aws-native:s3:BucketEncryption": {
- "description": "Specifies default encryption for a bucket using server-side encryption with either Amazon S3-managed keys (SSE-S3) or AWS KMS-managed keys (SSE-KMS).",
"properties": {
"serverSideEncryptionConfiguration": {
"type": "array",
"items": {
"$ref": "#/types/aws-native:s3:BucketServerSideEncryptionRule"
- },
- "description": "Specifies the default server-side-encryption configuration."
+ }
}
},
"type": "object",
@@ -124046,11 +124570,9 @@
]
},
"aws-native:s3:BucketEncryptionConfiguration": {
- "description": "Specifies encryption-related information for an Amazon S3 bucket that is a destination for replicated objects.",
"properties": {
"replicaKmsKeyId": {
- "type": "string",
- "description": "Specifies the ID (Key ARN or Alias ARN) of the customer managed customer master key (CMK) stored in AWS Key Management Service (KMS) for the destination bucket."
+ "type": "string"
}
},
"type": "object",
@@ -124059,20 +124581,14 @@
]
},
"aws-native:s3:BucketEventBridgeConfiguration": {
- "description": "Describes the Amazon EventBridge notification configuration for an Amazon S3 bucket.",
"properties": {
"eventBridgeEnabled": {
- "type": "boolean",
- "description": "Specifies whether to send notifications to Amazon EventBridge when events occur in an Amazon S3 bucket."
+ "type": "boolean"
}
},
- "type": "object",
- "required": [
- "eventBridgeEnabled"
- ]
+ "type": "object"
},
"aws-native:s3:BucketFilterRule": {
- "description": "Specifies the Amazon S3 object key name to filter on and whether to filter on the suffix or prefix of the key name.",
"properties": {
"name": {
"type": "string"
@@ -124090,30 +124606,25 @@
"aws-native:s3:BucketIntelligentTieringConfiguration": {
"properties": {
"id": {
- "type": "string",
- "description": "The ID used to identify the S3 Intelligent-Tiering configuration."
+ "type": "string"
},
"prefix": {
- "type": "string",
- "description": "An object key name prefix that identifies the subset of objects to which the rule applies."
+ "type": "string"
},
"status": {
- "$ref": "#/types/aws-native:s3:BucketIntelligentTieringConfigurationStatus",
- "description": "Specifies the status of the configuration."
+ "type": "string"
},
"tagFilters": {
"type": "array",
"items": {
"$ref": "#/types/aws-native:s3:BucketTagFilter"
- },
- "description": "A container for a key-value pair."
+ }
},
"tierings": {
"type": "array",
"items": {
"$ref": "#/types/aws-native:s3:BucketTiering"
- },
- "description": "Specifies a list of S3 Intelligent-Tiering storage class tiers in the configuration. At least one tier must be defined in the list. At most, you can specify two tiers in the list, one for each available AccessTier: ARCHIVE_ACCESS and DEEP_ARCHIVE_ACCESS."
+ }
}
},
"type": "object",
@@ -124123,51 +124634,31 @@
"tierings"
]
},
- "aws-native:s3:BucketIntelligentTieringConfigurationStatus": {
- "description": "Specifies the status of the configuration.",
- "type": "string",
- "enum": [
- {
- "name": "Disabled",
- "value": "Disabled"
- },
- {
- "name": "Enabled",
- "value": "Enabled"
- }
- ]
- },
"aws-native:s3:BucketInventoryConfiguration": {
"properties": {
"destination": {
"$ref": "#/types/aws-native:s3:BucketDestination"
},
"enabled": {
- "type": "boolean",
- "description": "Specifies whether the inventory is enabled or disabled."
+ "type": "boolean"
},
"id": {
- "type": "string",
- "description": "The ID used to identify the inventory configuration."
+ "type": "string"
},
"includedObjectVersions": {
- "$ref": "#/types/aws-native:s3:BucketInventoryConfigurationIncludedObjectVersions",
- "description": "Object versions to include in the inventory list."
+ "type": "string"
},
"optionalFields": {
"type": "array",
"items": {
- "$ref": "#/types/aws-native:s3:BucketInventoryConfigurationOptionalFieldsItem"
- },
- "description": "Contains the optional fields that are included in the inventory results."
+ "type": "string"
+ }
},
"prefix": {
- "type": "string",
- "description": "The prefix that is prepended to all inventory results."
+ "type": "string"
},
"scheduleFrequency": {
- "$ref": "#/types/aws-native:s3:BucketInventoryConfigurationScheduleFrequency",
- "description": "Specifies the schedule for generating inventory results."
+ "type": "string"
}
},
"type": "object",
@@ -124179,101 +124670,16 @@
"scheduleFrequency"
]
},
- "aws-native:s3:BucketInventoryConfigurationIncludedObjectVersions": {
- "description": "Object versions to include in the inventory list.",
- "type": "string",
- "enum": [
- {
- "name": "All",
- "value": "All"
- },
- {
- "name": "Current",
- "value": "Current"
- }
- ]
- },
- "aws-native:s3:BucketInventoryConfigurationOptionalFieldsItem": {
- "type": "string",
- "enum": [
- {
- "name": "Size",
- "value": "Size"
- },
- {
- "name": "LastModifiedDate",
- "value": "LastModifiedDate"
- },
- {
- "name": "StorageClass",
- "value": "StorageClass"
- },
- {
- "name": "ETag",
- "value": "ETag"
- },
- {
- "name": "IsMultipartUploaded",
- "value": "IsMultipartUploaded"
- },
- {
- "name": "ReplicationStatus",
- "value": "ReplicationStatus"
- },
- {
- "name": "EncryptionStatus",
- "value": "EncryptionStatus"
- },
- {
- "name": "ObjectLockRetainUntilDate",
- "value": "ObjectLockRetainUntilDate"
- },
- {
- "name": "ObjectLockMode",
- "value": "ObjectLockMode"
- },
- {
- "name": "ObjectLockLegalHoldStatus",
- "value": "ObjectLockLegalHoldStatus"
- },
- {
- "name": "IntelligentTieringAccessTier",
- "value": "IntelligentTieringAccessTier"
- },
- {
- "name": "BucketKeyStatus",
- "value": "BucketKeyStatus"
- }
- ]
- },
- "aws-native:s3:BucketInventoryConfigurationScheduleFrequency": {
- "description": "Specifies the schedule for generating inventory results.",
- "type": "string",
- "enum": [
- {
- "name": "Daily",
- "value": "Daily"
- },
- {
- "name": "Weekly",
- "value": "Weekly"
- }
- ]
- },
"aws-native:s3:BucketLambdaConfiguration": {
- "description": "Describes the AWS Lambda functions to invoke and the events for which to invoke them.",
"properties": {
"event": {
- "type": "string",
- "description": "The Amazon S3 bucket event for which to invoke the AWS Lambda function."
+ "type": "string"
},
"filter": {
- "$ref": "#/types/aws-native:s3:BucketNotificationFilter",
- "description": "The filtering rules that determine which objects invoke the AWS Lambda function."
+ "$ref": "#/types/aws-native:s3:BucketNotificationFilter"
},
"function": {
- "type": "string",
- "description": "The Amazon Resource Name (ARN) of the AWS Lambda function that Amazon S3 invokes when the specified event type occurs."
+ "type": "string"
}
},
"type": "object",
@@ -124288,8 +124694,7 @@
"type": "array",
"items": {
"$ref": "#/types/aws-native:s3:BucketRule"
- },
- "description": "A lifecycle rule for individual objects in an Amazon S3 bucket."
+ }
}
},
"type": "object",
@@ -124300,8 +124705,7 @@
"aws-native:s3:BucketLoggingConfiguration": {
"properties": {
"destinationBucketName": {
- "type": "string",
- "description": "The name of an Amazon S3 bucket where Amazon S3 store server access log files. You can store log files in any bucket that you own. By default, logs are stored in the bucket where the LoggingConfiguration property is defined."
+ "type": "string"
},
"logFilePrefix": {
"type": "string"
@@ -124315,7 +124719,7 @@
"$ref": "#/types/aws-native:s3:BucketReplicationTimeValue"
},
"status": {
- "$ref": "#/types/aws-native:s3:BucketMetricsStatus"
+ "type": "string"
}
},
"type": "object",
@@ -124346,29 +124750,13 @@
"id"
]
},
- "aws-native:s3:BucketMetricsStatus": {
- "type": "string",
- "enum": [
- {
- "name": "Disabled",
- "value": "Disabled"
- },
- {
- "name": "Enabled",
- "value": "Enabled"
- }
- ]
- },
"aws-native:s3:BucketNoncurrentVersionExpiration": {
- "description": "Container for the expiration rule that describes when noncurrent objects are expired. If your bucket is versioning-enabled (or versioning is suspended), you can set this action to request that Amazon S3 expire noncurrent object versions at a specific period in the object's lifetime",
"properties": {
"newerNoncurrentVersions": {
- "type": "integer",
- "description": "Specified the number of newer noncurrent and current versions that must exists before performing the associated action"
+ "type": "integer"
},
"noncurrentDays": {
- "type": "integer",
- "description": "Specified the number of days an object is noncurrent before Amazon S3 can perform the associated action"
+ "type": "integer"
}
},
"type": "object",
@@ -124377,19 +124765,15 @@
]
},
"aws-native:s3:BucketNoncurrentVersionTransition": {
- "description": "Container for the transition rule that describes when noncurrent objects transition to the STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER_IR, GLACIER, or DEEP_ARCHIVE storage class. If your bucket is versioning-enabled (or versioning is suspended), you can set this action to request that Amazon S3 transition noncurrent object versions to the STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER_IR, GLACIER, or DEEP_ARCHIVE storage class at a specific period in the object's lifetime.",
"properties": {
"newerNoncurrentVersions": {
- "type": "integer",
- "description": "Specified the number of newer noncurrent and current versions that must exists before performing the associated action"
+ "type": "integer"
},
"storageClass": {
- "$ref": "#/types/aws-native:s3:BucketNoncurrentVersionTransitionStorageClass",
- "description": "The class of storage used to store the object."
+ "type": "string"
},
"transitionInDays": {
- "type": "integer",
- "description": "Specifies the number of days an object is noncurrent before Amazon S3 can perform the associated action."
+ "type": "integer"
}
},
"type": "object",
@@ -124398,38 +124782,7 @@
"transitionInDays"
]
},
- "aws-native:s3:BucketNoncurrentVersionTransitionStorageClass": {
- "description": "The class of storage used to store the object.",
- "type": "string",
- "enum": [
- {
- "name": "DeepArchive",
- "value": "DEEP_ARCHIVE"
- },
- {
- "name": "Glacier",
- "value": "GLACIER"
- },
- {
- "name": "GlacierIr",
- "value": "GLACIER_IR"
- },
- {
- "name": "IntelligentTiering",
- "value": "INTELLIGENT_TIERING"
- },
- {
- "name": "OnezoneIa",
- "value": "ONEZONE_IA"
- },
- {
- "name": "StandardIa",
- "value": "STANDARD_IA"
- }
- ]
- },
"aws-native:s3:BucketNotificationConfiguration": {
- "description": "Describes the notification configuration for an Amazon S3 bucket.",
"properties": {
"eventBridgeConfiguration": {
"$ref": "#/types/aws-native:s3:BucketEventBridgeConfiguration"
@@ -124456,7 +124809,6 @@
"type": "object"
},
"aws-native:s3:BucketNotificationFilter": {
- "description": "Specifies object key name filtering rules.",
"properties": {
"s3Key": {
"$ref": "#/types/aws-native:s3:BucketS3KeyFilter"
@@ -124479,7 +124831,6 @@
"type": "object"
},
"aws-native:s3:BucketObjectLockRule": {
- "description": "The Object Lock rule in place for the specified object.",
"properties": {
"defaultRetention": {
"$ref": "#/types/aws-native:s3:BucketDefaultRetention"
@@ -124504,66 +124855,38 @@
"aws-native:s3:BucketOwnershipControlsRule": {
"properties": {
"objectOwnership": {
- "$ref": "#/types/aws-native:s3:BucketOwnershipControlsRuleObjectOwnership",
- "description": "Specifies an object ownership rule."
+ "type": "string"
}
},
"type": "object"
},
- "aws-native:s3:BucketOwnershipControlsRuleObjectOwnership": {
- "description": "Specifies an object ownership rule.",
- "type": "string",
- "enum": [
- {
- "name": "ObjectWriter",
- "value": "ObjectWriter"
- },
- {
- "name": "BucketOwnerPreferred",
- "value": "BucketOwnerPreferred"
- },
- {
- "name": "BucketOwnerEnforced",
- "value": "BucketOwnerEnforced"
- }
- ]
- },
"aws-native:s3:BucketPublicAccessBlockConfiguration": {
- "description": "Configuration that defines how Amazon S3 handles public access.",
"properties": {
"blockPublicAcls": {
- "type": "boolean",
- "description": "Specifies whether Amazon S3 should block public access control lists (ACLs) for this bucket and objects in this bucket. Setting this element to TRUE causes the following behavior:\n- PUT Bucket acl and PUT Object acl calls fail if the specified ACL is public.\n - PUT Object calls fail if the request includes a public ACL.\nEnabling this setting doesn't affect existing policies or ACLs."
+ "type": "boolean"
},
"blockPublicPolicy": {
- "type": "boolean",
- "description": "Specifies whether Amazon S3 should block public bucket policies for this bucket. Setting this element to TRUE causes Amazon S3 to reject calls to PUT Bucket policy if the specified bucket policy allows public access.\nEnabling this setting doesn't affect existing bucket policies."
+ "type": "boolean"
},
"ignorePublicAcls": {
- "type": "boolean",
- "description": "Specifies whether Amazon S3 should ignore public ACLs for this bucket and objects in this bucket. Setting this element to TRUE causes Amazon S3 to ignore all public ACLs on this bucket and objects in this bucket.\nEnabling this setting doesn't affect the persistence of any existing ACLs and doesn't prevent new public ACLs from being set."
+ "type": "boolean"
},
"restrictPublicBuckets": {
- "type": "boolean",
- "description": "Specifies whether Amazon S3 should restrict public bucket policies for this bucket. Setting this element to TRUE restricts access to this bucket to only AWS services and authorized users within this account if the bucket has a public policy.\nEnabling this setting doesn't affect previously stored bucket policies, except that public and cross-account access within any public bucket policy, including non-public delegation to specific accounts, is blocked."
+ "type": "boolean"
}
},
"type": "object"
},
"aws-native:s3:BucketQueueConfiguration": {
- "description": "The Amazon Simple Queue Service queues to publish messages to and the events for which to publish messages.",
"properties": {
"event": {
- "type": "string",
- "description": "The Amazon S3 bucket event about which you want to publish messages to Amazon SQS."
+ "type": "string"
},
"filter": {
- "$ref": "#/types/aws-native:s3:BucketNotificationFilter",
- "description": "The filtering rules that determine which objects trigger notifications."
+ "$ref": "#/types/aws-native:s3:BucketNotificationFilter"
},
"queue": {
- "type": "string",
- "description": "The Amazon Resource Name (ARN) of the Amazon SQS queue to which Amazon S3 publishes a message when it detects events of the specified type."
+ "type": "string"
}
},
"type": "object",
@@ -124573,15 +124896,12 @@
]
},
"aws-native:s3:BucketRedirectAllRequestsTo": {
- "description": "Specifies the redirect behavior of all requests to a website endpoint of an Amazon S3 bucket.",
"properties": {
"hostName": {
- "type": "string",
- "description": "Name of the host where requests are redirected."
+ "type": "string"
},
"protocol": {
- "$ref": "#/types/aws-native:s3:BucketRedirectAllRequestsToProtocol",
- "description": "Protocol to use when redirecting requests. The default is the protocol that is used in the original request."
+ "type": "string"
}
},
"type": "object",
@@ -124589,65 +124909,30 @@
"hostName"
]
},
- "aws-native:s3:BucketRedirectAllRequestsToProtocol": {
- "description": "Protocol to use when redirecting requests. The default is the protocol that is used in the original request.",
- "type": "string",
- "enum": [
- {
- "name": "Http",
- "value": "http"
- },
- {
- "name": "Https",
- "value": "https"
- }
- ]
- },
"aws-native:s3:BucketRedirectRule": {
- "description": "Specifies how requests are redirected. In the event of an error, you can specify a different error code to return.",
"properties": {
"hostName": {
- "type": "string",
- "description": "The host name to use in the redirect request."
+ "type": "string"
},
"httpRedirectCode": {
- "type": "string",
- "description": "The HTTP redirect code to use on the response. Not required if one of the siblings is present."
+ "type": "string"
},
"protocol": {
- "$ref": "#/types/aws-native:s3:BucketRedirectRuleProtocol",
- "description": "Protocol to use when redirecting requests. The default is the protocol that is used in the original request."
+ "type": "string"
},
"replaceKeyPrefixWith": {
- "type": "string",
- "description": "The object key prefix to use in the redirect request."
+ "type": "string"
},
"replaceKeyWith": {
- "type": "string",
- "description": "The specific object key to use in the redirect request.d"
+ "type": "string"
}
},
"type": "object"
},
- "aws-native:s3:BucketRedirectRuleProtocol": {
- "description": "Protocol to use when redirecting requests. The default is the protocol that is used in the original request.",
- "type": "string",
- "enum": [
- {
- "name": "Http",
- "value": "http"
- },
- {
- "name": "Https",
- "value": "https"
- }
- ]
- },
"aws-native:s3:BucketReplicaModifications": {
"properties": {
"status": {
- "$ref": "#/types/aws-native:s3:BucketReplicaModificationsStatus",
- "description": "Specifies whether Amazon S3 replicates modifications on replicas."
+ "type": "string"
}
},
"type": "object",
@@ -124655,33 +124940,16 @@
"status"
]
},
- "aws-native:s3:BucketReplicaModificationsStatus": {
- "description": "Specifies whether Amazon S3 replicates modifications on replicas.",
- "type": "string",
- "enum": [
- {
- "name": "Enabled",
- "value": "Enabled"
- },
- {
- "name": "Disabled",
- "value": "Disabled"
- }
- ]
- },
"aws-native:s3:BucketReplicationConfiguration": {
- "description": "A container for replication rules. You can add up to 1,000 rules. The maximum size of a replication configuration is 2 MB.",
"properties": {
"role": {
- "type": "string",
- "description": "The Amazon Resource Name (ARN) of the AWS Identity and Access Management (IAM) role that Amazon S3 assumes when replicating objects."
+ "type": "string"
},
"rules": {
"type": "array",
"items": {
"$ref": "#/types/aws-native:s3:BucketReplicationRule"
- },
- "description": "A container for one or more replication rules."
+ }
}
},
"type": "object",
@@ -124691,7 +124959,6 @@
]
},
"aws-native:s3:BucketReplicationDestination": {
- "description": "Specifies which Amazon S3 bucket to store replicated objects in and their storage class.",
"properties": {
"accessControlTranslation": {
"$ref": "#/types/aws-native:s3:BucketAccessControlTranslation"
@@ -124712,8 +124979,7 @@
"$ref": "#/types/aws-native:s3:BucketReplicationTime"
},
"storageClass": {
- "$ref": "#/types/aws-native:s3:BucketReplicationDestinationStorageClass",
- "description": "The storage class to use when replicating objects, such as S3 Standard or reduced redundancy."
+ "type": "string"
}
},
"type": "object",
@@ -124721,46 +124987,7 @@
"bucket"
]
},
- "aws-native:s3:BucketReplicationDestinationStorageClass": {
- "description": "The storage class to use when replicating objects, such as S3 Standard or reduced redundancy.",
- "type": "string",
- "enum": [
- {
- "name": "DeepArchive",
- "value": "DEEP_ARCHIVE"
- },
- {
- "name": "Glacier",
- "value": "GLACIER"
- },
- {
- "name": "GlacierIr",
- "value": "GLACIER_IR"
- },
- {
- "name": "IntelligentTiering",
- "value": "INTELLIGENT_TIERING"
- },
- {
- "name": "OnezoneIa",
- "value": "ONEZONE_IA"
- },
- {
- "name": "ReducedRedundancy",
- "value": "REDUCED_REDUNDANCY"
- },
- {
- "name": "Standard",
- "value": "STANDARD"
- },
- {
- "name": "StandardIa",
- "value": "STANDARD_IA"
- }
- ]
- },
"aws-native:s3:BucketReplicationRule": {
- "description": "Specifies which Amazon S3 objects to replicate and where to store the replicas.",
"properties": {
"deleteMarkerReplication": {
"$ref": "#/types/aws-native:s3:BucketDeleteMarkerReplication"
@@ -124772,12 +124999,10 @@
"$ref": "#/types/aws-native:s3:BucketReplicationRuleFilter"
},
"id": {
- "type": "string",
- "description": "A unique identifier for the rule."
+ "type": "string"
},
"prefix": {
- "type": "string",
- "description": "An object key name prefix that identifies the object or objects to which the rule applies."
+ "type": "string"
},
"priority": {
"type": "integer"
@@ -124786,8 +125011,7 @@
"$ref": "#/types/aws-native:s3:BucketSourceSelectionCriteria"
},
"status": {
- "$ref": "#/types/aws-native:s3:BucketReplicationRuleStatus",
- "description": "Specifies whether the rule is enabled."
+ "type": "string"
}
},
"type": "object",
@@ -124824,24 +125048,10 @@
},
"type": "object"
},
- "aws-native:s3:BucketReplicationRuleStatus": {
- "description": "Specifies whether the rule is enabled.",
- "type": "string",
- "enum": [
- {
- "name": "Disabled",
- "value": "Disabled"
- },
- {
- "name": "Enabled",
- "value": "Enabled"
- }
- ]
- },
"aws-native:s3:BucketReplicationTime": {
"properties": {
"status": {
- "$ref": "#/types/aws-native:s3:BucketReplicationTimeStatus"
+ "type": "string"
},
"time": {
"$ref": "#/types/aws-native:s3:BucketReplicationTimeValue"
@@ -124853,19 +125063,6 @@
"time"
]
},
- "aws-native:s3:BucketReplicationTimeStatus": {
- "type": "string",
- "enum": [
- {
- "name": "Disabled",
- "value": "Disabled"
- },
- {
- "name": "Enabled",
- "value": "Enabled"
- }
- ]
- },
"aws-native:s3:BucketReplicationTimeValue": {
"properties": {
"minutes": {
@@ -124878,11 +125075,9 @@
]
},
"aws-native:s3:BucketRoutingRule": {
- "description": "Specifies the redirect behavior and when a redirect is applied.",
"properties": {
"redirectRule": {
- "$ref": "#/types/aws-native:s3:BucketRedirectRule",
- "description": "Container for redirect information. You can redirect requests to another host, to another page, or with another protocol. In the event of an error, you can specify a different error code to return."
+ "$ref": "#/types/aws-native:s3:BucketRedirectRule"
},
"routingRuleCondition": {
"$ref": "#/types/aws-native:s3:BucketRoutingRuleCondition"
@@ -124894,21 +125089,17 @@
]
},
"aws-native:s3:BucketRoutingRuleCondition": {
- "description": "A container for describing a condition that must be met for the specified redirect to apply.You must specify at least one of HttpErrorCodeReturnedEquals and KeyPrefixEquals",
"properties": {
"httpErrorCodeReturnedEquals": {
- "type": "string",
- "description": "The HTTP error code when the redirect is applied. "
+ "type": "string"
},
"keyPrefixEquals": {
- "type": "string",
- "description": "The object key name prefix when the redirect is applied."
+ "type": "string"
}
},
"type": "object"
},
"aws-native:s3:BucketRule": {
- "description": "You must specify at least one of the following properties: AbortIncompleteMultipartUpload, ExpirationDate, ExpirationInDays, NoncurrentVersionExpirationInDays, NoncurrentVersionTransition, NoncurrentVersionTransitions, Transition, or Transitions.",
"properties": {
"abortIncompleteMultipartUpload": {
"$ref": "#/types/aws-native:s3:BucketAbortIncompleteMultipartUpload"
@@ -124941,16 +125132,16 @@
}
},
"objectSizeGreaterThan": {
- "type": "string"
+ "type": "integer"
},
"objectSizeLessThan": {
- "type": "string"
+ "type": "integer"
},
"prefix": {
"type": "string"
},
"status": {
- "$ref": "#/types/aws-native:s3:BucketRuleStatus"
+ "type": "string"
},
"tagFilters": {
"type": "array",
@@ -124973,21 +125164,7 @@
"status"
]
},
- "aws-native:s3:BucketRuleStatus": {
- "type": "string",
- "enum": [
- {
- "name": "Enabled",
- "value": "Enabled"
- },
- {
- "name": "Disabled",
- "value": "Disabled"
- }
- ]
- },
"aws-native:s3:BucketS3KeyFilter": {
- "description": "A container for object key name prefix and suffix filtering rules.",
"properties": {
"rules": {
"type": "array",
@@ -125002,14 +125179,12 @@
]
},
"aws-native:s3:BucketServerSideEncryptionByDefault": {
- "description": "Specifies the default server-side encryption to apply to new objects in the bucket. If a PUT Object request doesn't specify any server-side encryption, this default encryption will be applied.",
"properties": {
"kmsMasterKeyId": {
- "type": "string",
- "description": "\"KMSMasterKeyID\" can only be used when you set the value of SSEAlgorithm as aws:kms or aws:kms:dsse."
+ "type": "string"
},
"sseAlgorithm": {
- "$ref": "#/types/aws-native:s3:BucketServerSideEncryptionByDefaultSseAlgorithm"
+ "type": "string"
}
},
"type": "object",
@@ -125017,29 +125192,10 @@
"sseAlgorithm"
]
},
- "aws-native:s3:BucketServerSideEncryptionByDefaultSseAlgorithm": {
- "type": "string",
- "enum": [
- {
- "name": "Awskms",
- "value": "aws:kms"
- },
- {
- "name": "Aes256",
- "value": "AES256"
- },
- {
- "name": "Awskmsdsse",
- "value": "aws:kms:dsse"
- }
- ]
- },
"aws-native:s3:BucketServerSideEncryptionRule": {
- "description": "Specifies the default server-side encryption configuration.",
"properties": {
"bucketKeyEnabled": {
- "type": "boolean",
- "description": "Specifies whether Amazon S3 should use an S3 Bucket Key with server-side encryption using KMS (SSE-KMS) for new objects in the bucket. Existing objects are not affected. Setting the BucketKeyEnabled element to true causes Amazon S3 to use an S3 Bucket Key. By default, S3 Bucket Key is not enabled."
+ "type": "boolean"
},
"serverSideEncryptionByDefault": {
"$ref": "#/types/aws-native:s3:BucketServerSideEncryptionByDefault"
@@ -125048,25 +125204,20 @@
"type": "object"
},
"aws-native:s3:BucketSourceSelectionCriteria": {
- "description": "A container that describes additional filters for identifying the source objects that you want to replicate.",
"properties": {
"replicaModifications": {
- "$ref": "#/types/aws-native:s3:BucketReplicaModifications",
- "description": "A filter that you can specify for selection for modifications on replicas."
+ "$ref": "#/types/aws-native:s3:BucketReplicaModifications"
},
"sseKmsEncryptedObjects": {
- "$ref": "#/types/aws-native:s3:BucketSseKmsEncryptedObjects",
- "description": "A container for filter information for the selection of Amazon S3 objects encrypted with AWS KMS."
+ "$ref": "#/types/aws-native:s3:BucketSseKmsEncryptedObjects"
}
},
"type": "object"
},
"aws-native:s3:BucketSseKmsEncryptedObjects": {
- "description": "A container for filter information for the selection of S3 objects encrypted with AWS KMS.",
"properties": {
"status": {
- "$ref": "#/types/aws-native:s3:BucketSseKmsEncryptedObjectsStatus",
- "description": "Specifies whether Amazon S3 replicates objects created with server-side encryption using a customer master key (CMK) stored in AWS Key Management Service."
+ "type": "string"
}
},
"type": "object",
@@ -125074,22 +125225,7 @@
"status"
]
},
- "aws-native:s3:BucketSseKmsEncryptedObjectsStatus": {
- "description": "Specifies whether Amazon S3 replicates objects created with server-side encryption using a customer master key (CMK) stored in AWS Key Management Service.",
- "type": "string",
- "enum": [
- {
- "name": "Disabled",
- "value": "Disabled"
- },
- {
- "name": "Enabled",
- "value": "Enabled"
- }
- ]
- },
"aws-native:s3:BucketStorageClassAnalysis": {
- "description": "Specifies data related to access patterns to be collected and made available to analyze the tradeoffs between different storage classes for an Amazon S3 bucket.",
"properties": {
"dataExport": {
"$ref": "#/types/aws-native:s3:BucketDataExport"
@@ -125113,7 +125249,6 @@
]
},
"aws-native:s3:BucketTagFilter": {
- "description": "Tags to use to identify a subset of objects for an Amazon S3 bucket.",
"properties": {
"key": {
"type": "string"
@@ -125131,12 +125266,10 @@
"aws-native:s3:BucketTiering": {
"properties": {
"accessTier": {
- "$ref": "#/types/aws-native:s3:BucketTieringAccessTier",
- "description": "S3 Intelligent-Tiering access tier. See Storage class for automatically optimizing frequently and infrequently accessed objects for a list of access tiers in the S3 Intelligent-Tiering storage class."
+ "type": "string"
},
"days": {
- "type": "integer",
- "description": "The number of consecutive days of no access after which an object will be eligible to be transitioned to the corresponding tier. The minimum number of days specified for Archive Access tier must be at least 90 days and Deep Archive Access tier must be at least 180 days. The maximum can be up to 2 years (730 days)."
+ "type": "integer"
}
},
"type": "object",
@@ -125145,34 +125278,16 @@
"days"
]
},
- "aws-native:s3:BucketTieringAccessTier": {
- "description": "S3 Intelligent-Tiering access tier. See Storage class for automatically optimizing frequently and infrequently accessed objects for a list of access tiers in the S3 Intelligent-Tiering storage class.",
- "type": "string",
- "enum": [
- {
- "name": "ArchiveAccess",
- "value": "ARCHIVE_ACCESS"
- },
- {
- "name": "DeepArchiveAccess",
- "value": "DEEP_ARCHIVE_ACCESS"
- }
- ]
- },
"aws-native:s3:BucketTopicConfiguration": {
- "description": "The topic to which notifications are sent and the events for which notifications are generated.",
"properties": {
"event": {
- "type": "string",
- "description": "The Amazon S3 bucket event about which to send notifications."
+ "type": "string"
},
"filter": {
- "$ref": "#/types/aws-native:s3:BucketNotificationFilter",
- "description": "The filtering rules that determine for which objects to send notifications."
+ "$ref": "#/types/aws-native:s3:BucketNotificationFilter"
},
"topic": {
- "type": "string",
- "description": "The Amazon Resource Name (ARN) of the Amazon SNS topic to which Amazon S3 publishes a message when it detects events of the specified type."
+ "type": "string"
}
},
"type": "object",
@@ -125182,10 +125297,9 @@
]
},
"aws-native:s3:BucketTransition": {
- "description": "You must specify at least one of \"TransitionDate\" and \"TransitionInDays\"",
"properties": {
"storageClass": {
- "$ref": "#/types/aws-native:s3:BucketTransitionStorageClass"
+ "type": "string"
},
"transitionDate": {
"type": "string"
@@ -125199,41 +125313,10 @@
"storageClass"
]
},
- "aws-native:s3:BucketTransitionStorageClass": {
- "type": "string",
- "enum": [
- {
- "name": "DeepArchive",
- "value": "DEEP_ARCHIVE"
- },
- {
- "name": "Glacier",
- "value": "GLACIER"
- },
- {
- "name": "GlacierIr",
- "value": "GLACIER_IR"
- },
- {
- "name": "IntelligentTiering",
- "value": "INTELLIGENT_TIERING"
- },
- {
- "name": "OnezoneIa",
- "value": "ONEZONE_IA"
- },
- {
- "name": "StandardIa",
- "value": "STANDARD_IA"
- }
- ]
- },
"aws-native:s3:BucketVersioningConfiguration": {
- "description": "Describes the versioning state of an Amazon S3 bucket.",
"properties": {
"status": {
- "$ref": "#/types/aws-native:s3:BucketVersioningConfigurationStatus",
- "description": "The versioning state of the bucket."
+ "type": "string"
}
},
"type": "object",
@@ -125241,30 +125324,13 @@
"status"
]
},
- "aws-native:s3:BucketVersioningConfigurationStatus": {
- "description": "The versioning state of the bucket.",
- "type": "string",
- "enum": [
- {
- "name": "Enabled",
- "value": "Enabled"
- },
- {
- "name": "Suspended",
- "value": "Suspended"
- }
- ]
- },
"aws-native:s3:BucketWebsiteConfiguration": {
- "description": "Specifies website configuration parameters for an Amazon S3 bucket.",
"properties": {
"errorDocument": {
- "type": "string",
- "description": "The name of the error document for the website."
+ "type": "string"
},
"indexDocument": {
- "type": "string",
- "description": "The name of the index document for the website."
+ "type": "string"
},
"redirectAllRequestsTo": {
"$ref": "#/types/aws-native:s3:BucketRedirectAllRequestsTo"
@@ -126413,6 +126479,10 @@
"datasetFormat": {
"$ref": "#/types/aws-native:sagemaker:DataQualityJobDefinitionDatasetFormat"
},
+ "excludeFeaturesAttribute": {
+ "type": "string",
+ "description": "Indexes or names of the features to be excluded from analysis"
+ },
"localPath": {
"type": "string",
"description": "Path to the filesystem where the endpoint data is available to the container."
@@ -126595,6 +126665,10 @@
"endpointName": {
"type": "string"
},
+ "excludeFeaturesAttribute": {
+ "type": "string",
+ "description": "Indexes or names of the features to be excluded from analysis"
+ },
"localPath": {
"type": "string",
"description": "Path to the filesystem where the endpoint data is available to the container."
@@ -131524,6 +131598,10 @@
"datasetFormat": {
"$ref": "#/types/aws-native:sagemaker:MonitoringScheduleDatasetFormat"
},
+ "excludeFeaturesAttribute": {
+ "type": "string",
+ "description": "Indexes or names of the features to be excluded from analysis"
+ },
"localPath": {
"type": "string",
"description": "Path to the filesystem where the endpoint data is available to the container."
@@ -131659,6 +131737,10 @@
"endpointName": {
"type": "string"
},
+ "excludeFeaturesAttribute": {
+ "type": "string",
+ "description": "Indexes or names of the features to be excluded from analysis"
+ },
"localPath": {
"type": "string",
"description": "Path to the filesystem where the endpoint data is available to the container."
@@ -132007,9 +132089,17 @@
"aws-native:sagemaker:MonitoringScheduleScheduleConfig": {
"description": "Configuration details about the monitoring schedule.",
"properties": {
+ "dataAnalysisEndTime": {
+ "type": "string",
+ "description": "Data Analysis end time, e.g. PT0H"
+ },
+ "dataAnalysisStartTime": {
+ "type": "string",
+ "description": "Data Analysis start time, e.g. -PT1H"
+ },
"scheduleExpression": {
"type": "string",
- "description": "A cron expression that describes details about the monitoring schedule."
+ "description": "A cron expression or 'NOW' that describes details about the monitoring schedule."
}
},
"type": "object",
@@ -145531,18 +145621,18 @@
]
},
"aws-native:apigateway:Account": {
- "description": "Resource Type definition for AWS::ApiGateway::Account",
+ "description": "The ``AWS::ApiGateway::Account`` resource specifies the IAM role that Amazon API Gateway uses to write API logs to Amazon CloudWatch Logs. To avoid overwriting other roles, you should only have one ``AWS::ApiGateway::Account`` resource per region per account.",
"properties": {
"cloudWatchRoleArn": {
"type": "string",
- "description": "The Amazon Resource Name (ARN) of an IAM role that has write access to CloudWatch Logs in your account."
+ "description": "The ARN of an Amazon CloudWatch role for the current Account."
}
},
"type": "object",
"inputProperties": {
"cloudWatchRoleArn": {
"type": "string",
- "description": "The Amazon Resource Name (ARN) of an IAM role that has write access to CloudWatch Logs in your account."
+ "description": "The ARN of an Amazon CloudWatch role for the current Account."
}
}
},
@@ -145641,7 +145731,7 @@
}
},
"aws-native:apigateway:Authorizer": {
- "description": "Represents an authorization layer for methods. If enabled on a method, API Gateway will activate the authorizer when a client calls the method.",
+ "description": "The ``AWS::ApiGateway::Authorizer`` resource creates an authorization layer that API Gateway activates for methods that have authorization enabled. API Gateway activates the authorizer when a client calls those methods.",
"properties": {
"authType": {
"type": "string",
@@ -145649,26 +145739,26 @@
},
"authorizerCredentials": {
"type": "string",
- "description": "Specifies the required credentials as an IAM role for API Gateway to invoke the authorizer."
+ "description": "Specifies the required credentials as an IAM role for API Gateway to invoke the authorizer. To specify an IAM role for API Gateway to assume, use the role's Amazon Resource Name (ARN). To use resource-based permissions on the Lambda function, specify null."
},
"authorizerId": {
"type": "string"
},
"authorizerResultTtlInSeconds": {
"type": "integer",
- "description": "The TTL in seconds of cached authorizer results."
+ "description": "The TTL in seconds of cached authorizer results. If it equals 0, authorization caching is disabled. If it is greater than 0, API Gateway will cache authorizer responses. If this field is not set, the default value is 300. The maximum value is 3600, or 1 hour."
},
"authorizerUri": {
"type": "string",
- "description": "Specifies the authorizer's Uniform Resource Identifier (URI)."
+ "description": "Specifies the authorizer's Uniform Resource Identifier (URI). For ``TOKEN`` or ``REQUEST`` authorizers, this must be a well-formed Lambda function URI, for example, ``arn:aws:apigateway:us-west-2:lambda:path/2015-03-31/functions/arn:aws:lambda:us-west-2:{account_id}:function:{lambda_function_name}/invocations``. In general, the URI has this form ``arn:aws:apigateway:{region}:lambda:path/{service_api}``, where ``{region}`` is the same as the region hosting the Lambda function, ``path`` indicates that the remaining substring in the URI should be treated as the path to the resource, including the initial ``/``. For Lambda functions, this is usually of the form ``/2015-03-31/functions/[FunctionARN]/invocations``."
},
"identitySource": {
"type": "string",
- "description": "The identity source for which authorization is requested."
+ "description": "The identity source for which authorization is requested. For a ``TOKEN`` or ``COGNITO_USER_POOLS`` authorizer, this is required and specifies the request header mapping expression for the custom header holding the authorization token submitted by the client. For example, if the token header name is ``Auth``, the header mapping expression is ``method.request.header.Auth``. For the ``REQUEST`` authorizer, this is required when authorization caching is enabled. The value is a comma-separated string of one or more mapping expressions of the specified request parameters. For example, if an ``Auth`` header, a ``Name`` query string parameter are defined as identity sources, this value is ``method.request.header.Auth, method.request.querystring.Name``. These parameters will be used to derive the authorization caching key and to perform runtime validation of the ``REQUEST`` authorizer by verifying all of the identity-related request parameters are present, not null and non-empty. Only when this is true does the authorizer invoke the authorizer Lambda function, otherwise, it returns a 401 Unauthorized response without calling the Lambda function. The valid value is a string of comma-separated mapping expressions of the specified request parameters. When the authorization caching is not enabled, this property is optional."
},
"identityValidationExpression": {
"type": "string",
- "description": "A validation expression for the incoming identity token."
+ "description": "A validation expression for the incoming identity token. For ``TOKEN`` authorizers, this value is a regular expression. For ``COGNITO_USER_POOLS`` authorizers, API Gateway will match the ``aud`` field of the incoming token from the client against the specified regular expression. It will invoke the authorizer's Lambda function when there is a match. Otherwise, it will return a 401 Unauthorized response without calling the Lambda function. The validation expression does not apply to the ``REQUEST`` authorizer."
},
"name": {
"type": "string",
@@ -145679,16 +145769,16 @@
"items": {
"type": "string"
},
- "description": "A list of the Amazon Cognito user pool ARNs for the COGNITO_USER_POOLS authorizer."
+ "description": "A list of the Amazon Cognito user pool ARNs for the ``COGNITO_USER_POOLS`` authorizer. Each element is of this format: ``arn:aws:cognito-idp:{region}:{account_id}:userpool/{user_pool_id}``. For a ``TOKEN`` or ``REQUEST`` authorizer, this is not defined."
},
"restApiId": {
"type": "string",
- "description": "The identifier of the API.",
+ "description": "The string identifier of the associated RestApi.",
"replaceOnChanges": true
},
"type": {
"type": "string",
- "description": "The authorizer type."
+ "description": "The authorizer type. Valid values are ``TOKEN`` for a Lambda function using a single authorization token submitted in a custom header, ``REQUEST`` for a Lambda function using incoming request parameters, and ``COGNITO_USER_POOLS`` for using an Amazon Cognito user pool."
}
},
"type": "object",
@@ -145705,23 +145795,23 @@
},
"authorizerCredentials": {
"type": "string",
- "description": "Specifies the required credentials as an IAM role for API Gateway to invoke the authorizer."
+ "description": "Specifies the required credentials as an IAM role for API Gateway to invoke the authorizer. To specify an IAM role for API Gateway to assume, use the role's Amazon Resource Name (ARN). To use resource-based permissions on the Lambda function, specify null."
},
"authorizerResultTtlInSeconds": {
"type": "integer",
- "description": "The TTL in seconds of cached authorizer results."
+ "description": "The TTL in seconds of cached authorizer results. If it equals 0, authorization caching is disabled. If it is greater than 0, API Gateway will cache authorizer responses. If this field is not set, the default value is 300. The maximum value is 3600, or 1 hour."
},
"authorizerUri": {
"type": "string",
- "description": "Specifies the authorizer's Uniform Resource Identifier (URI)."
+ "description": "Specifies the authorizer's Uniform Resource Identifier (URI). For ``TOKEN`` or ``REQUEST`` authorizers, this must be a well-formed Lambda function URI, for example, ``arn:aws:apigateway:us-west-2:lambda:path/2015-03-31/functions/arn:aws:lambda:us-west-2:{account_id}:function:{lambda_function_name}/invocations``. In general, the URI has this form ``arn:aws:apigateway:{region}:lambda:path/{service_api}``, where ``{region}`` is the same as the region hosting the Lambda function, ``path`` indicates that the remaining substring in the URI should be treated as the path to the resource, including the initial ``/``. For Lambda functions, this is usually of the form ``/2015-03-31/functions/[FunctionARN]/invocations``."
},
"identitySource": {
"type": "string",
- "description": "The identity source for which authorization is requested."
+ "description": "The identity source for which authorization is requested. For a ``TOKEN`` or ``COGNITO_USER_POOLS`` authorizer, this is required and specifies the request header mapping expression for the custom header holding the authorization token submitted by the client. For example, if the token header name is ``Auth``, the header mapping expression is ``method.request.header.Auth``. For the ``REQUEST`` authorizer, this is required when authorization caching is enabled. The value is a comma-separated string of one or more mapping expressions of the specified request parameters. For example, if an ``Auth`` header, a ``Name`` query string parameter are defined as identity sources, this value is ``method.request.header.Auth, method.request.querystring.Name``. These parameters will be used to derive the authorization caching key and to perform runtime validation of the ``REQUEST`` authorizer by verifying all of the identity-related request parameters are present, not null and non-empty. Only when this is true does the authorizer invoke the authorizer Lambda function, otherwise, it returns a 401 Unauthorized response without calling the Lambda function. The valid value is a string of comma-separated mapping expressions of the specified request parameters. When the authorization caching is not enabled, this property is optional."
},
"identityValidationExpression": {
"type": "string",
- "description": "A validation expression for the incoming identity token."
+ "description": "A validation expression for the incoming identity token. For ``TOKEN`` authorizers, this value is a regular expression. For ``COGNITO_USER_POOLS`` authorizers, API Gateway will match the ``aud`` field of the incoming token from the client against the specified regular expression. It will invoke the authorizer's Lambda function when there is a match. Otherwise, it will return a 401 Unauthorized response without calling the Lambda function. The validation expression does not apply to the ``REQUEST`` authorizer."
},
"name": {
"type": "string",
@@ -145732,15 +145822,15 @@
"items": {
"type": "string"
},
- "description": "A list of the Amazon Cognito user pool ARNs for the COGNITO_USER_POOLS authorizer."
+ "description": "A list of the Amazon Cognito user pool ARNs for the ``COGNITO_USER_POOLS`` authorizer. Each element is of this format: ``arn:aws:cognito-idp:{region}:{account_id}:userpool/{user_pool_id}``. For a ``TOKEN`` or ``REQUEST`` authorizer, this is not defined."
},
"restApiId": {
"type": "string",
- "description": "The identifier of the API."
+ "description": "The string identifier of the associated RestApi."
},
"type": {
"type": "string",
- "description": "The authorizer type."
+ "description": "The authorizer type. Valid values are ``TOKEN`` for a Lambda function using a single authorization token submitted in a custom header, ``REQUEST`` for a Lambda function using incoming request parameters, and ``COGNITO_USER_POOLS`` for using an Amazon Cognito user pool."
}
},
"requiredInputs": [
@@ -145834,11 +145924,11 @@
}
},
"aws-native:apigateway:Deployment": {
- "description": "Resource Type definition for AWS::ApiGateway::Deployment",
+ "description": "The ``AWS::ApiGateway::Deployment`` resource deploys an API Gateway ``RestApi`` resource to a stage so that clients can call the API over the internet. The stage acts as an environment.",
"properties": {
"deploymentCanarySettings": {
"$ref": "#/types/aws-native:apigateway:DeploymentCanarySettings",
- "description": "Specifies settings for the canary deployment.",
+ "description": "The input configuration for a canary deployment.",
"replaceOnChanges": true
},
"deploymentId": {
@@ -145847,20 +145937,20 @@
},
"description": {
"type": "string",
- "description": "A description of the purpose of the API Gateway deployment."
+ "description": "The description for the Deployment resource to create."
},
"restApiId": {
"type": "string",
- "description": "The ID of the RestApi resource to deploy. ",
+ "description": "The string identifier of the associated RestApi.",
"replaceOnChanges": true
},
"stageDescription": {
"$ref": "#/types/aws-native:apigateway:DeploymentStageDescription",
- "description": "Configures the stage that API Gateway creates with this deployment."
+ "description": "The description of the Stage resource for the Deployment resource to create. To specify a stage description, you must also provide a stage name."
},
"stageName": {
"type": "string",
- "description": "A name for the stage that API Gateway creates with this deployment. Use only alphanumeric characters."
+ "description": "The name of the Stage resource for the Deployment resource to create."
}
},
"type": "object",
@@ -145871,23 +145961,23 @@
"inputProperties": {
"deploymentCanarySettings": {
"$ref": "#/types/aws-native:apigateway:DeploymentCanarySettings",
- "description": "Specifies settings for the canary deployment."
+ "description": "The input configuration for a canary deployment."
},
"description": {
"type": "string",
- "description": "A description of the purpose of the API Gateway deployment."
+ "description": "The description for the Deployment resource to create."
},
"restApiId": {
"type": "string",
- "description": "The ID of the RestApi resource to deploy. "
+ "description": "The string identifier of the associated RestApi."
},
"stageDescription": {
"$ref": "#/types/aws-native:apigateway:DeploymentStageDescription",
- "description": "Configures the stage that API Gateway creates with this deployment."
+ "description": "The description of the Stage resource for the Deployment resource to create. To specify a stage description, you must also provide a stage name."
},
"stageName": {
"type": "string",
- "description": "A name for the stage that API Gateway creates with this deployment. Use only alphanumeric characters."
+ "description": "The name of the Stage resource for the Deployment resource to create."
}
},
"requiredInputs": [
@@ -145895,7 +145985,7 @@
]
},
"aws-native:apigateway:DocumentationPart": {
- "description": "Resource Type definition for AWS::ApiGateway::DocumentationPart",
+ "description": "The ``AWS::ApiGateway::DocumentationPart`` resource creates a documentation part for an API. For more information, see [Representation of API Documentation in API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-documenting-api-content-representation.html) in the *API Gateway Developer Guide*.",
"properties": {
"documentationPartId": {
"type": "string",
@@ -145903,16 +145993,16 @@
},
"location": {
"$ref": "#/types/aws-native:apigateway:DocumentationPartLocation",
- "description": "The location of the API entity that the documentation applies to.",
+ "description": "The location of the targeted API entity of the to-be-created documentation part.",
"replaceOnChanges": true
},
"properties": {
"type": "string",
- "description": "The documentation content map of the targeted API entity."
+ "description": "The new documentation content map of the targeted API entity. Enclosed key-value pairs are API-specific, but only OpenAPI-compliant key-value pairs can be exported and, hence, published."
},
"restApiId": {
"type": "string",
- "description": "Identifier of the targeted API entity",
+ "description": "The string identifier of the associated RestApi.",
"replaceOnChanges": true
}
},
@@ -145926,15 +146016,15 @@
"inputProperties": {
"location": {
"$ref": "#/types/aws-native:apigateway:DocumentationPartLocation",
- "description": "The location of the API entity that the documentation applies to."
+ "description": "The location of the targeted API entity of the to-be-created documentation part."
},
"properties": {
"type": "string",
- "description": "The documentation content map of the targeted API entity."
+ "description": "The new documentation content map of the targeted API entity. Enclosed key-value pairs are API-specific, but only OpenAPI-compliant key-value pairs can be exported and, hence, published."
},
"restApiId": {
"type": "string",
- "description": "Identifier of the targeted API entity"
+ "description": "The string identifier of the associated RestApi."
}
},
"requiredInputs": [
@@ -145944,15 +146034,15 @@
]
},
"aws-native:apigateway:DocumentationVersion": {
- "description": "A snapshot of the documentation of an API.",
+ "description": "The ``AWS::ApiGateway::DocumentationVersion`` resource creates a snapshot of the documentation for an API. For more information, see [Representation of API Documentation in API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-documenting-api-content-representation.html) in the *API Gateway Developer Guide*.",
"properties": {
"description": {
"type": "string",
- "description": "The description of the API documentation snapshot."
+ "description": "A description about the new documentation snapshot."
},
"documentationVersion": {
"type": "string",
- "description": "The version identifier of the API documentation snapshot.",
+ "description": "The version identifier of the to-be-updated documentation version.",
"language": {
"csharp": {
"name": "DocumentationVersionValue"
@@ -145962,7 +146052,7 @@
},
"restApiId": {
"type": "string",
- "description": "The identifier of the API.",
+ "description": "The string identifier of the associated RestApi.",
"replaceOnChanges": true
}
},
@@ -145974,11 +146064,11 @@
"inputProperties": {
"description": {
"type": "string",
- "description": "The description of the API documentation snapshot."
+ "description": "A description about the new documentation snapshot."
},
"documentationVersion": {
"type": "string",
- "description": "The version identifier of the API documentation snapshot.",
+ "description": "The version identifier of the to-be-updated documentation version.",
"language": {
"csharp": {
"name": "DocumentationVersionValue"
@@ -145987,7 +146077,7 @@
},
"restApiId": {
"type": "string",
- "description": "The identifier of the API."
+ "description": "The string identifier of the associated RestApi."
}
},
"requiredInputs": [
@@ -146136,67 +146226,67 @@
"deprecationMessage": "GatewayResponse is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible."
},
"aws-native:apigateway:Method": {
- "description": "Resource Type definition for AWS::ApiGateway::Method",
+ "description": "The ``AWS::ApiGateway::Method`` resource creates API Gateway methods that define the parameters and body that clients must send in their requests.",
"properties": {
"apiKeyRequired": {
"type": "boolean",
- "description": "Indicates whether the method requires clients to submit a valid API key."
+ "description": "A boolean flag specifying whether a valid ApiKey is required to invoke this method."
},
"authorizationScopes": {
"type": "array",
"items": {
"type": "string"
},
- "description": "A list of authorization scopes configured on the method."
+ "description": "A list of authorization scopes configured on the method. The scopes are used with a ``COGNITO_USER_POOLS`` authorizer to authorize the method invocation. The authorization works by matching the method scopes against the scopes parsed from the access token in the incoming request. The method invocation is authorized if any method scopes matches a claimed scope in the access token. Otherwise, the invocation is not authorized. When the method scope is configured, the client must provide an access token instead of an identity token for authorization purposes."
},
"authorizationType": {
"$ref": "#/types/aws-native:apigateway:MethodAuthorizationType",
- "description": "The method's authorization type."
+ "description": "The method's authorization type. This parameter is required. For valid values, see [Method](https://docs.aws.amazon.com/apigateway/latest/api/API_Method.html) in the *API Gateway API Reference*.\n If you specify the ``AuthorizerId`` property, specify ``CUSTOM`` or ``COGNITO_USER_POOLS`` for this property."
},
"authorizerId": {
"type": "string",
- "description": "The identifier of the authorizer to use on this method."
+ "description": "The identifier of an authorizer to use on this method. The method's authorization type must be ``CUSTOM`` or ``COGNITO_USER_POOLS``."
},
"httpMethod": {
"type": "string",
- "description": "The backend system that the method calls when it receives a request.",
+ "description": "The method's HTTP verb.",
"replaceOnChanges": true
},
"integration": {
"$ref": "#/types/aws-native:apigateway:MethodIntegration",
- "description": "The backend system that the method calls when it receives a request."
+ "description": "Represents an ``HTTP``, ``HTTP_PROXY``, ``AWS``, ``AWS_PROXY``, or Mock integration."
},
"methodResponses": {
"type": "array",
"items": {
"$ref": "#/types/aws-native:apigateway:MethodResponse"
},
- "description": "The responses that can be sent to the client who calls the method."
+ "description": "Gets a method response associated with a given HTTP status code."
},
"operationName": {
"type": "string",
- "description": "A friendly operation name for the method."
+ "description": "A human-friendly operation identifier for the method. For example, you can assign the ``operationName`` of ``ListPets`` for the ``GET /pets`` method in the ``PetStore`` example."
},
"requestModels": {
"$ref": "pulumi.json#/Any",
- "description": "The resources that are used for the request's content type. Specify request models as key-value pairs (string-to-string mapping), with a content type as the key and a Model resource name as the value."
+ "description": "A key-value map specifying data schemas, represented by Model resources, (as the mapped value) of the request payloads of given content types (as the mapping key)."
},
"requestParameters": {
"$ref": "pulumi.json#/Any",
- "description": "The request parameters that API Gateway accepts. Specify request parameters as key-value pairs (string-to-Boolean mapping), with a source as the key and a Boolean as the value."
+ "description": "A key-value map defining required or optional method request parameters that can be accepted by API Gateway. A key is a method request parameter name matching the pattern of ``method.request.{location}.{name}``, where ``location`` is ``querystring``, ``path``, or ``header`` and ``name`` is a valid and unique parameter name. The value associated with the key is a Boolean flag indicating whether the parameter is required (``true``) or optional (``false``). The method request parameter names defined here are available in Integration to be mapped to integration request parameters or templates."
},
"requestValidatorId": {
"type": "string",
- "description": "The ID of the associated request validator."
+ "description": "The identifier of a RequestValidator for request validation."
},
"resourceId": {
"type": "string",
- "description": "The ID of an API Gateway resource.",
+ "description": "The Resource identifier for the MethodResponse resource.",
"replaceOnChanges": true
},
"restApiId": {
"type": "string",
- "description": "The ID of the RestApi resource in which API Gateway creates the method.",
+ "description": "The string identifier of the associated RestApi.",
"replaceOnChanges": true
}
},
@@ -146209,61 +146299,61 @@
"inputProperties": {
"apiKeyRequired": {
"type": "boolean",
- "description": "Indicates whether the method requires clients to submit a valid API key."
+ "description": "A boolean flag specifying whether a valid ApiKey is required to invoke this method."
},
"authorizationScopes": {
"type": "array",
"items": {
"type": "string"
},
- "description": "A list of authorization scopes configured on the method."
+ "description": "A list of authorization scopes configured on the method. The scopes are used with a ``COGNITO_USER_POOLS`` authorizer to authorize the method invocation. The authorization works by matching the method scopes against the scopes parsed from the access token in the incoming request. The method invocation is authorized if any method scopes matches a claimed scope in the access token. Otherwise, the invocation is not authorized. When the method scope is configured, the client must provide an access token instead of an identity token for authorization purposes."
},
"authorizationType": {
"$ref": "#/types/aws-native:apigateway:MethodAuthorizationType",
- "description": "The method's authorization type."
+ "description": "The method's authorization type. This parameter is required. For valid values, see [Method](https://docs.aws.amazon.com/apigateway/latest/api/API_Method.html) in the *API Gateway API Reference*.\n If you specify the ``AuthorizerId`` property, specify ``CUSTOM`` or ``COGNITO_USER_POOLS`` for this property."
},
"authorizerId": {
"type": "string",
- "description": "The identifier of the authorizer to use on this method."
+ "description": "The identifier of an authorizer to use on this method. The method's authorization type must be ``CUSTOM`` or ``COGNITO_USER_POOLS``."
},
"httpMethod": {
"type": "string",
- "description": "The backend system that the method calls when it receives a request."
+ "description": "The method's HTTP verb."
},
"integration": {
"$ref": "#/types/aws-native:apigateway:MethodIntegration",
- "description": "The backend system that the method calls when it receives a request."
+ "description": "Represents an ``HTTP``, ``HTTP_PROXY``, ``AWS``, ``AWS_PROXY``, or Mock integration."
},
"methodResponses": {
"type": "array",
"items": {
"$ref": "#/types/aws-native:apigateway:MethodResponse"
},
- "description": "The responses that can be sent to the client who calls the method."
+ "description": "Gets a method response associated with a given HTTP status code."
},
"operationName": {
"type": "string",
- "description": "A friendly operation name for the method."
+ "description": "A human-friendly operation identifier for the method. For example, you can assign the ``operationName`` of ``ListPets`` for the ``GET /pets`` method in the ``PetStore`` example."
},
"requestModels": {
"$ref": "pulumi.json#/Any",
- "description": "The resources that are used for the request's content type. Specify request models as key-value pairs (string-to-string mapping), with a content type as the key and a Model resource name as the value."
+ "description": "A key-value map specifying data schemas, represented by Model resources, (as the mapped value) of the request payloads of given content types (as the mapping key)."
},
"requestParameters": {
"$ref": "pulumi.json#/Any",
- "description": "The request parameters that API Gateway accepts. Specify request parameters as key-value pairs (string-to-Boolean mapping), with a source as the key and a Boolean as the value."
+ "description": "A key-value map defining required or optional method request parameters that can be accepted by API Gateway. A key is a method request parameter name matching the pattern of ``method.request.{location}.{name}``, where ``location`` is ``querystring``, ``path``, or ``header`` and ``name`` is a valid and unique parameter name. The value associated with the key is a Boolean flag indicating whether the parameter is required (``true``) or optional (``false``). The method request parameter names defined here are available in Integration to be mapped to integration request parameters or templates."
},
"requestValidatorId": {
"type": "string",
- "description": "The ID of the associated request validator."
+ "description": "The identifier of a RequestValidator for request validation."
},
"resourceId": {
"type": "string",
- "description": "The ID of an API Gateway resource."
+ "description": "The Resource identifier for the MethodResponse resource."
},
"restApiId": {
"type": "string",
- "description": "The ID of the RestApi resource in which API Gateway creates the method."
+ "description": "The string identifier of the associated RestApi."
}
},
"requiredInputs": [
@@ -146273,30 +146363,30 @@
]
},
"aws-native:apigateway:Model": {
- "description": "Resource Type definition for AWS::ApiGateway::Model",
+ "description": "The ``AWS::ApiGateway::Model`` resource defines the structure of a request or response payload for an API method.",
"properties": {
"contentType": {
"type": "string",
- "description": "The content type for the model.",
+ "description": "The content-type for the model.",
"replaceOnChanges": true
},
"description": {
"type": "string",
- "description": "A description that identifies this model."
+ "description": "The description of the model."
},
"name": {
"type": "string",
- "description": "A name for the model. If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the model name.",
+ "description": "A name for the model. If you don't specify a name, CFN generates a unique physical ID and uses that ID for the model name. For more information, see [Name Type](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-name.html).\n If you specify a name, you cannot perform updates that require replacement of this resource. You can perform updates that require no or some interruption. If you must replace the resource, specify a new name.",
"replaceOnChanges": true
},
"restApiId": {
"type": "string",
- "description": "The ID of a REST API with which to associate this model.",
+ "description": "The string identifier of the associated RestApi.",
"replaceOnChanges": true
},
"schema": {
"$ref": "pulumi.json#/Any",
- "description": "The schema to use to transform data to one or more output formats. Specify null ({}) if you don't want to specify a schema."
+ "description": "The schema for the model. For ``application/json`` models, this should be JSON schema draft 4 model. Do not include \"\\*/\" characters in the description of any properties because such \"\\*/\" characters may be interpreted as the closing marker for comments in some languages, such as Java or JavaScript, causing the installation of your API's SDK generated by API Gateway to fail."
}
},
"type": "object",
@@ -146306,23 +146396,23 @@
"inputProperties": {
"contentType": {
"type": "string",
- "description": "The content type for the model."
+ "description": "The content-type for the model."
},
"description": {
"type": "string",
- "description": "A description that identifies this model."
+ "description": "The description of the model."
},
"name": {
"type": "string",
- "description": "A name for the model. If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the model name."
+ "description": "A name for the model. If you don't specify a name, CFN generates a unique physical ID and uses that ID for the model name. For more information, see [Name Type](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-name.html).\n If you specify a name, you cannot perform updates that require replacement of this resource. You can perform updates that require no or some interruption. If you must replace the resource, specify a new name."
},
"restApiId": {
"type": "string",
- "description": "The ID of a REST API with which to associate this model."
+ "description": "The string identifier of the associated RestApi."
},
"schema": {
"$ref": "pulumi.json#/Any",
- "description": "The schema to use to transform data to one or more output formats. Specify null ({}) if you don't want to specify a schema."
+ "description": "The schema for the model. For ``application/json`` models, this should be JSON schema draft 4 model. Do not include \"\\*/\" characters in the description of any properties because such \"\\*/\" characters may be interpreted as the closing marker for comments in some languages, such as Java or JavaScript, causing the installation of your API's SDK generated by API Gateway to fail."
}
},
"requiredInputs": [
@@ -146383,7 +146473,7 @@
]
},
"aws-native:apigateway:Resource": {
- "description": "Resource Type definition for AWS::ApiGateway::Resource",
+ "description": "The ``AWS::ApiGateway::Resource`` resource creates a resource in an API.",
"properties": {
"parentId": {
"type": "string",
@@ -146401,7 +146491,7 @@
},
"restApiId": {
"type": "string",
- "description": "The ID of the RestApi resource in which you want to create this resource..",
+ "description": "The string identifier of the associated RestApi.",
"replaceOnChanges": true
}
},
@@ -146423,7 +146513,7 @@
},
"restApiId": {
"type": "string",
- "description": "The ID of the RestApi resource in which you want to create this resource.."
+ "description": "The string identifier of the associated RestApi."
}
},
"requiredInputs": [
@@ -146433,52 +146523,66 @@
]
},
"aws-native:apigateway:RestApi": {
- "description": "Resource Type definition for AWS::ApiGateway::RestApi.",
+ "description": "The ``AWS::ApiGateway::RestApi`` resource creates a REST API. For more information, see [restapi:create](https://docs.aws.amazon.com/apigateway/latest/api/API_CreateRestApi.html) in the *Amazon API Gateway REST API Reference*.\n On January 1, 2016, the Swagger Specification was donated to the [OpenAPI initiative](https://docs.aws.amazon.com/https://www.openapis.org/), becoming the foundation of the OpenAPI Specification.",
"properties": {
"apiKeySourceType": {
- "type": "string"
+ "type": "string",
+ "description": "The source of the API key for metering requests according to a usage plan. Valid values are: ``HEADER`` to read the API key from the ``X-API-Key`` header of a request. ``AUTHORIZER`` to read the API key from the ``UsageIdentifierKey`` from a custom authorizer."
},
"binaryMediaTypes": {
"type": "array",
"items": {
"type": "string"
- }
+ },
+ "description": "The list of binary media types supported by the RestApi. By default, the RestApi supports only UTF-8-encoded text payloads."
},
"body": {
- "$ref": "pulumi.json#/Any"
+ "$ref": "pulumi.json#/Any",
+ "description": "An OpenAPI specification that defines a set of RESTful APIs in JSON format. For YAML templates, you can also provide the specification in YAML format."
},
"bodyS3Location": {
- "$ref": "#/types/aws-native:apigateway:RestApiS3Location"
+ "$ref": "#/types/aws-native:apigateway:RestApiS3Location",
+ "description": "The Amazon Simple Storage Service (Amazon S3) location that points to an OpenAPI file, which defines a set of RESTful APIs in JSON or YAML format."
},
"cloneFrom": {
- "type": "string"
+ "type": "string",
+ "description": "The ID of the RestApi that you want to clone from."
},
"description": {
- "type": "string"
+ "type": "string",
+ "description": "The description of the RestApi."
},
"disableExecuteApiEndpoint": {
- "type": "boolean"
+ "type": "boolean",
+ "description": "Specifies whether clients can invoke your API by using the default ``execute-api`` endpoint. By default, clients can invoke your API with the default ``https://{api_id}.execute-api.{region}.amazonaws.com`` endpoint. To require that clients use a custom domain name to invoke your API, disable the default endpoint"
},
"endpointConfiguration": {
- "$ref": "#/types/aws-native:apigateway:RestApiEndpointConfiguration"
+ "$ref": "#/types/aws-native:apigateway:RestApiEndpointConfiguration",
+ "description": "A list of the endpoint types of the API. Use this property when creating an API. When importing an existing API, specify the endpoint configuration types using the ``Parameters`` property."
},
"failOnWarnings": {
- "type": "boolean"
+ "type": "boolean",
+ "description": "A query parameter to indicate whether to rollback the API update (``true``) or not (``false``) when a warning is encountered. The default value is ``false``."
},
"minimumCompressionSize": {
- "type": "integer"
+ "type": "integer",
+ "description": "A nullable integer that is used to enable compression (with non-negative between 0 and 10485760 (10M) bytes, inclusive) or disable compression (with a null value) on an API. When compression is enabled, compression or decompression is not applied on the payload if the payload size is smaller than this value. Setting it to zero allows compression for any payload size."
},
"mode": {
- "type": "string"
+ "type": "string",
+ "description": "This property applies only when you use OpenAPI to define your REST API. The ``Mode`` determines how API Gateway handles resource updates.\n Valid values are ``overwrite`` or ``merge``. \n For ``overwrite``, the new API definition replaces the existing one. The existing API identifier remains unchanged.\n For ``merge``, the new API definition is merged with the existing API.\n If you don't specify this property, a default value is chosen. For REST APIs created before March 29, 2021, the default is ``overwrite``. For REST APIs created after March 29, 2021, the new API definition takes precedence, but any container types such as endpoint configurations and binary media types are merged with the existing API. \n Use the default mode to define top-level ``RestApi`` properties in addition to using OpenAPI. Generally, it's preferred to use API Gateway's OpenAPI extensions to model these properties."
},
"name": {
- "type": "string"
+ "type": "string",
+ "description": "The name of the RestApi. A name is required if the REST API is not based on an OpenAPI specification."
},
"parameters": {
- "$ref": "pulumi.json#/Any"
+ "$ref": "pulumi.json#/Any",
+ "description": "Custom header parameters as part of the request. For example, to exclude DocumentationParts from an imported API, set ``ignore=documentation`` as a ``parameters`` value, as in the AWS CLI command of ``aws apigateway import-rest-api --parameters ignore=documentation --body 'file:///path/to/imported-api-body.json'``."
},
"policy": {
- "$ref": "pulumi.json#/Any"
+ "$ref": "pulumi.json#/Any",
+ "description": "A policy document that contains the permissions for the ``RestApi`` resource. To set the ARN for the policy, use the ``!Join`` intrinsic function with ``\"\"`` as delimiter and values of ``\"execute-api:/\"`` and ``\"*\"``."
},
"restApiId": {
"type": "string"
@@ -146490,7 +146594,8 @@
"type": "array",
"items": {
"$ref": "#/types/aws-native:apigateway:RestApiTag"
- }
+ },
+ "description": "The key-value map of strings. The valid character set is [a-zA-Z+-=._:/]. The tag key can be up to 128 characters and must not start with ``aws:``. The tag value can be up to 256 characters."
}
},
"type": "object",
@@ -146500,108 +146605,123 @@
],
"inputProperties": {
"apiKeySourceType": {
- "type": "string"
+ "type": "string",
+ "description": "The source of the API key for metering requests according to a usage plan. Valid values are: ``HEADER`` to read the API key from the ``X-API-Key`` header of a request. ``AUTHORIZER`` to read the API key from the ``UsageIdentifierKey`` from a custom authorizer."
},
"binaryMediaTypes": {
"type": "array",
"items": {
"type": "string"
- }
+ },
+ "description": "The list of binary media types supported by the RestApi. By default, the RestApi supports only UTF-8-encoded text payloads."
},
"body": {
- "$ref": "pulumi.json#/Any"
+ "$ref": "pulumi.json#/Any",
+ "description": "An OpenAPI specification that defines a set of RESTful APIs in JSON format. For YAML templates, you can also provide the specification in YAML format."
},
"bodyS3Location": {
- "$ref": "#/types/aws-native:apigateway:RestApiS3Location"
+ "$ref": "#/types/aws-native:apigateway:RestApiS3Location",
+ "description": "The Amazon Simple Storage Service (Amazon S3) location that points to an OpenAPI file, which defines a set of RESTful APIs in JSON or YAML format."
},
"cloneFrom": {
- "type": "string"
+ "type": "string",
+ "description": "The ID of the RestApi that you want to clone from."
},
"description": {
- "type": "string"
+ "type": "string",
+ "description": "The description of the RestApi."
},
"disableExecuteApiEndpoint": {
- "type": "boolean"
+ "type": "boolean",
+ "description": "Specifies whether clients can invoke your API by using the default ``execute-api`` endpoint. By default, clients can invoke your API with the default ``https://{api_id}.execute-api.{region}.amazonaws.com`` endpoint. To require that clients use a custom domain name to invoke your API, disable the default endpoint"
},
"endpointConfiguration": {
- "$ref": "#/types/aws-native:apigateway:RestApiEndpointConfiguration"
+ "$ref": "#/types/aws-native:apigateway:RestApiEndpointConfiguration",
+ "description": "A list of the endpoint types of the API. Use this property when creating an API. When importing an existing API, specify the endpoint configuration types using the ``Parameters`` property."
},
"failOnWarnings": {
- "type": "boolean"
+ "type": "boolean",
+ "description": "A query parameter to indicate whether to rollback the API update (``true``) or not (``false``) when a warning is encountered. The default value is ``false``."
},
"minimumCompressionSize": {
- "type": "integer"
+ "type": "integer",
+ "description": "A nullable integer that is used to enable compression (with non-negative between 0 and 10485760 (10M) bytes, inclusive) or disable compression (with a null value) on an API. When compression is enabled, compression or decompression is not applied on the payload if the payload size is smaller than this value. Setting it to zero allows compression for any payload size."
},
"mode": {
- "type": "string"
+ "type": "string",
+ "description": "This property applies only when you use OpenAPI to define your REST API. The ``Mode`` determines how API Gateway handles resource updates.\n Valid values are ``overwrite`` or ``merge``. \n For ``overwrite``, the new API definition replaces the existing one. The existing API identifier remains unchanged.\n For ``merge``, the new API definition is merged with the existing API.\n If you don't specify this property, a default value is chosen. For REST APIs created before March 29, 2021, the default is ``overwrite``. For REST APIs created after March 29, 2021, the new API definition takes precedence, but any container types such as endpoint configurations and binary media types are merged with the existing API. \n Use the default mode to define top-level ``RestApi`` properties in addition to using OpenAPI. Generally, it's preferred to use API Gateway's OpenAPI extensions to model these properties."
},
"name": {
- "type": "string"
+ "type": "string",
+ "description": "The name of the RestApi. A name is required if the REST API is not based on an OpenAPI specification."
},
"parameters": {
- "$ref": "pulumi.json#/Any"
+ "$ref": "pulumi.json#/Any",
+ "description": "Custom header parameters as part of the request. For example, to exclude DocumentationParts from an imported API, set ``ignore=documentation`` as a ``parameters`` value, as in the AWS CLI command of ``aws apigateway import-rest-api --parameters ignore=documentation --body 'file:///path/to/imported-api-body.json'``."
},
"policy": {
- "$ref": "pulumi.json#/Any"
+ "$ref": "pulumi.json#/Any",
+ "description": "A policy document that contains the permissions for the ``RestApi`` resource. To set the ARN for the policy, use the ``!Join`` intrinsic function with ``\"\"`` as delimiter and values of ``\"execute-api:/\"`` and ``\"*\"``."
},
"tags": {
"type": "array",
"items": {
"$ref": "#/types/aws-native:apigateway:RestApiTag"
- }
+ },
+ "description": "The key-value map of strings. The valid character set is [a-zA-Z+-=._:/]. The tag key can be up to 128 characters and must not start with ``aws:``. The tag value can be up to 256 characters."
}
}
},
"aws-native:apigateway:Stage": {
- "description": "Resource Type definition for AWS::ApiGateway::Stage",
+ "description": "The ``AWS::ApiGateway::Stage`` resource creates a stage for a deployment.",
"properties": {
"accessLogSetting": {
"$ref": "#/types/aws-native:apigateway:StageAccessLogSetting",
- "description": "Specifies settings for logging access in this stage."
+ "description": "Access log settings, including the access log format and access log destination ARN."
},
"cacheClusterEnabled": {
"type": "boolean",
- "description": "Indicates whether cache clustering is enabled for the stage."
+ "description": "Specifies whether a cache cluster is enabled for the stage."
},
"cacheClusterSize": {
"type": "string",
- "description": "The stage's cache cluster size."
+ "description": "The stage's cache capacity in GB. For more information about choosing a cache size, see [Enabling API caching to enhance responsiveness](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-caching.html)."
},
"canarySetting": {
"$ref": "#/types/aws-native:apigateway:StageCanarySetting",
- "description": "Specifies settings for the canary deployment in this stage."
+ "description": "Settings for the canary deployment in this stage."
},
"clientCertificateId": {
"type": "string",
- "description": "The ID of the client certificate that API Gateway uses to call your integration endpoints in the stage. "
+ "description": "The identifier of a client certificate for an API stage."
},
"deploymentId": {
"type": "string",
- "description": "The ID of the deployment that the stage is associated with. This parameter is required to create a stage. "
+ "description": "The identifier of the Deployment that the stage points to."
},
"description": {
"type": "string",
- "description": "A description of the stage."
+ "description": "The stage's description."
},
"documentationVersion": {
"type": "string",
- "description": "The version ID of the API documentation snapshot."
+ "description": "The version of the associated API documentation."
},
"methodSettings": {
"type": "array",
"items": {
"$ref": "#/types/aws-native:apigateway:StageMethodSetting"
},
- "description": "Settings for all methods in the stage."
+ "description": "A map that defines the method settings for a Stage resource. Keys (designated as ``/{method_setting_key`` below) are method paths defined as ``{resource_path}/{http_method}`` for an individual method override, or ``/\\*/\\*`` for overriding all methods in the stage."
},
"restApiId": {
"type": "string",
- "description": "The ID of the RestApi resource that you're deploying with this stage.",
+ "description": "The string identifier of the associated RestApi.",
"replaceOnChanges": true
},
"stageName": {
"type": "string",
- "description": "The name of the stage, which API Gateway uses as the first path segment in the invoked Uniform Resource Identifier (URI).",
+ "description": "The name of the stage is the first path segment in the Uniform Resource Identifier (URI) of a call to API Gateway. Stage names can only contain alphanumeric characters, hyphens, and underscores. Maximum length is 128 characters.",
"replaceOnChanges": true
},
"tags": {
@@ -146609,15 +146729,15 @@
"items": {
"$ref": "#/types/aws-native:apigateway:StageTag"
},
- "description": "An array of arbitrary tags (key-value pairs) to associate with the stage."
+ "description": "The collection of tags. Each tag element is associated with a given resource."
},
"tracingEnabled": {
"type": "boolean",
- "description": "Specifies whether active X-Ray tracing is enabled for this stage."
+ "description": "Specifies whether active tracing with X-ray is enabled for the Stage."
},
"variables": {
"$ref": "pulumi.json#/Any",
- "description": "A map (string-to-string map) that defines the stage variables, where the variable name is the key and the variable value is the value."
+ "description": "A map (string-to-string map) that defines the stage variables, where the variable name is the key and the variable value is the value. Variable names are limited to alphanumeric characters. Values must match the following regular expression: ``[A-Za-z0-9-._~:/?#\u0026=,]+``."
}
},
"type": "object",
@@ -146627,65 +146747,65 @@
"inputProperties": {
"accessLogSetting": {
"$ref": "#/types/aws-native:apigateway:StageAccessLogSetting",
- "description": "Specifies settings for logging access in this stage."
+ "description": "Access log settings, including the access log format and access log destination ARN."
},
"cacheClusterEnabled": {
"type": "boolean",
- "description": "Indicates whether cache clustering is enabled for the stage."
+ "description": "Specifies whether a cache cluster is enabled for the stage."
},
"cacheClusterSize": {
"type": "string",
- "description": "The stage's cache cluster size."
+ "description": "The stage's cache capacity in GB. For more information about choosing a cache size, see [Enabling API caching to enhance responsiveness](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-caching.html)."
},
"canarySetting": {
"$ref": "#/types/aws-native:apigateway:StageCanarySetting",
- "description": "Specifies settings for the canary deployment in this stage."
+ "description": "Settings for the canary deployment in this stage."
},
"clientCertificateId": {
"type": "string",
- "description": "The ID of the client certificate that API Gateway uses to call your integration endpoints in the stage. "
+ "description": "The identifier of a client certificate for an API stage."
},
"deploymentId": {
"type": "string",
- "description": "The ID of the deployment that the stage is associated with. This parameter is required to create a stage. "
+ "description": "The identifier of the Deployment that the stage points to."
},
"description": {
"type": "string",
- "description": "A description of the stage."
+ "description": "The stage's description."
},
"documentationVersion": {
"type": "string",
- "description": "The version ID of the API documentation snapshot."
+ "description": "The version of the associated API documentation."
},
"methodSettings": {
"type": "array",
"items": {
"$ref": "#/types/aws-native:apigateway:StageMethodSetting"
},
- "description": "Settings for all methods in the stage."
+ "description": "A map that defines the method settings for a Stage resource. Keys (designated as ``/{method_setting_key`` below) are method paths defined as ``{resource_path}/{http_method}`` for an individual method override, or ``/\\*/\\*`` for overriding all methods in the stage."
},
"restApiId": {
"type": "string",
- "description": "The ID of the RestApi resource that you're deploying with this stage."
+ "description": "The string identifier of the associated RestApi."
},
"stageName": {
"type": "string",
- "description": "The name of the stage, which API Gateway uses as the first path segment in the invoked Uniform Resource Identifier (URI)."
+ "description": "The name of the stage is the first path segment in the Uniform Resource Identifier (URI) of a call to API Gateway. Stage names can only contain alphanumeric characters, hyphens, and underscores. Maximum length is 128 characters."
},
"tags": {
"type": "array",
"items": {
"$ref": "#/types/aws-native:apigateway:StageTag"
},
- "description": "An array of arbitrary tags (key-value pairs) to associate with the stage."
+ "description": "The collection of tags. Each tag element is associated with a given resource."
},
"tracingEnabled": {
"type": "boolean",
- "description": "Specifies whether active X-Ray tracing is enabled for this stage."
+ "description": "Specifies whether active tracing with X-ray is enabled for the Stage."
},
"variables": {
"$ref": "pulumi.json#/Any",
- "description": "A map (string-to-string map) that defines the stage variables, where the variable name is the key and the variable value is the value."
+ "description": "A map (string-to-string map) that defines the stage variables, where the variable name is the key and the variable value is the value. Variable names are limited to alphanumeric characters. Values must match the following regular expression: ``[A-Za-z0-9-._~:/?#\u0026=,]+``."
}
},
"requiredInputs": [
@@ -146761,21 +146881,21 @@
}
},
"aws-native:apigateway:UsagePlanKey": {
- "description": "Resource Type definition for AWS::ApiGateway::UsagePlanKey",
+ "description": "The ``AWS::ApiGateway::UsagePlanKey`` resource associates an API key with a usage plan. This association determines which users the usage plan is applied to.",
"properties": {
"keyId": {
"type": "string",
- "description": "The ID of the usage plan key.",
+ "description": "The Id of the UsagePlanKey resource.",
"replaceOnChanges": true
},
"keyType": {
"$ref": "#/types/aws-native:apigateway:UsagePlanKeyKeyType",
- "description": "The type of usage plan key. Currently, the only valid key type is API_KEY.",
+ "description": "The type of a UsagePlanKey resource for a plan customer.",
"replaceOnChanges": true
},
"usagePlanId": {
"type": "string",
- "description": "The ID of the usage plan.",
+ "description": "The Id of the UsagePlan resource representing the usage plan containing the UsagePlanKey resource representing a plan customer.",
"replaceOnChanges": true
}
},
@@ -146788,15 +146908,15 @@
"inputProperties": {
"keyId": {
"type": "string",
- "description": "The ID of the usage plan key."
+ "description": "The Id of the UsagePlanKey resource."
},
"keyType": {
"$ref": "#/types/aws-native:apigateway:UsagePlanKeyKeyType",
- "description": "The type of usage plan key. Currently, the only valid key type is API_KEY."
+ "description": "The type of a UsagePlanKey resource for a plan customer."
},
"usagePlanId": {
"type": "string",
- "description": "The ID of the usage plan."
+ "description": "The Id of the UsagePlan resource representing the usage plan containing the UsagePlanKey resource representing a plan customer."
}
},
"requiredInputs": [
@@ -147947,38 +148067,48 @@
"aws-native:appconfig:Application": {
"description": "Resource Type definition for AWS::AppConfig::Application",
"properties": {
+ "applicationId": {
+ "type": "string",
+ "description": "The application Id"
+ },
"description": {
- "type": "string"
+ "type": "string",
+ "description": "A description of the application."
},
"name": {
- "type": "string"
+ "type": "string",
+ "description": "A name for the application."
},
"tags": {
"type": "array",
"items": {
"$ref": "#/types/aws-native:appconfig:ApplicationTags"
- }
+ },
+ "description": "Metadata to assign to the application. Tags help organize and categorize your AWS AppConfig resources. Each tag consists of a key and an optional value, both of which you define."
}
},
"type": "object",
"required": [
+ "applicationId",
"name"
],
"inputProperties": {
"description": {
- "type": "string"
+ "type": "string",
+ "description": "A description of the application."
},
"name": {
- "type": "string"
+ "type": "string",
+ "description": "A name for the application."
},
"tags": {
"type": "array",
"items": {
"$ref": "#/types/aws-native:appconfig:ApplicationTags"
- }
+ },
+ "description": "Metadata to assign to the application. Tags help organize and categorize your AWS AppConfig resources. Each tag consists of a key and an optional value, both of which you define."
}
- },
- "deprecationMessage": "Application is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible."
+ }
},
"aws-native:appconfig:ConfigurationProfile": {
"description": "Resource Type definition for AWS::AppConfig::ConfigurationProfile",
@@ -147990,6 +148120,9 @@
"description": {
"type": "string"
},
+ "kmsKeyIdentifier": {
+ "type": "string"
+ },
"locationUri": {
"type": "string",
"replaceOnChanges": true
@@ -148030,6 +148163,9 @@
"description": {
"type": "string"
},
+ "kmsKeyIdentifier": {
+ "type": "string"
+ },
"locationUri": {
"type": "string"
},
@@ -151420,56 +151556,72 @@
]
},
"aws-native:appsync:FunctionConfiguration": {
- "description": "Resource Type definition for AWS::AppSync::FunctionConfiguration",
+ "description": "An example resource schema demonstrating some basic constructs and validation rules.",
"properties": {
"apiId": {
"type": "string",
+ "description": "The AWS AppSync GraphQL API that you want to attach using this function.",
"replaceOnChanges": true
},
"code": {
- "type": "string"
+ "type": "string",
+ "description": "The resolver code that contains the request and response functions. When code is used, the runtime is required. The runtime value must be APPSYNC_JS."
},
"codeS3Location": {
- "type": "string"
+ "type": "string",
+ "description": "The Amazon S3 endpoint (where the code is located??)."
},
"dataSourceName": {
- "type": "string"
+ "type": "string",
+ "description": "The name of data source this function will attach."
},
"description": {
- "type": "string"
+ "type": "string",
+ "description": "The function description."
},
"functionArn": {
- "type": "string"
+ "type": "string",
+ "description": "The ARN for the function generated by the service"
},
"functionId": {
- "type": "string"
+ "type": "string",
+ "description": "The unique identifier for the function generated by the service"
},
"functionVersion": {
- "type": "string"
+ "type": "string",
+ "description": "The version of the request mapping template. Currently, only the 2018-05-29 version of the template is supported."
},
"maxBatchSize": {
- "type": "integer"
+ "type": "integer",
+ "description": "The maximum number of resolver request inputs that will be sent to a single AWS Lambda function in a BatchInvoke operation."
},
"name": {
- "type": "string"
+ "type": "string",
+ "description": "The name of the function."
},
"requestMappingTemplate": {
- "type": "string"
+ "type": "string",
+ "description": "The Function request mapping template. Functions support only the 2018-05-29 version of the request mapping template."
},
"requestMappingTemplateS3Location": {
- "type": "string"
+ "type": "string",
+ "description": "Describes a Sync configuration for a resolver. Contains information on which Conflict Detection, as well as Resolution strategy, should be performed when the resolver is invoked."
},
"responseMappingTemplate": {
- "type": "string"
+ "type": "string",
+ "description": "The Function response mapping template."
},
"responseMappingTemplateS3Location": {
- "type": "string"
+ "type": "string",
+ "description": "The location of a response mapping template in an Amazon S3 bucket. Use this if you want to provision with a template file in Amazon S3 rather than embedding it in your CloudFormation template."
},
"runtime": {
- "$ref": "#/types/aws-native:appsync:FunctionConfigurationAppSyncRuntime"
+ "$ref": "#/types/aws-native:appsync:FunctionConfigurationAppSyncRuntime",
+ "description": "Describes a runtime used by an AWS AppSync pipeline resolver or AWS AppSync function. Specifies the name and version of the runtime to use. Note that if a runtime is specified, code must also be specified."
},
"syncConfig": {
- "$ref": "#/types/aws-native:appsync:FunctionConfigurationSyncConfig"
+ "$ref": "#/types/aws-native:appsync:FunctionConfigurationSyncConfig",
+ "description": "Describes a Sync configuration for a resolver. Specifies which Conflict Detection strategy and Resolution strategy to use when the resolver is invoked."
}
},
"type": "object",
@@ -151482,53 +151634,66 @@
],
"inputProperties": {
"apiId": {
- "type": "string"
+ "type": "string",
+ "description": "The AWS AppSync GraphQL API that you want to attach using this function."
},
"code": {
- "type": "string"
+ "type": "string",
+ "description": "The resolver code that contains the request and response functions. When code is used, the runtime is required. The runtime value must be APPSYNC_JS."
},
"codeS3Location": {
- "type": "string"
+ "type": "string",
+ "description": "The Amazon S3 endpoint (where the code is located??)."
},
"dataSourceName": {
- "type": "string"
+ "type": "string",
+ "description": "The name of data source this function will attach."
},
"description": {
- "type": "string"
+ "type": "string",
+ "description": "The function description."
},
"functionVersion": {
- "type": "string"
+ "type": "string",
+ "description": "The version of the request mapping template. Currently, only the 2018-05-29 version of the template is supported."
},
"maxBatchSize": {
- "type": "integer"
+ "type": "integer",
+ "description": "The maximum number of resolver request inputs that will be sent to a single AWS Lambda function in a BatchInvoke operation."
},
"name": {
- "type": "string"
+ "type": "string",
+ "description": "The name of the function."
},
"requestMappingTemplate": {
- "type": "string"
+ "type": "string",
+ "description": "The Function request mapping template. Functions support only the 2018-05-29 version of the request mapping template."
},
"requestMappingTemplateS3Location": {
- "type": "string"
+ "type": "string",
+ "description": "Describes a Sync configuration for a resolver. Contains information on which Conflict Detection, as well as Resolution strategy, should be performed when the resolver is invoked."
},
"responseMappingTemplate": {
- "type": "string"
+ "type": "string",
+ "description": "The Function response mapping template."
},
"responseMappingTemplateS3Location": {
- "type": "string"
+ "type": "string",
+ "description": "The location of a response mapping template in an Amazon S3 bucket. Use this if you want to provision with a template file in Amazon S3 rather than embedding it in your CloudFormation template."
},
"runtime": {
- "$ref": "#/types/aws-native:appsync:FunctionConfigurationAppSyncRuntime"
+ "$ref": "#/types/aws-native:appsync:FunctionConfigurationAppSyncRuntime",
+ "description": "Describes a runtime used by an AWS AppSync pipeline resolver or AWS AppSync function. Specifies the name and version of the runtime to use. Note that if a runtime is specified, code must also be specified."
},
"syncConfig": {
- "$ref": "#/types/aws-native:appsync:FunctionConfigurationSyncConfig"
+ "$ref": "#/types/aws-native:appsync:FunctionConfigurationSyncConfig",
+ "description": "Describes a Sync configuration for a resolver. Specifies which Conflict Detection strategy and Resolution strategy to use when the resolver is invoked."
}
},
"requiredInputs": [
"apiId",
"dataSourceName"
- ],
- "deprecationMessage": "FunctionConfiguration is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible."
+ ]
},
"aws-native:appsync:GraphQlApi": {
"description": "Resource Type definition for AWS::AppSync::GraphQLApi",
@@ -159718,13 +159883,6 @@
"identityPoolName": {
"type": "string"
},
- "identityPoolTags": {
- "type": "array",
- "items": {
- "$ref": "#/types/aws-native:cognito:IdentityPoolTag"
- },
- "description": "An array of key-value pairs to apply to this resource."
- },
"name": {
"type": "string"
},
@@ -159777,13 +159935,6 @@
"identityPoolName": {
"type": "string"
},
- "identityPoolTags": {
- "type": "array",
- "items": {
- "$ref": "#/types/aws-native:cognito:IdentityPoolTag"
- },
- "description": "An array of key-value pairs to apply to this resource."
- },
"openIdConnectProviderArns": {
"type": "array",
"items": {
@@ -159997,6 +160148,9 @@
"userPoolAddOns": {
"$ref": "#/types/aws-native:cognito:UserPoolAddOns"
},
+ "userPoolId": {
+ "type": "string"
+ },
"userPoolName": {
"type": "string"
},
@@ -160020,7 +160174,8 @@
"required": [
"arn",
"providerName",
- "providerUrl"
+ "providerUrl",
+ "userPoolId"
],
"inputProperties": {
"accountRecoverySetting": {
@@ -160110,8 +160265,7 @@
"verificationMessageTemplate": {
"$ref": "#/types/aws-native:cognito:UserPoolVerificationMessageTemplate"
}
- },
- "deprecationMessage": "UserPool is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible."
+ }
},
"aws-native:cognito:UserPoolClient": {
"description": "Resource Type definition for AWS::Cognito::UserPoolClient",
@@ -160370,7 +160524,7 @@
"replaceOnChanges": true
},
"precedence": {
- "type": "number"
+ "type": "integer"
},
"roleArn": {
"type": "string"
@@ -160392,7 +160546,7 @@
"type": "string"
},
"precedence": {
- "type": "number"
+ "type": "integer"
},
"roleArn": {
"type": "string"
@@ -160403,8 +160557,7 @@
},
"requiredInputs": [
"userPoolId"
- ],
- "deprecationMessage": "UserPoolGroup is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible."
+ ]
},
"aws-native:cognito:UserPoolIdentityProvider": {
"description": "Resource Type definition for AWS::Cognito::UserPoolIdentityProvider",
@@ -161695,11 +161848,11 @@
"description": "The name of the contact flow module."
},
"state": {
- "$ref": "#/types/aws-native:connect:ContactFlowModuleState",
+ "type": "string",
"description": "The state of the contact flow module."
},
"status": {
- "$ref": "#/types/aws-native:connect:ContactFlowModuleStatus",
+ "type": "string",
"description": "The status of the contact flow module."
},
"tags": {
@@ -161736,7 +161889,7 @@
"description": "The name of the contact flow module."
},
"state": {
- "$ref": "#/types/aws-native:connect:ContactFlowModuleState",
+ "type": "string",
"description": "The state of the contact flow module."
},
"tags": {
@@ -163646,6 +163799,15 @@
"type": "string",
"description": "The time of this integration got last updated at"
},
+ "matching": {
+ "$ref": "#/types/aws-native:customerprofiles:DomainMatching"
+ },
+ "ruleBasedMatching": {
+ "$ref": "#/types/aws-native:customerprofiles:DomainRuleBasedMatching"
+ },
+ "stats": {
+ "$ref": "#/types/aws-native:customerprofiles:DomainStats"
+ },
"tags": {
"type": "array",
"items": {
@@ -163658,7 +163820,8 @@
"required": [
"createdAt",
"domainName",
- "lastUpdatedAt"
+ "lastUpdatedAt",
+ "stats"
],
"inputProperties": {
"deadLetterQueueUrl": {
@@ -163677,6 +163840,12 @@
"type": "string",
"description": "The unique name of the domain."
},
+ "matching": {
+ "$ref": "#/types/aws-native:customerprofiles:DomainMatching"
+ },
+ "ruleBasedMatching": {
+ "$ref": "#/types/aws-native:customerprofiles:DomainRuleBasedMatching"
+ },
"tags": {
"type": "array",
"items": {
@@ -172719,6 +172888,10 @@
"enableDns64": {
"type": "boolean"
},
+ "ipv4NetmaskLength": {
+ "type": "integer",
+ "description": "The netmask length of the IPv4 CIDR you want to allocate to this subnet from an Amazon VPC IP Address Manager (IPAM) pool"
+ },
"ipv6CidrBlock": {
"type": "string"
},
@@ -172732,6 +172905,10 @@
"type": "boolean",
"replaceOnChanges": true
},
+ "ipv6NetmaskLength": {
+ "type": "integer",
+ "description": "The netmask length of the IPv6 CIDR you want to allocate to this subnet from an Amazon VPC IP Address Manager (IPAM) pool"
+ },
"mapPublicIpOnLaunch": {
"type": "boolean"
},
@@ -172782,12 +172959,20 @@
"enableDns64": {
"type": "boolean"
},
+ "ipv4NetmaskLength": {
+ "type": "integer",
+ "description": "The netmask length of the IPv4 CIDR you want to allocate to this subnet from an Amazon VPC IP Address Manager (IPAM) pool"
+ },
"ipv6CidrBlock": {
"type": "string"
},
"ipv6Native": {
"type": "boolean"
},
+ "ipv6NetmaskLength": {
+ "type": "integer",
+ "description": "The netmask length of the IPv6 CIDR you want to allocate to this subnet from an Amazon VPC IP Address Manager (IPAM) pool"
+ },
"mapPublicIpOnLaunch": {
"type": "boolean"
},
@@ -180315,6 +180500,105 @@
"type"
]
},
+ "aws-native:entityresolution:IdMappingWorkflow": {
+ "description": "IdMappingWorkflow defined in AWS Entity Resolution service",
+ "properties": {
+ "createdAt": {
+ "type": "string"
+ },
+ "description": {
+ "type": "string",
+ "description": "The description of the IdMappingWorkflow"
+ },
+ "idMappingTechniques": {
+ "$ref": "#/types/aws-native:entityresolution:IdMappingWorkflowIdMappingTechniques"
+ },
+ "inputSourceConfig": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:entityresolution:IdMappingWorkflowInputSource"
+ }
+ },
+ "outputSourceConfig": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:entityresolution:IdMappingWorkflowOutputSource"
+ }
+ },
+ "roleArn": {
+ "type": "string"
+ },
+ "tags": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:entityresolution:IdMappingWorkflowTag"
+ }
+ },
+ "updatedAt": {
+ "type": "string"
+ },
+ "workflowArn": {
+ "type": "string"
+ },
+ "workflowName": {
+ "type": "string",
+ "description": "The name of the IdMappingWorkflow",
+ "replaceOnChanges": true
+ }
+ },
+ "type": "object",
+ "required": [
+ "createdAt",
+ "idMappingTechniques",
+ "inputSourceConfig",
+ "outputSourceConfig",
+ "roleArn",
+ "updatedAt",
+ "workflowArn",
+ "workflowName"
+ ],
+ "inputProperties": {
+ "description": {
+ "type": "string",
+ "description": "The description of the IdMappingWorkflow"
+ },
+ "idMappingTechniques": {
+ "$ref": "#/types/aws-native:entityresolution:IdMappingWorkflowIdMappingTechniques"
+ },
+ "inputSourceConfig": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:entityresolution:IdMappingWorkflowInputSource"
+ }
+ },
+ "outputSourceConfig": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:entityresolution:IdMappingWorkflowOutputSource"
+ }
+ },
+ "roleArn": {
+ "type": "string"
+ },
+ "tags": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:entityresolution:IdMappingWorkflowTag"
+ }
+ },
+ "workflowName": {
+ "type": "string",
+ "description": "The name of the IdMappingWorkflow"
+ }
+ },
+ "requiredInputs": [
+ "idMappingTechniques",
+ "inputSourceConfig",
+ "outputSourceConfig",
+ "roleArn",
+ "workflowName"
+ ]
+ },
"aws-native:entityresolution:MatchingWorkflow": {
"description": "MatchingWorkflow defined in AWS Entity Resolution service",
"properties": {
@@ -180849,44 +181133,36 @@
"description": "Resource Type definition for AWS::Events::Rule",
"properties": {
"arn": {
- "type": "string",
- "description": "The ARN of the rule, such as arn:aws:events:us-east-2:123456789012:rule/example."
+ "type": "string"
},
"description": {
- "type": "string",
- "description": "The description of the rule."
+ "type": "string"
},
"eventBusName": {
"type": "string",
- "description": "The name or ARN of the event bus associated with the rule. If you omit this, the default event bus is used."
+ "replaceOnChanges": true
},
"eventPattern": {
- "type": "string",
- "description": "The event pattern of the rule. For more information, see Events and Event Patterns in the Amazon EventBridge User Guide."
+ "$ref": "pulumi.json#/Any"
},
"name": {
"type": "string",
- "description": "The name of the rule.",
"replaceOnChanges": true
},
"roleArn": {
- "type": "string",
- "description": "The Amazon Resource Name (ARN) of the role that is used for target invocation."
+ "type": "string"
},
"scheduleExpression": {
- "type": "string",
- "description": "The scheduling expression. For example, \"cron(0 20 * * ? *)\", \"rate(5 minutes)\". For more information, see Creating an Amazon EventBridge rule that runs on a schedule."
+ "type": "string"
},
"state": {
- "$ref": "#/types/aws-native:events:RuleState",
- "description": "The state of the rule."
+ "type": "string"
},
"targets": {
"type": "array",
"items": {
"$ref": "#/types/aws-native:events:RuleTarget"
- },
- "description": "Adds the specified targets to the specified rule, or updates the targets if they are already associated with the rule.\nTargets are the resources that are invoked when a rule is triggered."
+ }
}
},
"type": "object",
@@ -180895,39 +181171,31 @@
],
"inputProperties": {
"description": {
- "type": "string",
- "description": "The description of the rule."
+ "type": "string"
},
"eventBusName": {
- "type": "string",
- "description": "The name or ARN of the event bus associated with the rule. If you omit this, the default event bus is used."
+ "type": "string"
},
"eventPattern": {
- "type": "string",
- "description": "The event pattern of the rule. For more information, see Events and Event Patterns in the Amazon EventBridge User Guide."
+ "$ref": "pulumi.json#/Any"
},
"name": {
- "type": "string",
- "description": "The name of the rule."
+ "type": "string"
},
"roleArn": {
- "type": "string",
- "description": "The Amazon Resource Name (ARN) of the role that is used for target invocation."
+ "type": "string"
},
"scheduleExpression": {
- "type": "string",
- "description": "The scheduling expression. For example, \"cron(0 20 * * ? *)\", \"rate(5 minutes)\". For more information, see Creating an Amazon EventBridge rule that runs on a schedule."
+ "type": "string"
},
"state": {
- "$ref": "#/types/aws-native:events:RuleState",
- "description": "The state of the rule."
+ "type": "string"
},
"targets": {
"type": "array",
"items": {
"$ref": "#/types/aws-native:events:RuleTarget"
- },
- "description": "Adds the specified targets to the specified rule, or updates the targets if they are already associated with the rule.\nTargets are the resources that are invoked when a rule is triggered."
+ }
}
}
},
@@ -183249,6 +183517,11 @@
"description": "A unique identifier for an AWS IAM role that manages access to your AWS services. With an instance role ARN set, any application that runs on an instance in this fleet can assume the role, including install scripts, server processes, and daemons (background processes). Create a role or look up a role's ARN from the IAM dashboard in the AWS Management Console.",
"replaceOnChanges": true
},
+ "instanceRoleCredentialsProvider": {
+ "$ref": "#/types/aws-native:gamelift:FleetInstanceRoleCredentialsProvider",
+ "description": "Credentials provider implementation that loads credentials from the Amazon EC2 Instance Metadata Service.",
+ "replaceOnChanges": true
+ },
"locations": {
"type": "array",
"items": {
@@ -183369,6 +183642,10 @@
"type": "string",
"description": "A unique identifier for an AWS IAM role that manages access to your AWS services. With an instance role ARN set, any application that runs on an instance in this fleet can assume the role, including install scripts, server processes, and daemons (background processes). Create a role or look up a role's ARN from the IAM dashboard in the AWS Management Console."
},
+ "instanceRoleCredentialsProvider": {
+ "$ref": "#/types/aws-native:gamelift:FleetInstanceRoleCredentialsProvider",
+ "description": "Credentials provider implementation that loads credentials from the Amazon EC2 Instance Metadata Service."
+ },
"locations": {
"type": "array",
"items": {
@@ -187004,26 +187281,31 @@
"description": "Resource Type definition for AWS::IAM::Group",
"properties": {
"arn": {
- "type": "string"
+ "type": "string",
+ "description": "The Arn of the group to create"
},
"groupName": {
"type": "string",
+ "description": "The name of the group to create",
"replaceOnChanges": true
},
"managedPolicyArns": {
"type": "array",
"items": {
"type": "string"
- }
+ },
+ "description": "A list of Amazon Resource Names (ARNs) of the IAM managed policies that you want to attach to the role. "
},
"path": {
- "type": "string"
+ "type": "string",
+ "description": "The path to the group"
},
"policies": {
"type": "array",
"items": {
"$ref": "#/types/aws-native:iam:GroupPolicy"
- }
+ },
+ "description": "Adds or updates an inline policy document that is embedded in the specified IAM group"
}
},
"type": "object",
@@ -187032,25 +187314,28 @@
],
"inputProperties": {
"groupName": {
- "type": "string"
+ "type": "string",
+ "description": "The name of the group to create"
},
"managedPolicyArns": {
"type": "array",
"items": {
"type": "string"
- }
+ },
+ "description": "A list of Amazon Resource Names (ARNs) of the IAM managed policies that you want to attach to the role. "
},
"path": {
- "type": "string"
+ "type": "string",
+ "description": "The path to the group"
},
"policies": {
"type": "array",
"items": {
"$ref": "#/types/aws-native:iam:GroupPolicy"
- }
+ },
+ "description": "Adds or updates an inline policy document that is embedded in the specified IAM group"
}
- },
- "deprecationMessage": "Group is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible."
+ }
},
"aws-native:iam:GroupPolicy": {
"description": "Schema for IAM Group Policy",
@@ -189940,7 +190225,8 @@
"type": "array",
"items": {
"type": "string"
- }
+ },
+ "replaceOnChanges": true
},
"document": {
"type": "string",
@@ -189958,7 +190244,8 @@
"replaceOnChanges": true
},
"jobExecutionsRetryConfig": {
- "$ref": "#/types/aws-native:iot:JobExecutionsRetryConfigProperties"
+ "$ref": "#/types/aws-native:iot:JobExecutionsRetryConfigProperties",
+ "replaceOnChanges": true
},
"jobExecutionsRolloutConfig": {
"$ref": "#/types/aws-native:iot:JobExecutionsRolloutConfigProperties",
@@ -189973,7 +190260,8 @@
"type": "array",
"items": {
"$ref": "#/types/aws-native:iot:JobTemplateMaintenanceWindow"
- }
+ },
+ "replaceOnChanges": true
},
"presignedUrlConfig": {
"$ref": "#/types/aws-native:iot:PresignedUrlConfigProperties",
@@ -190178,6 +190466,12 @@
"policyName": {
"type": "string",
"replaceOnChanges": true
+ },
+ "tags": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:iot:PolicyTag"
+ }
}
},
"type": "object",
@@ -190191,6 +190485,12 @@
},
"policyName": {
"type": "string"
+ },
+ "tags": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:iot:PolicyTag"
+ }
}
},
"requiredInputs": [
@@ -196712,125 +197012,133 @@
"$ref": "#/types/aws-native:lambda:FunctionPackageType",
"description": "PackageType."
},
- "reservedConcurrentExecutions": {
- "type": "integer",
- "description": "The number of simultaneous executions to reserve for the function."
- },
- "role": {
- "type": "string",
- "description": "The Amazon Resource Name (ARN) of the function's execution role."
- },
- "runtime": {
- "type": "string",
- "description": "The identifier of the function's runtime."
- },
- "runtimeManagementConfig": {
- "$ref": "#/types/aws-native:lambda:FunctionRuntimeManagementConfig",
- "description": "RuntimeManagementConfig"
- },
- "snapStart": {
- "$ref": "#/types/aws-native:lambda:FunctionSnapStart",
- "description": "The SnapStart setting of your function"
- },
- "snapStartResponse": {
- "$ref": "#/types/aws-native:lambda:FunctionSnapStartResponse",
- "description": "The SnapStart response of your function"
- },
- "tags": {
- "type": "array",
- "items": {
- "$ref": "#/types/aws-native:lambda:FunctionTag"
- },
- "description": "A list of tags to apply to the function."
- },
- "timeout": {
- "type": "integer",
- "description": "The amount of time that Lambda allows a function to run before stopping it. The default is 3 seconds. The maximum allowed value is 900 seconds."
- },
- "tracingConfig": {
- "$ref": "#/types/aws-native:lambda:FunctionTracingConfig",
- "description": "Set Mode to Active to sample and trace a subset of incoming requests with AWS X-Ray."
- },
- "vpcConfig": {
- "$ref": "#/types/aws-native:lambda:FunctionVpcConfig",
- "description": "For network connectivity to AWS resources in a VPC, specify a list of security groups and subnets in the VPC."
- }
- },
- "type": "object",
- "required": [
- "arn",
- "code",
- "role",
- "snapStartResponse"
- ],
- "inputProperties": {
- "architectures": {
- "type": "array",
- "items": {
- "$ref": "#/types/aws-native:lambda:FunctionArchitecturesItem"
- }
- },
- "code": {
- "$ref": "#/types/aws-native:lambda:FunctionCode",
- "description": "The code for the function."
- },
- "codeSigningConfigArn": {
- "type": "string",
- "description": "A unique Arn for CodeSigningConfig resource"
- },
- "deadLetterConfig": {
- "$ref": "#/types/aws-native:lambda:FunctionDeadLetterConfig",
- "description": "A dead letter queue configuration that specifies the queue or topic where Lambda sends asynchronous events when they fail processing."
- },
- "description": {
- "type": "string",
- "description": "A description of the function."
- },
- "environment": {
- "$ref": "#/types/aws-native:lambda:FunctionEnvironment",
- "description": "Environment variables that are accessible from function code during execution."
- },
- "ephemeralStorage": {
- "$ref": "#/types/aws-native:lambda:FunctionEphemeralStorage",
- "description": "A function's ephemeral storage settings."
- },
- "fileSystemConfigs": {
- "type": "array",
- "items": {
- "$ref": "#/types/aws-native:lambda:FunctionFileSystemConfig"
- },
- "description": "Connection settings for an Amazon EFS file system. To connect a function to a file system, a mount target must be available in every Availability Zone that your function connects to. If your template contains an AWS::EFS::MountTarget resource, you must also specify a DependsOn attribute to ensure that the mount target is created or updated before the function."
- },
- "functionName": {
- "type": "string",
- "description": "The name of the Lambda function, up to 64 characters in length. If you don't specify a name, AWS CloudFormation generates one."
- },
- "handler": {
- "type": "string",
- "description": "The name of the method within your code that Lambda calls to execute your function. The format includes the file name. It can also include namespaces and other qualifiers, depending on the runtime"
- },
- "imageConfig": {
- "$ref": "#/types/aws-native:lambda:FunctionImageConfig",
- "description": "ImageConfig"
- },
- "kmsKeyArn": {
- "type": "string",
- "description": "The ARN of the AWS Key Management Service (AWS KMS) key that's used to encrypt your function's environment variables. If it's not provided, AWS Lambda uses a default service key."
- },
- "layers": {
- "type": "array",
- "items": {
- "type": "string"
- },
- "description": "A list of function layers to add to the function's execution environment. Specify each layer by its ARN, including the version."
- },
- "memorySize": {
- "type": "integer",
- "description": "The amount of memory that your function has access to. Increasing the function's memory also increases its CPU allocation. The default value is 128 MB. The value must be a multiple of 64 MB."
- },
- "packageType": {
- "$ref": "#/types/aws-native:lambda:FunctionPackageType",
- "description": "PackageType."
+ "policy": {
+ "$ref": "pulumi.json#/Any",
+ "description": "The resource policy of your function"
+ },
+ "reservedConcurrentExecutions": {
+ "type": "integer",
+ "description": "The number of simultaneous executions to reserve for the function."
+ },
+ "role": {
+ "type": "string",
+ "description": "The Amazon Resource Name (ARN) of the function's execution role."
+ },
+ "runtime": {
+ "type": "string",
+ "description": "The identifier of the function's runtime."
+ },
+ "runtimeManagementConfig": {
+ "$ref": "#/types/aws-native:lambda:FunctionRuntimeManagementConfig",
+ "description": "RuntimeManagementConfig"
+ },
+ "snapStart": {
+ "$ref": "#/types/aws-native:lambda:FunctionSnapStart",
+ "description": "The SnapStart setting of your function"
+ },
+ "snapStartResponse": {
+ "$ref": "#/types/aws-native:lambda:FunctionSnapStartResponse",
+ "description": "The SnapStart response of your function"
+ },
+ "tags": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:lambda:FunctionTag"
+ },
+ "description": "A list of tags to apply to the function."
+ },
+ "timeout": {
+ "type": "integer",
+ "description": "The amount of time that Lambda allows a function to run before stopping it. The default is 3 seconds. The maximum allowed value is 900 seconds."
+ },
+ "tracingConfig": {
+ "$ref": "#/types/aws-native:lambda:FunctionTracingConfig",
+ "description": "Set Mode to Active to sample and trace a subset of incoming requests with AWS X-Ray."
+ },
+ "vpcConfig": {
+ "$ref": "#/types/aws-native:lambda:FunctionVpcConfig",
+ "description": "For network connectivity to AWS resources in a VPC, specify a list of security groups and subnets in the VPC."
+ }
+ },
+ "type": "object",
+ "required": [
+ "arn",
+ "code",
+ "role",
+ "snapStartResponse"
+ ],
+ "inputProperties": {
+ "architectures": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:lambda:FunctionArchitecturesItem"
+ }
+ },
+ "code": {
+ "$ref": "#/types/aws-native:lambda:FunctionCode",
+ "description": "The code for the function."
+ },
+ "codeSigningConfigArn": {
+ "type": "string",
+ "description": "A unique Arn for CodeSigningConfig resource"
+ },
+ "deadLetterConfig": {
+ "$ref": "#/types/aws-native:lambda:FunctionDeadLetterConfig",
+ "description": "A dead letter queue configuration that specifies the queue or topic where Lambda sends asynchronous events when they fail processing."
+ },
+ "description": {
+ "type": "string",
+ "description": "A description of the function."
+ },
+ "environment": {
+ "$ref": "#/types/aws-native:lambda:FunctionEnvironment",
+ "description": "Environment variables that are accessible from function code during execution."
+ },
+ "ephemeralStorage": {
+ "$ref": "#/types/aws-native:lambda:FunctionEphemeralStorage",
+ "description": "A function's ephemeral storage settings."
+ },
+ "fileSystemConfigs": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:lambda:FunctionFileSystemConfig"
+ },
+ "description": "Connection settings for an Amazon EFS file system. To connect a function to a file system, a mount target must be available in every Availability Zone that your function connects to. If your template contains an AWS::EFS::MountTarget resource, you must also specify a DependsOn attribute to ensure that the mount target is created or updated before the function."
+ },
+ "functionName": {
+ "type": "string",
+ "description": "The name of the Lambda function, up to 64 characters in length. If you don't specify a name, AWS CloudFormation generates one."
+ },
+ "handler": {
+ "type": "string",
+ "description": "The name of the method within your code that Lambda calls to execute your function. The format includes the file name. It can also include namespaces and other qualifiers, depending on the runtime"
+ },
+ "imageConfig": {
+ "$ref": "#/types/aws-native:lambda:FunctionImageConfig",
+ "description": "ImageConfig"
+ },
+ "kmsKeyArn": {
+ "type": "string",
+ "description": "The ARN of the AWS Key Management Service (AWS KMS) key that's used to encrypt your function's environment variables. If it's not provided, AWS Lambda uses a default service key."
+ },
+ "layers": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "A list of function layers to add to the function's execution environment. Specify each layer by its ARN, including the version."
+ },
+ "memorySize": {
+ "type": "integer",
+ "description": "The amount of memory that your function has access to. Increasing the function's memory also increases its CPU allocation. The default value is 128 MB. The value must be a multiple of 64 MB."
+ },
+ "packageType": {
+ "$ref": "#/types/aws-native:lambda:FunctionPackageType",
+ "description": "PackageType."
+ },
+ "policy": {
+ "$ref": "pulumi.json#/Any",
+ "description": "The resource policy of your function"
},
"reservedConcurrentExecutions": {
"type": "integer",
@@ -203845,6 +204153,108 @@
"serverProperties"
]
},
+ "aws-native:msk:Replicator": {
+ "description": "Resource Type definition for AWS::MSK::Replicator",
+ "properties": {
+ "currentVersion": {
+ "type": "string",
+ "description": "The current version of the MSK replicator."
+ },
+ "description": {
+ "type": "string",
+ "description": "A summary description of the replicator.",
+ "replaceOnChanges": true
+ },
+ "kafkaClusters": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:msk:ReplicatorKafkaCluster"
+ },
+ "description": "Specifies a list of Kafka clusters which are targets of the replicator.",
+ "replaceOnChanges": true
+ },
+ "replicationInfoList": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:msk:ReplicatorReplicationInfo"
+ },
+ "description": "A list of replication configurations, where each configuration targets a given source cluster to target cluster replication flow."
+ },
+ "replicatorArn": {
+ "type": "string",
+ "description": "Amazon Resource Name for the created replicator."
+ },
+ "replicatorName": {
+ "type": "string",
+ "description": "The name of the replicator.",
+ "replaceOnChanges": true
+ },
+ "serviceExecutionRoleArn": {
+ "type": "string",
+ "description": "The Amazon Resource Name (ARN) of the IAM role used by the replicator to access external resources.",
+ "replaceOnChanges": true
+ },
+ "tags": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:msk:ReplicatorTag"
+ },
+ "description": "A collection of tags associated with a resource"
+ }
+ },
+ "type": "object",
+ "required": [
+ "kafkaClusters",
+ "replicationInfoList",
+ "replicatorArn",
+ "replicatorName",
+ "serviceExecutionRoleArn"
+ ],
+ "inputProperties": {
+ "currentVersion": {
+ "type": "string",
+ "description": "The current version of the MSK replicator."
+ },
+ "description": {
+ "type": "string",
+ "description": "A summary description of the replicator."
+ },
+ "kafkaClusters": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:msk:ReplicatorKafkaCluster"
+ },
+ "description": "Specifies a list of Kafka clusters which are targets of the replicator."
+ },
+ "replicationInfoList": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:msk:ReplicatorReplicationInfo"
+ },
+ "description": "A list of replication configurations, where each configuration targets a given source cluster to target cluster replication flow."
+ },
+ "replicatorName": {
+ "type": "string",
+ "description": "The name of the replicator."
+ },
+ "serviceExecutionRoleArn": {
+ "type": "string",
+ "description": "The Amazon Resource Name (ARN) of the IAM role used by the replicator to access external resources."
+ },
+ "tags": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:msk:ReplicatorTag"
+ },
+ "description": "A collection of tags associated with a resource"
+ }
+ },
+ "requiredInputs": [
+ "kafkaClusters",
+ "replicationInfoList",
+ "serviceExecutionRoleArn"
+ ]
+ },
"aws-native:msk:ServerlessCluster": {
"description": "Resource Type definition for AWS::MSK::ServerlessCluster",
"properties": {
@@ -211512,6 +211922,9 @@
},
"themeArn": {
"type": "string"
+ },
+ "validationStrategy": {
+ "$ref": "#/types/aws-native:quicksight:AnalysisValidationStrategy"
}
},
"type": "object",
@@ -211562,6 +211975,9 @@
},
"themeArn": {
"type": "string"
+ },
+ "validationStrategy": {
+ "$ref": "#/types/aws-native:quicksight:AnalysisValidationStrategy"
}
},
"requiredInputs": [
@@ -211622,6 +212038,9 @@
"themeArn": {
"type": "string"
},
+ "validationStrategy": {
+ "$ref": "#/types/aws-native:quicksight:DashboardValidationStrategy"
+ },
"version": {
"$ref": "#/types/aws-native:quicksight:DashboardVersion"
},
@@ -211677,6 +212096,9 @@
"themeArn": {
"type": "string"
},
+ "validationStrategy": {
+ "$ref": "#/types/aws-native:quicksight:DashboardValidationStrategy"
+ },
"versionDescription": {
"type": "string"
}
@@ -212074,6 +212496,9 @@
"type": "string",
"replaceOnChanges": true
},
+ "validationStrategy": {
+ "$ref": "#/types/aws-native:quicksight:TemplateValidationStrategy"
+ },
"version": {
"$ref": "#/types/aws-native:quicksight:TemplateVersion"
},
@@ -212118,6 +212543,9 @@
"templateId": {
"type": "string"
},
+ "validationStrategy": {
+ "$ref": "#/types/aws-native:quicksight:TemplateValidationStrategy"
+ },
"versionDescription": {
"type": "string"
}
@@ -219234,107 +219662,87 @@
"description": "Resource Type definition for AWS::S3::Bucket",
"properties": {
"accelerateConfiguration": {
- "$ref": "#/types/aws-native:s3:BucketAccelerateConfiguration",
- "description": "Configuration for the transfer acceleration state."
+ "$ref": "#/types/aws-native:s3:BucketAccelerateConfiguration"
},
"accessControl": {
- "$ref": "#/types/aws-native:s3:BucketAccessControl",
- "description": "A canned access control list (ACL) that grants predefined permissions to the bucket."
+ "type": "string"
},
"analyticsConfigurations": {
"type": "array",
"items": {
"$ref": "#/types/aws-native:s3:BucketAnalyticsConfiguration"
- },
- "description": "The configuration and any analyses for the analytics filter of an Amazon S3 bucket."
+ }
},
"arn": {
- "type": "string",
- "description": "The Amazon Resource Name (ARN) of the specified bucket."
+ "type": "string"
},
"bucketEncryption": {
"$ref": "#/types/aws-native:s3:BucketEncryption"
},
"bucketName": {
"type": "string",
- "description": "A name for the bucket. If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the bucket name.",
"replaceOnChanges": true
},
"corsConfiguration": {
- "$ref": "#/types/aws-native:s3:BucketCorsConfiguration",
- "description": "Rules that define cross-origin resource sharing of objects in this bucket."
+ "$ref": "#/types/aws-native:s3:BucketCorsConfiguration"
},
"domainName": {
- "type": "string",
- "description": "The IPv4 DNS name of the specified bucket."
+ "type": "string"
},
"dualStackDomainName": {
- "type": "string",
- "description": "The IPv6 DNS name of the specified bucket. For more information about dual-stack endpoints, see [Using Amazon S3 Dual-Stack Endpoints](https://docs.aws.amazon.com/AmazonS3/latest/dev/dual-stack-endpoints.html)."
+ "type": "string"
},
"intelligentTieringConfigurations": {
"type": "array",
"items": {
"$ref": "#/types/aws-native:s3:BucketIntelligentTieringConfiguration"
- },
- "description": "Specifies the S3 Intelligent-Tiering configuration for an Amazon S3 bucket."
+ }
},
"inventoryConfigurations": {
"type": "array",
"items": {
"$ref": "#/types/aws-native:s3:BucketInventoryConfiguration"
- },
- "description": "The inventory configuration for an Amazon S3 bucket."
+ }
},
"lifecycleConfiguration": {
- "$ref": "#/types/aws-native:s3:BucketLifecycleConfiguration",
- "description": "Rules that define how Amazon S3 manages objects during their lifetime."
+ "$ref": "#/types/aws-native:s3:BucketLifecycleConfiguration"
},
"loggingConfiguration": {
- "$ref": "#/types/aws-native:s3:BucketLoggingConfiguration",
- "description": "Settings that define where logs are stored."
+ "$ref": "#/types/aws-native:s3:BucketLoggingConfiguration"
},
"metricsConfigurations": {
"type": "array",
"items": {
"$ref": "#/types/aws-native:s3:BucketMetricsConfiguration"
- },
- "description": "Settings that define a metrics configuration for the CloudWatch request metrics from the bucket."
+ }
},
"notificationConfiguration": {
- "$ref": "#/types/aws-native:s3:BucketNotificationConfiguration",
- "description": "Configuration that defines how Amazon S3 handles bucket notifications."
+ "$ref": "#/types/aws-native:s3:BucketNotificationConfiguration"
},
"objectLockConfiguration": {
- "$ref": "#/types/aws-native:s3:BucketObjectLockConfiguration",
- "description": "Places an Object Lock configuration on the specified bucket."
+ "$ref": "#/types/aws-native:s3:BucketObjectLockConfiguration"
},
"objectLockEnabled": {
"type": "boolean",
- "description": "Indicates whether this bucket has an Object Lock configuration enabled.",
"replaceOnChanges": true
},
"ownershipControls": {
- "$ref": "#/types/aws-native:s3:BucketOwnershipControls",
- "description": "Specifies the container element for object ownership rules."
+ "$ref": "#/types/aws-native:s3:BucketOwnershipControls"
},
"publicAccessBlockConfiguration": {
"$ref": "#/types/aws-native:s3:BucketPublicAccessBlockConfiguration"
},
"regionalDomainName": {
- "type": "string",
- "description": "Returns the regional domain name of the specified bucket."
+ "type": "string"
},
"replicationConfiguration": {
- "$ref": "#/types/aws-native:s3:BucketReplicationConfiguration",
- "description": "Configuration for replicating objects in an S3 bucket."
+ "$ref": "#/types/aws-native:s3:BucketReplicationConfiguration"
},
"tags": {
"type": "array",
"items": {
"$ref": "#/types/aws-native:s3:BucketTag"
- },
- "description": "An arbitrary set of tags (key-value pairs) for this S3 bucket."
+ }
},
"versioningConfiguration": {
"$ref": "#/types/aws-native:s3:BucketVersioningConfiguration"
@@ -219343,8 +219751,7 @@
"$ref": "#/types/aws-native:s3:BucketWebsiteConfiguration"
},
"websiteUrl": {
- "type": "string",
- "description": "The Amazon S3 website endpoint for the specified bucket."
+ "type": "string"
}
},
"type": "object",
@@ -219357,89 +219764,73 @@
],
"inputProperties": {
"accelerateConfiguration": {
- "$ref": "#/types/aws-native:s3:BucketAccelerateConfiguration",
- "description": "Configuration for the transfer acceleration state."
+ "$ref": "#/types/aws-native:s3:BucketAccelerateConfiguration"
},
"accessControl": {
- "$ref": "#/types/aws-native:s3:BucketAccessControl",
- "description": "A canned access control list (ACL) that grants predefined permissions to the bucket."
+ "type": "string"
},
"analyticsConfigurations": {
"type": "array",
"items": {
"$ref": "#/types/aws-native:s3:BucketAnalyticsConfiguration"
- },
- "description": "The configuration and any analyses for the analytics filter of an Amazon S3 bucket."
+ }
},
"bucketEncryption": {
"$ref": "#/types/aws-native:s3:BucketEncryption"
},
"bucketName": {
- "type": "string",
- "description": "A name for the bucket. If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the bucket name."
+ "type": "string"
},
"corsConfiguration": {
- "$ref": "#/types/aws-native:s3:BucketCorsConfiguration",
- "description": "Rules that define cross-origin resource sharing of objects in this bucket."
+ "$ref": "#/types/aws-native:s3:BucketCorsConfiguration"
},
"intelligentTieringConfigurations": {
"type": "array",
"items": {
"$ref": "#/types/aws-native:s3:BucketIntelligentTieringConfiguration"
- },
- "description": "Specifies the S3 Intelligent-Tiering configuration for an Amazon S3 bucket."
+ }
},
"inventoryConfigurations": {
"type": "array",
"items": {
"$ref": "#/types/aws-native:s3:BucketInventoryConfiguration"
- },
- "description": "The inventory configuration for an Amazon S3 bucket."
+ }
},
"lifecycleConfiguration": {
- "$ref": "#/types/aws-native:s3:BucketLifecycleConfiguration",
- "description": "Rules that define how Amazon S3 manages objects during their lifetime."
+ "$ref": "#/types/aws-native:s3:BucketLifecycleConfiguration"
},
"loggingConfiguration": {
- "$ref": "#/types/aws-native:s3:BucketLoggingConfiguration",
- "description": "Settings that define where logs are stored."
+ "$ref": "#/types/aws-native:s3:BucketLoggingConfiguration"
},
"metricsConfigurations": {
"type": "array",
"items": {
"$ref": "#/types/aws-native:s3:BucketMetricsConfiguration"
- },
- "description": "Settings that define a metrics configuration for the CloudWatch request metrics from the bucket."
+ }
},
"notificationConfiguration": {
- "$ref": "#/types/aws-native:s3:BucketNotificationConfiguration",
- "description": "Configuration that defines how Amazon S3 handles bucket notifications."
+ "$ref": "#/types/aws-native:s3:BucketNotificationConfiguration"
},
"objectLockConfiguration": {
- "$ref": "#/types/aws-native:s3:BucketObjectLockConfiguration",
- "description": "Places an Object Lock configuration on the specified bucket."
+ "$ref": "#/types/aws-native:s3:BucketObjectLockConfiguration"
},
"objectLockEnabled": {
- "type": "boolean",
- "description": "Indicates whether this bucket has an Object Lock configuration enabled."
+ "type": "boolean"
},
"ownershipControls": {
- "$ref": "#/types/aws-native:s3:BucketOwnershipControls",
- "description": "Specifies the container element for object ownership rules."
+ "$ref": "#/types/aws-native:s3:BucketOwnershipControls"
},
"publicAccessBlockConfiguration": {
"$ref": "#/types/aws-native:s3:BucketPublicAccessBlockConfiguration"
},
"replicationConfiguration": {
- "$ref": "#/types/aws-native:s3:BucketReplicationConfiguration",
- "description": "Configuration for replicating objects in an S3 bucket."
+ "$ref": "#/types/aws-native:s3:BucketReplicationConfiguration"
},
"tags": {
"type": "array",
"items": {
"$ref": "#/types/aws-native:s3:BucketTag"
- },
- "description": "An arbitrary set of tags (key-value pairs) for this S3 bucket."
+ }
},
"versioningConfiguration": {
"$ref": "#/types/aws-native:s3:BucketVersioningConfiguration"
@@ -225344,6 +225735,10 @@
"aws-native:sns:Topic": {
"description": "Resource Type definition for AWS::SNS::Topic",
"properties": {
+ "archivePolicy": {
+ "$ref": "pulumi.json#/Any",
+ "description": "The archive policy determines the number of days Amazon SNS retains messages. You can set a retention period from 1 to 365 days."
+ },
"contentBasedDeduplication": {
"type": "boolean",
"description": "Enables content-based deduplication for FIFO topics. By default, ContentBasedDeduplication is set to false. If you create a FIFO topic and this attribute is false, you must specify a value for the MessageDeduplicationId parameter for the Publish action.\n\nWhen you set ContentBasedDeduplication to true, Amazon SNS uses a SHA-256 hash to generate the MessageDeduplicationId using the body of the message (but not the attributes of the message).\n\n(Optional) To override the generated value, you can specify a value for the the MessageDeduplicationId parameter for the Publish action.\n\n"
@@ -225400,6 +225795,10 @@
"topicArn"
],
"inputProperties": {
+ "archivePolicy": {
+ "$ref": "pulumi.json#/Any",
+ "description": "The archive policy determines the number of days Amazon SNS retains messages. You can set a retention period from 1 to 365 days."
+ },
"contentBasedDeduplication": {
"type": "boolean",
"description": "Enables content-based deduplication for FIFO topics. By default, ContentBasedDeduplication is set to false. If you create a FIFO topic and this attribute is false, you must specify a value for the MessageDeduplicationId parameter for the Publish action.\n\nWhen you set ContentBasedDeduplication to true, Amazon SNS uses a SHA-256 hash to generate the MessageDeduplicationId using the body of the message (but not the attributes of the message).\n\n(Optional) To override the generated value, you can specify a value for the the MessageDeduplicationId parameter for the Publish action.\n\n"
@@ -225708,18 +226107,18 @@
]
},
"aws-native:sqs:QueuePolicy": {
- "description": "Resource Type definition for AWS::SQS::QueuePolicy",
+ "description": "The ``AWS::SQS::QueuePolicy`` type applies a policy to SQS queues. For an example snippet, see [Declaring an policy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/quickref-iam.html#scenario-sqs-policy) in the *User Guide*.",
"properties": {
"policyDocument": {
"$ref": "pulumi.json#/Any",
- "description": "A policy document that contains the permissions for the specified Amazon SQS queues. For more information about Amazon SQS policies, see Creating Custom Policies Using the Access Policy Language in the Amazon Simple Queue Service Developer Guide."
+ "description": "A policy document that contains the permissions for the specified SQS queues. For more information about SQS policies, see [Using custom policies with the access policy language](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-creating-custom-policies.html) in the *Developer Guide*."
},
"queues": {
"type": "array",
"items": {
"type": "string"
},
- "description": "The URLs of the queues to which you want to add the policy. You can use the Ref function to specify an AWS::SQS::Queue resource."
+ "description": "The URLs of the queues to which you want to add the policy. You can use the ``Ref`` function to specify an ``AWS::SQS::Queue`` resource."
}
},
"type": "object",
@@ -225730,14 +226129,14 @@
"inputProperties": {
"policyDocument": {
"$ref": "pulumi.json#/Any",
- "description": "A policy document that contains the permissions for the specified Amazon SQS queues. For more information about Amazon SQS policies, see Creating Custom Policies Using the Access Policy Language in the Amazon Simple Queue Service Developer Guide."
+ "description": "A policy document that contains the permissions for the specified SQS queues. For more information about SQS policies, see [Using custom policies with the access policy language](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-creating-custom-policies.html) in the *Developer Guide*."
},
"queues": {
"type": "array",
"items": {
"type": "string"
},
- "description": "The URLs of the queues to which you want to add the policy. You can use the Ref function to specify an AWS::SQS::Queue resource."
+ "description": "The URLs of the queues to which you want to add the policy. You can use the ``Ref`` function to specify an ``AWS::SQS::Queue`` resource."
}
},
"requiredInputs": [
@@ -232537,7 +232936,7 @@
}
},
"aws-native:apigateway:getAccount": {
- "description": "Resource Type definition for AWS::ApiGateway::Account",
+ "description": "The ``AWS::ApiGateway::Account`` resource specifies the IAM role that Amazon API Gateway uses to write API logs to Amazon CloudWatch Logs. To avoid overwriting other roles, you should only have one ``AWS::ApiGateway::Account`` resource per region per account.",
"inputs": {
"properties": {
"id": {
@@ -232553,7 +232952,7 @@
"properties": {
"cloudWatchRoleArn": {
"type": "string",
- "description": "The Amazon Resource Name (ARN) of an IAM role that has write access to CloudWatch Logs in your account."
+ "description": "The ARN of an Amazon CloudWatch role for the current Account."
},
"id": {
"type": "string",
@@ -232611,7 +233010,7 @@
}
},
"aws-native:apigateway:getAuthorizer": {
- "description": "Represents an authorization layer for methods. If enabled on a method, API Gateway will activate the authorizer when a client calls the method.",
+ "description": "The ``AWS::ApiGateway::Authorizer`` resource creates an authorization layer that API Gateway activates for methods that have authorization enabled. API Gateway activates the authorizer when a client calls those methods.",
"inputs": {
"properties": {
"authorizerId": {
@@ -232619,7 +233018,7 @@
},
"restApiId": {
"type": "string",
- "description": "The identifier of the API."
+ "description": "The string identifier of the associated RestApi."
}
},
"required": [
@@ -232635,26 +233034,26 @@
},
"authorizerCredentials": {
"type": "string",
- "description": "Specifies the required credentials as an IAM role for API Gateway to invoke the authorizer."
+ "description": "Specifies the required credentials as an IAM role for API Gateway to invoke the authorizer. To specify an IAM role for API Gateway to assume, use the role's Amazon Resource Name (ARN). To use resource-based permissions on the Lambda function, specify null."
},
"authorizerId": {
"type": "string"
},
"authorizerResultTtlInSeconds": {
"type": "integer",
- "description": "The TTL in seconds of cached authorizer results."
+ "description": "The TTL in seconds of cached authorizer results. If it equals 0, authorization caching is disabled. If it is greater than 0, API Gateway will cache authorizer responses. If this field is not set, the default value is 300. The maximum value is 3600, or 1 hour."
},
"authorizerUri": {
"type": "string",
- "description": "Specifies the authorizer's Uniform Resource Identifier (URI)."
+ "description": "Specifies the authorizer's Uniform Resource Identifier (URI). For ``TOKEN`` or ``REQUEST`` authorizers, this must be a well-formed Lambda function URI, for example, ``arn:aws:apigateway:us-west-2:lambda:path/2015-03-31/functions/arn:aws:lambda:us-west-2:{account_id}:function:{lambda_function_name}/invocations``. In general, the URI has this form ``arn:aws:apigateway:{region}:lambda:path/{service_api}``, where ``{region}`` is the same as the region hosting the Lambda function, ``path`` indicates that the remaining substring in the URI should be treated as the path to the resource, including the initial ``/``. For Lambda functions, this is usually of the form ``/2015-03-31/functions/[FunctionARN]/invocations``."
},
"identitySource": {
"type": "string",
- "description": "The identity source for which authorization is requested."
+ "description": "The identity source for which authorization is requested. For a ``TOKEN`` or ``COGNITO_USER_POOLS`` authorizer, this is required and specifies the request header mapping expression for the custom header holding the authorization token submitted by the client. For example, if the token header name is ``Auth``, the header mapping expression is ``method.request.header.Auth``. For the ``REQUEST`` authorizer, this is required when authorization caching is enabled. The value is a comma-separated string of one or more mapping expressions of the specified request parameters. For example, if an ``Auth`` header, a ``Name`` query string parameter are defined as identity sources, this value is ``method.request.header.Auth, method.request.querystring.Name``. These parameters will be used to derive the authorization caching key and to perform runtime validation of the ``REQUEST`` authorizer by verifying all of the identity-related request parameters are present, not null and non-empty. Only when this is true does the authorizer invoke the authorizer Lambda function, otherwise, it returns a 401 Unauthorized response without calling the Lambda function. The valid value is a string of comma-separated mapping expressions of the specified request parameters. When the authorization caching is not enabled, this property is optional."
},
"identityValidationExpression": {
"type": "string",
- "description": "A validation expression for the incoming identity token."
+ "description": "A validation expression for the incoming identity token. For ``TOKEN`` authorizers, this value is a regular expression. For ``COGNITO_USER_POOLS`` authorizers, API Gateway will match the ``aud`` field of the incoming token from the client against the specified regular expression. It will invoke the authorizer's Lambda function when there is a match. Otherwise, it will return a 401 Unauthorized response without calling the Lambda function. The validation expression does not apply to the ``REQUEST`` authorizer."
},
"name": {
"type": "string",
@@ -232665,11 +233064,11 @@
"items": {
"type": "string"
},
- "description": "A list of the Amazon Cognito user pool ARNs for the COGNITO_USER_POOLS authorizer."
+ "description": "A list of the Amazon Cognito user pool ARNs for the ``COGNITO_USER_POOLS`` authorizer. Each element is of this format: ``arn:aws:cognito-idp:{region}:{account_id}:userpool/{user_pool_id}``. For a ``TOKEN`` or ``REQUEST`` authorizer, this is not defined."
},
"type": {
"type": "string",
- "description": "The authorizer type."
+ "description": "The authorizer type. Valid values are ``TOKEN`` for a Lambda function using a single authorization token submitted in a custom header, ``REQUEST`` for a Lambda function using incoming request parameters, and ``COGNITO_USER_POOLS`` for using an Amazon Cognito user pool."
}
}
}
@@ -232739,7 +233138,7 @@
}
},
"aws-native:apigateway:getDeployment": {
- "description": "Resource Type definition for AWS::ApiGateway::Deployment",
+ "description": "The ``AWS::ApiGateway::Deployment`` resource deploys an API Gateway ``RestApi`` resource to a stage so that clients can call the API over the internet. The stage acts as an environment.",
"inputs": {
"properties": {
"deploymentId": {
@@ -232748,7 +233147,7 @@
},
"restApiId": {
"type": "string",
- "description": "The ID of the RestApi resource to deploy. "
+ "description": "The string identifier of the associated RestApi."
}
},
"required": [
@@ -232764,13 +233163,13 @@
},
"description": {
"type": "string",
- "description": "A description of the purpose of the API Gateway deployment."
+ "description": "The description for the Deployment resource to create."
}
}
}
},
"aws-native:apigateway:getDocumentationPart": {
- "description": "Resource Type definition for AWS::ApiGateway::DocumentationPart",
+ "description": "The ``AWS::ApiGateway::DocumentationPart`` resource creates a documentation part for an API. For more information, see [Representation of API Documentation in API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-documenting-api-content-representation.html) in the *API Gateway Developer Guide*.",
"inputs": {
"properties": {
"documentationPartId": {
@@ -232779,7 +233178,7 @@
},
"restApiId": {
"type": "string",
- "description": "Identifier of the targeted API entity"
+ "description": "The string identifier of the associated RestApi."
}
},
"required": [
@@ -232795,18 +233194,18 @@
},
"properties": {
"type": "string",
- "description": "The documentation content map of the targeted API entity."
+ "description": "The new documentation content map of the targeted API entity. Enclosed key-value pairs are API-specific, but only OpenAPI-compliant key-value pairs can be exported and, hence, published."
}
}
}
},
"aws-native:apigateway:getDocumentationVersion": {
- "description": "A snapshot of the documentation of an API.",
+ "description": "The ``AWS::ApiGateway::DocumentationVersion`` resource creates a snapshot of the documentation for an API. For more information, see [Representation of API Documentation in API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-documenting-api-content-representation.html) in the *API Gateway Developer Guide*.",
"inputs": {
"properties": {
"documentationVersion": {
"type": "string",
- "description": "The version identifier of the API documentation snapshot.",
+ "description": "The version identifier of the to-be-updated documentation version.",
"language": {
"csharp": {
"name": "DocumentationVersionValue"
@@ -232815,7 +233214,7 @@
},
"restApiId": {
"type": "string",
- "description": "The identifier of the API."
+ "description": "The string identifier of the associated RestApi."
}
},
"required": [
@@ -232827,7 +233226,7 @@
"properties": {
"description": {
"type": "string",
- "description": "The description of the API documentation snapshot."
+ "description": "A description about the new documentation snapshot."
}
}
}
@@ -232920,20 +233319,20 @@
}
},
"aws-native:apigateway:getMethod": {
- "description": "Resource Type definition for AWS::ApiGateway::Method",
+ "description": "The ``AWS::ApiGateway::Method`` resource creates API Gateway methods that define the parameters and body that clients must send in their requests.",
"inputs": {
"properties": {
"httpMethod": {
"type": "string",
- "description": "The backend system that the method calls when it receives a request."
+ "description": "The method's HTTP verb."
},
"resourceId": {
"type": "string",
- "description": "The ID of an API Gateway resource."
+ "description": "The Resource identifier for the MethodResponse resource."
},
"restApiId": {
"type": "string",
- "description": "The ID of the RestApi resource in which API Gateway creates the method."
+ "description": "The string identifier of the associated RestApi."
}
},
"required": [
@@ -232946,64 +233345,64 @@
"properties": {
"apiKeyRequired": {
"type": "boolean",
- "description": "Indicates whether the method requires clients to submit a valid API key."
+ "description": "A boolean flag specifying whether a valid ApiKey is required to invoke this method."
},
"authorizationScopes": {
"type": "array",
"items": {
"type": "string"
},
- "description": "A list of authorization scopes configured on the method."
+ "description": "A list of authorization scopes configured on the method. The scopes are used with a ``COGNITO_USER_POOLS`` authorizer to authorize the method invocation. The authorization works by matching the method scopes against the scopes parsed from the access token in the incoming request. The method invocation is authorized if any method scopes matches a claimed scope in the access token. Otherwise, the invocation is not authorized. When the method scope is configured, the client must provide an access token instead of an identity token for authorization purposes."
},
"authorizationType": {
"$ref": "#/types/aws-native:apigateway:MethodAuthorizationType",
- "description": "The method's authorization type."
+ "description": "The method's authorization type. This parameter is required. For valid values, see [Method](https://docs.aws.amazon.com/apigateway/latest/api/API_Method.html) in the *API Gateway API Reference*.\n If you specify the ``AuthorizerId`` property, specify ``CUSTOM`` or ``COGNITO_USER_POOLS`` for this property."
},
"authorizerId": {
"type": "string",
- "description": "The identifier of the authorizer to use on this method."
+ "description": "The identifier of an authorizer to use on this method. The method's authorization type must be ``CUSTOM`` or ``COGNITO_USER_POOLS``."
},
"integration": {
"$ref": "#/types/aws-native:apigateway:MethodIntegration",
- "description": "The backend system that the method calls when it receives a request."
+ "description": "Represents an ``HTTP``, ``HTTP_PROXY``, ``AWS``, ``AWS_PROXY``, or Mock integration."
},
"methodResponses": {
"type": "array",
"items": {
"$ref": "#/types/aws-native:apigateway:MethodResponse"
},
- "description": "The responses that can be sent to the client who calls the method."
+ "description": "Gets a method response associated with a given HTTP status code."
},
"operationName": {
"type": "string",
- "description": "A friendly operation name for the method."
+ "description": "A human-friendly operation identifier for the method. For example, you can assign the ``operationName`` of ``ListPets`` for the ``GET /pets`` method in the ``PetStore`` example."
},
"requestModels": {
"$ref": "pulumi.json#/Any",
- "description": "The resources that are used for the request's content type. Specify request models as key-value pairs (string-to-string mapping), with a content type as the key and a Model resource name as the value."
+ "description": "A key-value map specifying data schemas, represented by Model resources, (as the mapped value) of the request payloads of given content types (as the mapping key)."
},
"requestParameters": {
"$ref": "pulumi.json#/Any",
- "description": "The request parameters that API Gateway accepts. Specify request parameters as key-value pairs (string-to-Boolean mapping), with a source as the key and a Boolean as the value."
+ "description": "A key-value map defining required or optional method request parameters that can be accepted by API Gateway. A key is a method request parameter name matching the pattern of ``method.request.{location}.{name}``, where ``location`` is ``querystring``, ``path``, or ``header`` and ``name`` is a valid and unique parameter name. The value associated with the key is a Boolean flag indicating whether the parameter is required (``true``) or optional (``false``). The method request parameter names defined here are available in Integration to be mapped to integration request parameters or templates."
},
"requestValidatorId": {
"type": "string",
- "description": "The ID of the associated request validator."
+ "description": "The identifier of a RequestValidator for request validation."
}
}
}
},
"aws-native:apigateway:getModel": {
- "description": "Resource Type definition for AWS::ApiGateway::Model",
+ "description": "The ``AWS::ApiGateway::Model`` resource defines the structure of a request or response payload for an API method.",
"inputs": {
"properties": {
"name": {
"type": "string",
- "description": "A name for the model. If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the model name."
+ "description": "A name for the model. If you don't specify a name, CFN generates a unique physical ID and uses that ID for the model name. For more information, see [Name Type](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-name.html).\n If you specify a name, you cannot perform updates that require replacement of this resource. You can perform updates that require no or some interruption. If you must replace the resource, specify a new name."
},
"restApiId": {
"type": "string",
- "description": "The ID of a REST API with which to associate this model."
+ "description": "The string identifier of the associated RestApi."
}
},
"required": [
@@ -233015,11 +233414,11 @@
"properties": {
"description": {
"type": "string",
- "description": "A description that identifies this model."
+ "description": "The description of the model."
},
"schema": {
"$ref": "pulumi.json#/Any",
- "description": "The schema to use to transform data to one or more output formats. Specify null ({}) if you don't want to specify a schema."
+ "description": "The schema for the model. For ``application/json`` models, this should be JSON schema draft 4 model. Do not include \"\\*/\" characters in the description of any properties because such \"\\*/\" characters may be interpreted as the closing marker for comments in some languages, such as Java or JavaScript, causing the installation of your API's SDK generated by API Gateway to fail."
}
}
}
@@ -233060,7 +233459,7 @@
}
},
"aws-native:apigateway:getResource": {
- "description": "Resource Type definition for AWS::ApiGateway::Resource",
+ "description": "The ``AWS::ApiGateway::Resource`` resource creates a resource in an API.",
"inputs": {
"properties": {
"resourceId": {
@@ -233069,7 +233468,7 @@
},
"restApiId": {
"type": "string",
- "description": "The ID of the RestApi resource in which you want to create this resource.."
+ "description": "The string identifier of the associated RestApi."
}
},
"required": [
@@ -233087,7 +233486,7 @@
}
},
"aws-native:apigateway:getRestApi": {
- "description": "Resource Type definition for AWS::ApiGateway::RestApi.",
+ "description": "The ``AWS::ApiGateway::RestApi`` resource creates a REST API. For more information, see [restapi:create](https://docs.aws.amazon.com/apigateway/latest/api/API_CreateRestApi.html) in the *Amazon API Gateway REST API Reference*.\n On January 1, 2016, the Swagger Specification was donated to the [OpenAPI initiative](https://docs.aws.amazon.com/https://www.openapis.org/), becoming the foundation of the OpenAPI Specification.",
"inputs": {
"properties": {
"restApiId": {
@@ -233101,31 +233500,39 @@
"outputs": {
"properties": {
"apiKeySourceType": {
- "type": "string"
+ "type": "string",
+ "description": "The source of the API key for metering requests according to a usage plan. Valid values are: ``HEADER`` to read the API key from the ``X-API-Key`` header of a request. ``AUTHORIZER`` to read the API key from the ``UsageIdentifierKey`` from a custom authorizer."
},
"binaryMediaTypes": {
"type": "array",
"items": {
"type": "string"
- }
+ },
+ "description": "The list of binary media types supported by the RestApi. By default, the RestApi supports only UTF-8-encoded text payloads."
},
"description": {
- "type": "string"
+ "type": "string",
+ "description": "The description of the RestApi."
},
"disableExecuteApiEndpoint": {
- "type": "boolean"
+ "type": "boolean",
+ "description": "Specifies whether clients can invoke your API by using the default ``execute-api`` endpoint. By default, clients can invoke your API with the default ``https://{api_id}.execute-api.{region}.amazonaws.com`` endpoint. To require that clients use a custom domain name to invoke your API, disable the default endpoint"
},
"endpointConfiguration": {
- "$ref": "#/types/aws-native:apigateway:RestApiEndpointConfiguration"
+ "$ref": "#/types/aws-native:apigateway:RestApiEndpointConfiguration",
+ "description": "A list of the endpoint types of the API. Use this property when creating an API. When importing an existing API, specify the endpoint configuration types using the ``Parameters`` property."
},
"minimumCompressionSize": {
- "type": "integer"
+ "type": "integer",
+ "description": "A nullable integer that is used to enable compression (with non-negative between 0 and 10485760 (10M) bytes, inclusive) or disable compression (with a null value) on an API. When compression is enabled, compression or decompression is not applied on the payload if the payload size is smaller than this value. Setting it to zero allows compression for any payload size."
},
"name": {
- "type": "string"
+ "type": "string",
+ "description": "The name of the RestApi. A name is required if the REST API is not based on an OpenAPI specification."
},
"policy": {
- "$ref": "pulumi.json#/Any"
+ "$ref": "pulumi.json#/Any",
+ "description": "A policy document that contains the permissions for the ``RestApi`` resource. To set the ARN for the policy, use the ``!Join`` intrinsic function with ``\"\"`` as delimiter and values of ``\"execute-api:/\"`` and ``\"*\"``."
},
"restApiId": {
"type": "string"
@@ -233137,22 +233544,23 @@
"type": "array",
"items": {
"$ref": "#/types/aws-native:apigateway:RestApiTag"
- }
+ },
+ "description": "The key-value map of strings. The valid character set is [a-zA-Z+-=._:/]. The tag key can be up to 128 characters and must not start with ``aws:``. The tag value can be up to 256 characters."
}
}
}
},
"aws-native:apigateway:getStage": {
- "description": "Resource Type definition for AWS::ApiGateway::Stage",
+ "description": "The ``AWS::ApiGateway::Stage`` resource creates a stage for a deployment.",
"inputs": {
"properties": {
"restApiId": {
"type": "string",
- "description": "The ID of the RestApi resource that you're deploying with this stage."
+ "description": "The string identifier of the associated RestApi."
},
"stageName": {
"type": "string",
- "description": "The name of the stage, which API Gateway uses as the first path segment in the invoked Uniform Resource Identifier (URI)."
+ "description": "The name of the stage is the first path segment in the Uniform Resource Identifier (URI) of a call to API Gateway. Stage names can only contain alphanumeric characters, hyphens, and underscores. Maximum length is 128 characters."
}
},
"required": [
@@ -233164,57 +233572,57 @@
"properties": {
"accessLogSetting": {
"$ref": "#/types/aws-native:apigateway:StageAccessLogSetting",
- "description": "Specifies settings for logging access in this stage."
+ "description": "Access log settings, including the access log format and access log destination ARN."
},
"cacheClusterEnabled": {
"type": "boolean",
- "description": "Indicates whether cache clustering is enabled for the stage."
+ "description": "Specifies whether a cache cluster is enabled for the stage."
},
"cacheClusterSize": {
"type": "string",
- "description": "The stage's cache cluster size."
+ "description": "The stage's cache capacity in GB. For more information about choosing a cache size, see [Enabling API caching to enhance responsiveness](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-caching.html)."
},
"canarySetting": {
"$ref": "#/types/aws-native:apigateway:StageCanarySetting",
- "description": "Specifies settings for the canary deployment in this stage."
+ "description": "Settings for the canary deployment in this stage."
},
"clientCertificateId": {
"type": "string",
- "description": "The ID of the client certificate that API Gateway uses to call your integration endpoints in the stage. "
+ "description": "The identifier of a client certificate for an API stage."
},
"deploymentId": {
"type": "string",
- "description": "The ID of the deployment that the stage is associated with. This parameter is required to create a stage. "
+ "description": "The identifier of the Deployment that the stage points to."
},
"description": {
"type": "string",
- "description": "A description of the stage."
+ "description": "The stage's description."
},
"documentationVersion": {
"type": "string",
- "description": "The version ID of the API documentation snapshot."
+ "description": "The version of the associated API documentation."
},
"methodSettings": {
"type": "array",
"items": {
"$ref": "#/types/aws-native:apigateway:StageMethodSetting"
},
- "description": "Settings for all methods in the stage."
+ "description": "A map that defines the method settings for a Stage resource. Keys (designated as ``/{method_setting_key`` below) are method paths defined as ``{resource_path}/{http_method}`` for an individual method override, or ``/\\*/\\*`` for overriding all methods in the stage."
},
"tags": {
"type": "array",
"items": {
"$ref": "#/types/aws-native:apigateway:StageTag"
},
- "description": "An array of arbitrary tags (key-value pairs) to associate with the stage."
+ "description": "The collection of tags. Each tag element is associated with a given resource."
},
"tracingEnabled": {
"type": "boolean",
- "description": "Specifies whether active X-Ray tracing is enabled for this stage."
+ "description": "Specifies whether active tracing with X-ray is enabled for the Stage."
},
"variables": {
"$ref": "pulumi.json#/Any",
- "description": "A map (string-to-string map) that defines the stage variables, where the variable name is the key and the variable value is the value."
+ "description": "A map (string-to-string map) that defines the stage variables, where the variable name is the key and the variable value is the value. Variable names are limited to alphanumeric characters. Values must match the following regular expression: ``[A-Za-z0-9-._~:/?#\u0026=,]+``."
}
}
}
@@ -233272,7 +233680,7 @@
}
},
"aws-native:apigateway:getUsagePlanKey": {
- "description": "Resource Type definition for AWS::ApiGateway::UsagePlanKey",
+ "description": "The ``AWS::ApiGateway::UsagePlanKey`` resource associates an API key with a usage plan. This association determines which users the usage plan is applied to.",
"inputs": {
"properties": {
"id": {
@@ -233940,30 +234348,35 @@
"description": "Resource Type definition for AWS::AppConfig::Application",
"inputs": {
"properties": {
- "id": {
- "type": "string"
+ "applicationId": {
+ "type": "string",
+ "description": "The application Id"
}
},
"required": [
- "id"
+ "applicationId"
]
},
"outputs": {
"properties": {
- "description": {
- "type": "string"
+ "applicationId": {
+ "type": "string",
+ "description": "The application Id"
},
- "id": {
- "type": "string"
+ "description": {
+ "type": "string",
+ "description": "A description of the application."
},
"name": {
- "type": "string"
+ "type": "string",
+ "description": "A name for the application."
},
"tags": {
"type": "array",
"items": {
"$ref": "#/types/aws-native:appconfig:ApplicationTags"
- }
+ },
+ "description": "Metadata to assign to the application. Tags help organize and categorize your AWS AppConfig resources. Each tag consists of a key and an optional value, both of which you define."
}
}
}
@@ -233988,6 +234401,9 @@
"id": {
"type": "string"
},
+ "kmsKeyIdentifier": {
+ "type": "string"
+ },
"name": {
"type": "string"
},
@@ -235622,66 +236038,67 @@
}
},
"aws-native:appsync:getFunctionConfiguration": {
- "description": "Resource Type definition for AWS::AppSync::FunctionConfiguration",
+ "description": "An example resource schema demonstrating some basic constructs and validation rules.",
"inputs": {
"properties": {
- "id": {
- "type": "string"
+ "functionArn": {
+ "type": "string",
+ "description": "The ARN for the function generated by the service"
}
},
"required": [
- "id"
+ "functionArn"
]
},
"outputs": {
"properties": {
"code": {
- "type": "string"
- },
- "codeS3Location": {
- "type": "string"
+ "type": "string",
+ "description": "The resolver code that contains the request and response functions. When code is used, the runtime is required. The runtime value must be APPSYNC_JS."
},
"dataSourceName": {
- "type": "string"
+ "type": "string",
+ "description": "The name of data source this function will attach."
},
"description": {
- "type": "string"
+ "type": "string",
+ "description": "The function description."
},
"functionArn": {
- "type": "string"
+ "type": "string",
+ "description": "The ARN for the function generated by the service"
},
"functionId": {
- "type": "string"
+ "type": "string",
+ "description": "The unique identifier for the function generated by the service"
},
"functionVersion": {
- "type": "string"
- },
- "id": {
- "type": "string"
+ "type": "string",
+ "description": "The version of the request mapping template. Currently, only the 2018-05-29 version of the template is supported."
},
"maxBatchSize": {
- "type": "integer"
+ "type": "integer",
+ "description": "The maximum number of resolver request inputs that will be sent to a single AWS Lambda function in a BatchInvoke operation."
},
"name": {
- "type": "string"
+ "type": "string",
+ "description": "The name of the function."
},
"requestMappingTemplate": {
- "type": "string"
- },
- "requestMappingTemplateS3Location": {
- "type": "string"
+ "type": "string",
+ "description": "The Function request mapping template. Functions support only the 2018-05-29 version of the request mapping template."
},
"responseMappingTemplate": {
- "type": "string"
- },
- "responseMappingTemplateS3Location": {
- "type": "string"
+ "type": "string",
+ "description": "The Function response mapping template."
},
"runtime": {
- "$ref": "#/types/aws-native:appsync:FunctionConfigurationAppSyncRuntime"
+ "$ref": "#/types/aws-native:appsync:FunctionConfigurationAppSyncRuntime",
+ "description": "Describes a runtime used by an AWS AppSync pipeline resolver or AWS AppSync function. Specifies the name and version of the runtime to use. Note that if a runtime is specified, code must also be specified."
},
"syncConfig": {
- "$ref": "#/types/aws-native:appsync:FunctionConfigurationSyncConfig"
+ "$ref": "#/types/aws-native:appsync:FunctionConfigurationSyncConfig",
+ "description": "Describes a Sync configuration for a resolver. Specifies which Conflict Detection strategy and Resolution strategy to use when the resolver is invoked."
}
}
}
@@ -240189,12 +240606,18 @@
"allowUnauthenticatedIdentities": {
"type": "boolean"
},
+ "cognitoEvents": {
+ "$ref": "pulumi.json#/Any"
+ },
"cognitoIdentityProviders": {
"type": "array",
"items": {
"$ref": "#/types/aws-native:cognito:IdentityPoolCognitoIdentityProvider"
}
},
+ "cognitoStreams": {
+ "$ref": "#/types/aws-native:cognito:IdentityPoolCognitoStreams"
+ },
"developerProviderName": {
"type": "string"
},
@@ -240204,13 +240627,6 @@
"identityPoolName": {
"type": "string"
},
- "identityPoolTags": {
- "type": "array",
- "items": {
- "$ref": "#/types/aws-native:cognito:IdentityPoolTag"
- },
- "description": "An array of key-value pairs to apply to this resource."
- },
"name": {
"type": "string"
},
@@ -240220,6 +240636,9 @@
"type": "string"
}
},
+ "pushSync": {
+ "$ref": "#/types/aws-native:cognito:IdentityPoolPushSync"
+ },
"samlProviderArns": {
"type": "array",
"items": {
@@ -240315,12 +240734,12 @@
"description": "Resource Type definition for AWS::Cognito::UserPool",
"inputs": {
"properties": {
- "id": {
+ "userPoolId": {
"type": "string"
}
},
"required": [
- "id"
+ "userPoolId"
]
},
"outputs": {
@@ -240361,15 +240780,6 @@
"emailVerificationSubject": {
"type": "string"
},
- "enabledMfas": {
- "type": "array",
- "items": {
- "type": "string"
- }
- },
- "id": {
- "type": "string"
- },
"lambdaConfig": {
"$ref": "#/types/aws-native:cognito:UserPoolLambdaConfig"
},
@@ -240406,6 +240816,9 @@
"userPoolAddOns": {
"$ref": "#/types/aws-native:cognito:UserPoolAddOns"
},
+ "userPoolId": {
+ "type": "string"
+ },
"userPoolName": {
"type": "string"
},
@@ -240567,12 +240980,16 @@
"description": "Resource Type definition for AWS::Cognito::UserPoolGroup",
"inputs": {
"properties": {
- "id": {
+ "groupName": {
+ "type": "string"
+ },
+ "userPoolId": {
"type": "string"
}
},
"required": [
- "id"
+ "userPoolId",
+ "groupName"
]
},
"outputs": {
@@ -240580,11 +240997,8 @@
"description": {
"type": "string"
},
- "id": {
- "type": "string"
- },
"precedence": {
- "type": "number"
+ "type": "integer"
},
"roleArn": {
"type": "string"
@@ -241255,11 +241669,11 @@
"description": "The name of the contact flow module."
},
"state": {
- "$ref": "#/types/aws-native:connect:ContactFlowModuleState",
+ "type": "string",
"description": "The state of the contact flow module."
},
"status": {
- "$ref": "#/types/aws-native:connect:ContactFlowModuleStatus",
+ "type": "string",
"description": "The status of the contact flow module."
},
"tags": {
@@ -242344,6 +242758,15 @@
"type": "string",
"description": "The time of this integration got last updated at"
},
+ "matching": {
+ "$ref": "#/types/aws-native:customerprofiles:DomainMatching"
+ },
+ "ruleBasedMatching": {
+ "$ref": "#/types/aws-native:customerprofiles:DomainRuleBasedMatching"
+ },
+ "stats": {
+ "$ref": "#/types/aws-native:customerprofiles:DomainStats"
+ },
"tags": {
"type": "array",
"items": {
@@ -246925,6 +247348,10 @@
"enableDns64": {
"type": "boolean"
},
+ "ipv4NetmaskLength": {
+ "type": "integer",
+ "description": "The netmask length of the IPv4 CIDR you want to allocate to this subnet from an Amazon VPC IP Address Manager (IPAM) pool"
+ },
"ipv6CidrBlock": {
"type": "string"
},
@@ -246934,6 +247361,10 @@
"type": "string"
}
},
+ "ipv6NetmaskLength": {
+ "type": "integer",
+ "description": "The netmask length of the IPv6 CIDR you want to allocate to this subnet from an Amazon VPC IP Address Manager (IPAM) pool"
+ },
"mapPublicIpOnLaunch": {
"type": "boolean"
},
@@ -250578,6 +251009,61 @@
}
}
},
+ "aws-native:entityresolution:getIdMappingWorkflow": {
+ "description": "IdMappingWorkflow defined in AWS Entity Resolution service",
+ "inputs": {
+ "properties": {
+ "workflowName": {
+ "type": "string",
+ "description": "The name of the IdMappingWorkflow"
+ }
+ },
+ "required": [
+ "workflowName"
+ ]
+ },
+ "outputs": {
+ "properties": {
+ "createdAt": {
+ "type": "string"
+ },
+ "description": {
+ "type": "string",
+ "description": "The description of the IdMappingWorkflow"
+ },
+ "idMappingTechniques": {
+ "$ref": "#/types/aws-native:entityresolution:IdMappingWorkflowIdMappingTechniques"
+ },
+ "inputSourceConfig": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:entityresolution:IdMappingWorkflowInputSource"
+ }
+ },
+ "outputSourceConfig": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:entityresolution:IdMappingWorkflowOutputSource"
+ }
+ },
+ "roleArn": {
+ "type": "string"
+ },
+ "tags": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:entityresolution:IdMappingWorkflowTag"
+ }
+ },
+ "updatedAt": {
+ "type": "string"
+ },
+ "workflowArn": {
+ "type": "string"
+ }
+ }
+ }
+ },
"aws-native:entityresolution:getMatchingWorkflow": {
"description": "MatchingWorkflow defined in AWS Entity Resolution service",
"inputs": {
@@ -250886,51 +251372,42 @@
"description": "Resource Type definition for AWS::Events::Rule",
"inputs": {
"properties": {
- "arn": {
- "type": "string",
- "description": "The ARN of the rule, such as arn:aws:events:us-east-2:123456789012:rule/example."
+ "id": {
+ "type": "string"
}
},
"required": [
- "arn"
+ "id"
]
},
"outputs": {
"properties": {
"arn": {
- "type": "string",
- "description": "The ARN of the rule, such as arn:aws:events:us-east-2:123456789012:rule/example."
+ "type": "string"
},
"description": {
- "type": "string",
- "description": "The description of the rule."
- },
- "eventBusName": {
- "type": "string",
- "description": "The name or ARN of the event bus associated with the rule. If you omit this, the default event bus is used."
+ "type": "string"
},
"eventPattern": {
- "type": "string",
- "description": "The event pattern of the rule. For more information, see Events and Event Patterns in the Amazon EventBridge User Guide."
+ "$ref": "pulumi.json#/Any"
+ },
+ "id": {
+ "type": "string"
},
"roleArn": {
- "type": "string",
- "description": "The Amazon Resource Name (ARN) of the role that is used for target invocation."
+ "type": "string"
},
"scheduleExpression": {
- "type": "string",
- "description": "The scheduling expression. For example, \"cron(0 20 * * ? *)\", \"rate(5 minutes)\". For more information, see Creating an Amazon EventBridge rule that runs on a schedule."
+ "type": "string"
},
"state": {
- "$ref": "#/types/aws-native:events:RuleState",
- "description": "The state of the rule."
+ "type": "string"
},
"targets": {
"type": "array",
"items": {
"$ref": "#/types/aws-native:events:RuleTarget"
- },
- "description": "Adds the specified targets to the specified rule, or updates the targets if they are already associated with the rule.\nTargets are the resources that are invoked when a rule is triggered."
+ }
}
}
}
@@ -254444,36 +254921,38 @@
"description": "Resource Type definition for AWS::IAM::Group",
"inputs": {
"properties": {
- "id": {
- "type": "string"
+ "groupName": {
+ "type": "string",
+ "description": "The name of the group to create"
}
},
"required": [
- "id"
+ "groupName"
]
},
"outputs": {
"properties": {
"arn": {
- "type": "string"
- },
- "id": {
- "type": "string"
+ "type": "string",
+ "description": "The Arn of the group to create"
},
"managedPolicyArns": {
"type": "array",
"items": {
"type": "string"
- }
+ },
+ "description": "A list of Amazon Resource Names (ARNs) of the IAM managed policies that you want to attach to the role. "
},
"path": {
- "type": "string"
+ "type": "string",
+ "description": "The path to the group"
},
"policies": {
"type": "array",
"items": {
"$ref": "#/types/aws-native:iam:GroupPolicy"
- }
+ },
+ "description": "Adds or updates an inline policy document that is embedded in the specified IAM group"
}
}
}
@@ -256160,21 +256639,6 @@
"properties": {
"arn": {
"type": "string"
- },
- "destinationPackageVersions": {
- "type": "array",
- "items": {
- "type": "string"
- }
- },
- "jobExecutionsRetryConfig": {
- "$ref": "#/types/aws-native:iot:JobExecutionsRetryConfigProperties"
- },
- "maintenanceWindows": {
- "type": "array",
- "items": {
- "$ref": "#/types/aws-native:iot:JobTemplateMaintenanceWindow"
- }
}
}
}
@@ -256264,6 +256728,12 @@
},
"policyDocument": {
"$ref": "pulumi.json#/Any"
+ },
+ "tags": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:iot:PolicyTag"
+ }
}
}
}
@@ -263895,6 +264365,46 @@
}
}
},
+ "aws-native:msk:getReplicator": {
+ "description": "Resource Type definition for AWS::MSK::Replicator",
+ "inputs": {
+ "properties": {
+ "replicatorArn": {
+ "type": "string",
+ "description": "Amazon Resource Name for the created replicator."
+ }
+ },
+ "required": [
+ "replicatorArn"
+ ]
+ },
+ "outputs": {
+ "properties": {
+ "currentVersion": {
+ "type": "string",
+ "description": "The current version of the MSK replicator."
+ },
+ "replicationInfoList": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:msk:ReplicatorReplicationInfo"
+ },
+ "description": "A list of replication configurations, where each configuration targets a given source cluster to target cluster replication flow."
+ },
+ "replicatorArn": {
+ "type": "string",
+ "description": "Amazon Resource Name for the created replicator."
+ },
+ "tags": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:msk:ReplicatorTag"
+ },
+ "description": "A collection of tags associated with a resource"
+ }
+ }
+ }
+ },
"aws-native:msk:getServerlessCluster": {
"description": "Resource Type definition for AWS::MSK::ServerlessCluster",
"inputs": {
@@ -272026,105 +272536,93 @@
"description": "Resource Type definition for AWS::S3::Bucket",
"inputs": {
"properties": {
- "bucketName": {
- "type": "string",
- "description": "A name for the bucket. If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the bucket name."
+ "id": {
+ "type": "string"
}
},
"required": [
- "bucketName"
+ "id"
]
},
"outputs": {
"properties": {
"accelerateConfiguration": {
- "$ref": "#/types/aws-native:s3:BucketAccelerateConfiguration",
- "description": "Configuration for the transfer acceleration state."
+ "$ref": "#/types/aws-native:s3:BucketAccelerateConfiguration"
+ },
+ "accessControl": {
+ "type": "string"
},
"analyticsConfigurations": {
"type": "array",
"items": {
"$ref": "#/types/aws-native:s3:BucketAnalyticsConfiguration"
- },
- "description": "The configuration and any analyses for the analytics filter of an Amazon S3 bucket."
+ }
},
"arn": {
- "type": "string",
- "description": "The Amazon Resource Name (ARN) of the specified bucket."
+ "type": "string"
},
"bucketEncryption": {
"$ref": "#/types/aws-native:s3:BucketEncryption"
},
"corsConfiguration": {
- "$ref": "#/types/aws-native:s3:BucketCorsConfiguration",
- "description": "Rules that define cross-origin resource sharing of objects in this bucket."
+ "$ref": "#/types/aws-native:s3:BucketCorsConfiguration"
},
"domainName": {
- "type": "string",
- "description": "The IPv4 DNS name of the specified bucket."
+ "type": "string"
},
"dualStackDomainName": {
- "type": "string",
- "description": "The IPv6 DNS name of the specified bucket. For more information about dual-stack endpoints, see [Using Amazon S3 Dual-Stack Endpoints](https://docs.aws.amazon.com/AmazonS3/latest/dev/dual-stack-endpoints.html)."
+ "type": "string"
+ },
+ "id": {
+ "type": "string"
},
"intelligentTieringConfigurations": {
"type": "array",
"items": {
"$ref": "#/types/aws-native:s3:BucketIntelligentTieringConfiguration"
- },
- "description": "Specifies the S3 Intelligent-Tiering configuration for an Amazon S3 bucket."
+ }
},
"inventoryConfigurations": {
"type": "array",
"items": {
"$ref": "#/types/aws-native:s3:BucketInventoryConfiguration"
- },
- "description": "The inventory configuration for an Amazon S3 bucket."
+ }
},
"lifecycleConfiguration": {
- "$ref": "#/types/aws-native:s3:BucketLifecycleConfiguration",
- "description": "Rules that define how Amazon S3 manages objects during their lifetime."
+ "$ref": "#/types/aws-native:s3:BucketLifecycleConfiguration"
},
"loggingConfiguration": {
- "$ref": "#/types/aws-native:s3:BucketLoggingConfiguration",
- "description": "Settings that define where logs are stored."
+ "$ref": "#/types/aws-native:s3:BucketLoggingConfiguration"
},
"metricsConfigurations": {
"type": "array",
"items": {
"$ref": "#/types/aws-native:s3:BucketMetricsConfiguration"
- },
- "description": "Settings that define a metrics configuration for the CloudWatch request metrics from the bucket."
+ }
},
"notificationConfiguration": {
- "$ref": "#/types/aws-native:s3:BucketNotificationConfiguration",
- "description": "Configuration that defines how Amazon S3 handles bucket notifications."
+ "$ref": "#/types/aws-native:s3:BucketNotificationConfiguration"
},
"objectLockConfiguration": {
- "$ref": "#/types/aws-native:s3:BucketObjectLockConfiguration",
- "description": "Places an Object Lock configuration on the specified bucket."
+ "$ref": "#/types/aws-native:s3:BucketObjectLockConfiguration"
},
"ownershipControls": {
- "$ref": "#/types/aws-native:s3:BucketOwnershipControls",
- "description": "Specifies the container element for object ownership rules."
+ "$ref": "#/types/aws-native:s3:BucketOwnershipControls"
},
"publicAccessBlockConfiguration": {
"$ref": "#/types/aws-native:s3:BucketPublicAccessBlockConfiguration"
},
"regionalDomainName": {
- "type": "string",
- "description": "Returns the regional domain name of the specified bucket."
+ "type": "string"
},
"replicationConfiguration": {
- "$ref": "#/types/aws-native:s3:BucketReplicationConfiguration",
- "description": "Configuration for replicating objects in an S3 bucket."
+ "$ref": "#/types/aws-native:s3:BucketReplicationConfiguration"
},
"tags": {
"type": "array",
"items": {
"$ref": "#/types/aws-native:s3:BucketTag"
- },
- "description": "An arbitrary set of tags (key-value pairs) for this S3 bucket."
+ }
},
"versioningConfiguration": {
"$ref": "#/types/aws-native:s3:BucketVersioningConfiguration"
@@ -272133,8 +272631,7 @@
"$ref": "#/types/aws-native:s3:BucketWebsiteConfiguration"
},
"websiteUrl": {
- "type": "string",
- "description": "The Amazon S3 website endpoint for the specified bucket."
+ "type": "string"
}
}
}
@@ -274440,12 +274937,16 @@
"description": "Resource Schema for AWS::ServiceCatalogAppRegistry::AttributeGroupAssociation.",
"inputs": {
"properties": {
- "id": {
+ "applicationArn": {
+ "type": "string"
+ },
+ "attributeGroupArn": {
"type": "string"
}
},
"required": [
- "id"
+ "applicationArn",
+ "attributeGroupArn"
]
},
"outputs": {
@@ -274455,9 +274956,6 @@
},
"attributeGroupArn": {
"type": "string"
- },
- "id": {
- "type": "string"
}
}
}
@@ -274466,12 +274964,21 @@
"description": "Resource Schema for AWS::ServiceCatalogAppRegistry::ResourceAssociation",
"inputs": {
"properties": {
- "id": {
+ "applicationArn": {
"type": "string"
+ },
+ "resourceArn": {
+ "type": "string"
+ },
+ "resourceType": {
+ "$ref": "#/types/aws-native:servicecatalogappregistry:ResourceAssociationResourceType",
+ "description": "The type of the CFN Resource for now it's enum CFN_STACK."
}
},
"required": [
- "id"
+ "applicationArn",
+ "resourceArn",
+ "resourceType"
]
},
"outputs": {
@@ -274479,9 +274986,6 @@
"applicationArn": {
"type": "string"
},
- "id": {
- "type": "string"
- },
"resourceArn": {
"type": "string"
}
@@ -275221,6 +275725,10 @@
},
"outputs": {
"properties": {
+ "archivePolicy": {
+ "$ref": "pulumi.json#/Any",
+ "description": "The archive policy determines the number of days Amazon SNS retains messages. You can set a retention period from 1 to 365 days."
+ },
"contentBasedDeduplication": {
"type": "boolean",
"description": "Enables content-based deduplication for FIFO topics. By default, ContentBasedDeduplication is set to false. If you create a FIFO topic and this attribute is false, you must specify a value for the MessageDeduplicationId parameter for the Publish action.\n\nWhen you set ContentBasedDeduplication to true, Amazon SNS uses a SHA-256 hash to generate the MessageDeduplicationId using the body of the message (but not the attributes of the message).\n\n(Optional) To override the generated value, you can specify a value for the the MessageDeduplicationId parameter for the Publish action.\n\n"
@@ -275427,7 +275935,7 @@
}
},
"aws-native:sqs:getQueuePolicy": {
- "description": "Resource Type definition for AWS::SQS::QueuePolicy",
+ "description": "The ``AWS::SQS::QueuePolicy`` type applies a policy to SQS queues. For an example snippet, see [Declaring an policy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/quickref-iam.html#scenario-sqs-policy) in the *User Guide*.",
"inputs": {
"properties": {
"id": {
@@ -275447,14 +275955,14 @@
},
"policyDocument": {
"$ref": "pulumi.json#/Any",
- "description": "A policy document that contains the permissions for the specified Amazon SQS queues. For more information about Amazon SQS policies, see Creating Custom Policies Using the Access Policy Language in the Amazon Simple Queue Service Developer Guide."
+ "description": "A policy document that contains the permissions for the specified SQS queues. For more information about SQS policies, see [Using custom policies with the access policy language](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-creating-custom-policies.html) in the *Developer Guide*."
},
"queues": {
"type": "array",
"items": {
"type": "string"
},
- "description": "The URLs of the queues to which you want to add the policy. You can use the Ref function to specify an AWS::SQS::Queue resource."
+ "description": "The URLs of the queues to which you want to add the policy. You can use the ``Ref`` function to specify an ``AWS::SQS::Queue`` resource."
}
}
}
diff --git a/provider/cmd/pulumi-gen-aws-native/deprecated-types.txt b/provider/cmd/pulumi-gen-aws-native/deprecated-types.txt
index 4e8621bbae..18a21e116d 100644
--- a/provider/cmd/pulumi-gen-aws-native/deprecated-types.txt
+++ b/provider/cmd/pulumi-gen-aws-native/deprecated-types.txt
@@ -1,6 +1,10 @@
+AWS::Cognito::IdentityPool
+AWS::EC2::SubnetNetworkAclAssociation
+AWS::Events::Rule
AWS::GameCast::Application
AWS::GameCast::StreamGroup
AWS::Lambda::EventInvokeConfig
+AWS::S3::Bucket
AWS::SNS::TopicPolicy
AWSQS::EKS::Cluster
AWSQS::Kubernetes::Get
diff --git a/provider/cmd/pulumi-gen-aws-native/supported-types.txt b/provider/cmd/pulumi-gen-aws-native/supported-types.txt
index 8a56c1ffb5..a4c8cddd21 100644
--- a/provider/cmd/pulumi-gen-aws-native/supported-types.txt
+++ b/provider/cmd/pulumi-gen-aws-native/supported-types.txt
@@ -39,6 +39,7 @@ AWS::ApiGatewayV2::Model
AWS::ApiGatewayV2::Route
AWS::ApiGatewayV2::RouteResponse
AWS::ApiGatewayV2::VpcLink
+AWS::AppConfig::Application
AWS::AppConfig::Extension
AWS::AppConfig::ExtensionAssociation
AWS::AppFlow::Connector
@@ -61,6 +62,7 @@ AWS::AppStream::Entitlement
AWS::AppStream::ImageBuilder
AWS::AppSync::DomainName
AWS::AppSync::DomainNameApiAssociation
+AWS::AppSync::FunctionConfiguration
AWS::AppSync::SourceApiAssociation
AWS::ApplicationAutoScaling::ScalableTarget
AWS::ApplicationInsights::Application
@@ -140,6 +142,8 @@ AWS::CodeStarNotifications::NotificationRule
AWS::Cognito::IdentityPool
AWS::Cognito::IdentityPoolPrincipalTag
AWS::Cognito::LogDeliveryConfiguration
+AWS::Cognito::UserPool
+AWS::Cognito::UserPoolGroup
AWS::Cognito::UserPoolUser
AWS::Comprehend::DocumentClassifier
AWS::Comprehend::Flywheel
@@ -325,6 +329,7 @@ AWS::ElasticLoadBalancingV2::Listener
AWS::ElasticLoadBalancingV2::ListenerRule
AWS::ElasticLoadBalancingV2::LoadBalancer
AWS::ElasticLoadBalancingV2::TargetGroup
+AWS::EntityResolution::IdMappingWorkflow
AWS::EntityResolution::MatchingWorkflow
AWS::EntityResolution::SchemaMapping
AWS::EventSchemas::RegistryPolicy
@@ -377,6 +382,7 @@ AWS::GroundStation::MissionProfile
AWS::GuardDuty::Detector
AWS::HealthImaging::Datastore
AWS::HealthLake::FHIRDatastore
+AWS::IAM::Group
AWS::IAM::GroupPolicy
AWS::IAM::InstanceProfile
AWS::IAM::ManagedPolicy
@@ -528,6 +534,7 @@ AWS::MSK::BatchScramSecret
AWS::MSK::Cluster
AWS::MSK::ClusterPolicy
AWS::MSK::Configuration
+AWS::MSK::Replicator
AWS::MSK::ServerlessCluster
AWS::MSK::VpcConnection
AWS::MWAA::Environment
diff --git a/provider/cmd/pulumi-resource-aws-native/metadata.json b/provider/cmd/pulumi-resource-aws-native/metadata.json
index 0651730042..91d9721c89 100644
--- a/provider/cmd/pulumi-resource-aws-native/metadata.json
+++ b/provider/cmd/pulumi-resource-aws-native/metadata.json
@@ -1029,13 +1029,13 @@
"inputs": {
"cloudWatchRoleArn": {
"type": "string",
- "description": "The Amazon Resource Name (ARN) of an IAM role that has write access to CloudWatch Logs in your account."
+ "description": "The ARN of an Amazon CloudWatch role for the current Account."
}
},
"outputs": {
"cloudWatchRoleArn": {
"type": "string",
- "description": "The Amazon Resource Name (ARN) of an IAM role that has write access to CloudWatch Logs in your account."
+ "description": "The ARN of an Amazon CloudWatch role for the current Account."
}
}
},
@@ -1152,23 +1152,23 @@
},
"authorizerCredentials": {
"type": "string",
- "description": "Specifies the required credentials as an IAM role for API Gateway to invoke the authorizer."
+ "description": "Specifies the required credentials as an IAM role for API Gateway to invoke the authorizer. To specify an IAM role for API Gateway to assume, use the role's Amazon Resource Name (ARN). To use resource-based permissions on the Lambda function, specify null."
},
"authorizerResultTtlInSeconds": {
"type": "integer",
- "description": "The TTL in seconds of cached authorizer results."
+ "description": "The TTL in seconds of cached authorizer results. If it equals 0, authorization caching is disabled. If it is greater than 0, API Gateway will cache authorizer responses. If this field is not set, the default value is 300. The maximum value is 3600, or 1 hour."
},
"authorizerUri": {
"type": "string",
- "description": "Specifies the authorizer's Uniform Resource Identifier (URI)."
+ "description": "Specifies the authorizer's Uniform Resource Identifier (URI). For ``TOKEN`` or ``REQUEST`` authorizers, this must be a well-formed Lambda function URI, for example, ``arn:aws:apigateway:us-west-2:lambda:path/2015-03-31/functions/arn:aws:lambda:us-west-2:{account_id}:function:{lambda_function_name}/invocations``. In general, the URI has this form ``arn:aws:apigateway:{region}:lambda:path/{service_api}``, where ``{region}`` is the same as the region hosting the Lambda function, ``path`` indicates that the remaining substring in the URI should be treated as the path to the resource, including the initial ``/``. For Lambda functions, this is usually of the form ``/2015-03-31/functions/[FunctionARN]/invocations``."
},
"identitySource": {
"type": "string",
- "description": "The identity source for which authorization is requested."
+ "description": "The identity source for which authorization is requested. For a ``TOKEN`` or ``COGNITO_USER_POOLS`` authorizer, this is required and specifies the request header mapping expression for the custom header holding the authorization token submitted by the client. For example, if the token header name is ``Auth``, the header mapping expression is ``method.request.header.Auth``. For the ``REQUEST`` authorizer, this is required when authorization caching is enabled. The value is a comma-separated string of one or more mapping expressions of the specified request parameters. For example, if an ``Auth`` header, a ``Name`` query string parameter are defined as identity sources, this value is ``method.request.header.Auth, method.request.querystring.Name``. These parameters will be used to derive the authorization caching key and to perform runtime validation of the ``REQUEST`` authorizer by verifying all of the identity-related request parameters are present, not null and non-empty. Only when this is true does the authorizer invoke the authorizer Lambda function, otherwise, it returns a 401 Unauthorized response without calling the Lambda function. The valid value is a string of comma-separated mapping expressions of the specified request parameters. When the authorization caching is not enabled, this property is optional."
},
"identityValidationExpression": {
"type": "string",
- "description": "A validation expression for the incoming identity token."
+ "description": "A validation expression for the incoming identity token. For ``TOKEN`` authorizers, this value is a regular expression. For ``COGNITO_USER_POOLS`` authorizers, API Gateway will match the ``aud`` field of the incoming token from the client against the specified regular expression. It will invoke the authorizer's Lambda function when there is a match. Otherwise, it will return a 401 Unauthorized response without calling the Lambda function. The validation expression does not apply to the ``REQUEST`` authorizer."
},
"name": {
"type": "string",
@@ -1179,15 +1179,15 @@
"items": {
"type": "string"
},
- "description": "A list of the Amazon Cognito user pool ARNs for the COGNITO_USER_POOLS authorizer."
+ "description": "A list of the Amazon Cognito user pool ARNs for the ``COGNITO_USER_POOLS`` authorizer. Each element is of this format: ``arn:aws:cognito-idp:{region}:{account_id}:userpool/{user_pool_id}``. For a ``TOKEN`` or ``REQUEST`` authorizer, this is not defined."
},
"restApiId": {
"type": "string",
- "description": "The identifier of the API."
+ "description": "The string identifier of the associated RestApi."
},
"type": {
"type": "string",
- "description": "The authorizer type."
+ "description": "The authorizer type. Valid values are ``TOKEN`` for a Lambda function using a single authorization token submitted in a custom header, ``REQUEST`` for a Lambda function using incoming request parameters, and ``COGNITO_USER_POOLS`` for using an Amazon Cognito user pool."
}
},
"outputs": {
@@ -1197,26 +1197,26 @@
},
"authorizerCredentials": {
"type": "string",
- "description": "Specifies the required credentials as an IAM role for API Gateway to invoke the authorizer."
+ "description": "Specifies the required credentials as an IAM role for API Gateway to invoke the authorizer. To specify an IAM role for API Gateway to assume, use the role's Amazon Resource Name (ARN). To use resource-based permissions on the Lambda function, specify null."
},
"authorizerId": {
"type": "string"
},
"authorizerResultTtlInSeconds": {
"type": "integer",
- "description": "The TTL in seconds of cached authorizer results."
+ "description": "The TTL in seconds of cached authorizer results. If it equals 0, authorization caching is disabled. If it is greater than 0, API Gateway will cache authorizer responses. If this field is not set, the default value is 300. The maximum value is 3600, or 1 hour."
},
"authorizerUri": {
"type": "string",
- "description": "Specifies the authorizer's Uniform Resource Identifier (URI)."
+ "description": "Specifies the authorizer's Uniform Resource Identifier (URI). For ``TOKEN`` or ``REQUEST`` authorizers, this must be a well-formed Lambda function URI, for example, ``arn:aws:apigateway:us-west-2:lambda:path/2015-03-31/functions/arn:aws:lambda:us-west-2:{account_id}:function:{lambda_function_name}/invocations``. In general, the URI has this form ``arn:aws:apigateway:{region}:lambda:path/{service_api}``, where ``{region}`` is the same as the region hosting the Lambda function, ``path`` indicates that the remaining substring in the URI should be treated as the path to the resource, including the initial ``/``. For Lambda functions, this is usually of the form ``/2015-03-31/functions/[FunctionARN]/invocations``."
},
"identitySource": {
"type": "string",
- "description": "The identity source for which authorization is requested."
+ "description": "The identity source for which authorization is requested. For a ``TOKEN`` or ``COGNITO_USER_POOLS`` authorizer, this is required and specifies the request header mapping expression for the custom header holding the authorization token submitted by the client. For example, if the token header name is ``Auth``, the header mapping expression is ``method.request.header.Auth``. For the ``REQUEST`` authorizer, this is required when authorization caching is enabled. The value is a comma-separated string of one or more mapping expressions of the specified request parameters. For example, if an ``Auth`` header, a ``Name`` query string parameter are defined as identity sources, this value is ``method.request.header.Auth, method.request.querystring.Name``. These parameters will be used to derive the authorization caching key and to perform runtime validation of the ``REQUEST`` authorizer by verifying all of the identity-related request parameters are present, not null and non-empty. Only when this is true does the authorizer invoke the authorizer Lambda function, otherwise, it returns a 401 Unauthorized response without calling the Lambda function. The valid value is a string of comma-separated mapping expressions of the specified request parameters. When the authorization caching is not enabled, this property is optional."
},
"identityValidationExpression": {
"type": "string",
- "description": "A validation expression for the incoming identity token."
+ "description": "A validation expression for the incoming identity token. For ``TOKEN`` authorizers, this value is a regular expression. For ``COGNITO_USER_POOLS`` authorizers, API Gateway will match the ``aud`` field of the incoming token from the client against the specified regular expression. It will invoke the authorizer's Lambda function when there is a match. Otherwise, it will return a 401 Unauthorized response without calling the Lambda function. The validation expression does not apply to the ``REQUEST`` authorizer."
},
"name": {
"type": "string",
@@ -1227,16 +1227,16 @@
"items": {
"type": "string"
},
- "description": "A list of the Amazon Cognito user pool ARNs for the COGNITO_USER_POOLS authorizer."
+ "description": "A list of the Amazon Cognito user pool ARNs for the ``COGNITO_USER_POOLS`` authorizer. Each element is of this format: ``arn:aws:cognito-idp:{region}:{account_id}:userpool/{user_pool_id}``. For a ``TOKEN`` or ``REQUEST`` authorizer, this is not defined."
},
"restApiId": {
"type": "string",
- "description": "The identifier of the API.",
+ "description": "The string identifier of the associated RestApi.",
"replaceOnChanges": true
},
"type": {
"type": "string",
- "description": "The authorizer type."
+ "description": "The authorizer type. Valid values are ``TOKEN`` for a Lambda function using a single authorization token submitted in a custom header, ``REQUEST`` for a Lambda function using incoming request parameters, and ``COGNITO_USER_POOLS`` for using an Amazon Cognito user pool."
}
},
"autoNamingSpec": {
@@ -1339,29 +1339,29 @@
"inputs": {
"deploymentCanarySettings": {
"$ref": "#/types/aws-native:apigateway:DeploymentCanarySettings",
- "description": "Specifies settings for the canary deployment."
+ "description": "The input configuration for a canary deployment."
},
"description": {
"type": "string",
- "description": "A description of the purpose of the API Gateway deployment."
+ "description": "The description for the Deployment resource to create."
},
"restApiId": {
"type": "string",
- "description": "The ID of the RestApi resource to deploy. "
+ "description": "The string identifier of the associated RestApi."
},
"stageDescription": {
"$ref": "#/types/aws-native:apigateway:DeploymentStageDescription",
- "description": "Configures the stage that API Gateway creates with this deployment."
+ "description": "The description of the Stage resource for the Deployment resource to create. To specify a stage description, you must also provide a stage name."
},
"stageName": {
"type": "string",
- "description": "A name for the stage that API Gateway creates with this deployment. Use only alphanumeric characters."
+ "description": "The name of the Stage resource for the Deployment resource to create."
}
},
"outputs": {
"deploymentCanarySettings": {
"$ref": "#/types/aws-native:apigateway:DeploymentCanarySettings",
- "description": "Specifies settings for the canary deployment.",
+ "description": "The input configuration for a canary deployment.",
"replaceOnChanges": true
},
"deploymentId": {
@@ -1370,20 +1370,20 @@
},
"description": {
"type": "string",
- "description": "A description of the purpose of the API Gateway deployment."
+ "description": "The description for the Deployment resource to create."
},
"restApiId": {
"type": "string",
- "description": "The ID of the RestApi resource to deploy. ",
+ "description": "The string identifier of the associated RestApi.",
"replaceOnChanges": true
},
"stageDescription": {
"$ref": "#/types/aws-native:apigateway:DeploymentStageDescription",
- "description": "Configures the stage that API Gateway creates with this deployment."
+ "description": "The description of the Stage resource for the Deployment resource to create. To specify a stage description, you must also provide a stage name."
},
"stageName": {
"type": "string",
- "description": "A name for the stage that API Gateway creates with this deployment. Use only alphanumeric characters."
+ "description": "The name of the Stage resource for the Deployment resource to create."
}
},
"required": [
@@ -1404,15 +1404,15 @@
"inputs": {
"location": {
"$ref": "#/types/aws-native:apigateway:DocumentationPartLocation",
- "description": "The location of the API entity that the documentation applies to."
+ "description": "The location of the targeted API entity of the to-be-created documentation part."
},
"properties": {
"type": "string",
- "description": "The documentation content map of the targeted API entity."
+ "description": "The new documentation content map of the targeted API entity. Enclosed key-value pairs are API-specific, but only OpenAPI-compliant key-value pairs can be exported and, hence, published."
},
"restApiId": {
"type": "string",
- "description": "Identifier of the targeted API entity"
+ "description": "The string identifier of the associated RestApi."
}
},
"outputs": {
@@ -1422,16 +1422,16 @@
},
"location": {
"$ref": "#/types/aws-native:apigateway:DocumentationPartLocation",
- "description": "The location of the API entity that the documentation applies to.",
+ "description": "The location of the targeted API entity of the to-be-created documentation part.",
"replaceOnChanges": true
},
"properties": {
"type": "string",
- "description": "The documentation content map of the targeted API entity."
+ "description": "The new documentation content map of the targeted API entity. Enclosed key-value pairs are API-specific, but only OpenAPI-compliant key-value pairs can be exported and, hence, published."
},
"restApiId": {
"type": "string",
- "description": "Identifier of the targeted API entity",
+ "description": "The string identifier of the associated RestApi.",
"replaceOnChanges": true
}
},
@@ -1450,11 +1450,11 @@
"inputs": {
"description": {
"type": "string",
- "description": "The description of the API documentation snapshot."
+ "description": "A description about the new documentation snapshot."
},
"documentationVersion": {
"type": "string",
- "description": "The version identifier of the API documentation snapshot.",
+ "description": "The version identifier of the to-be-updated documentation version.",
"language": {
"csharp": {
"name": "DocumentationVersionValue"
@@ -1463,17 +1463,17 @@
},
"restApiId": {
"type": "string",
- "description": "The identifier of the API."
+ "description": "The string identifier of the associated RestApi."
}
},
"outputs": {
"description": {
"type": "string",
- "description": "The description of the API documentation snapshot."
+ "description": "A description about the new documentation snapshot."
},
"documentationVersion": {
"type": "string",
- "description": "The version identifier of the API documentation snapshot.",
+ "description": "The version identifier of the to-be-updated documentation version.",
"language": {
"csharp": {
"name": "DocumentationVersionValue"
@@ -1483,7 +1483,7 @@
},
"restApiId": {
"type": "string",
- "description": "The identifier of the API.",
+ "description": "The string identifier of the associated RestApi.",
"replaceOnChanges": true
}
},
@@ -1588,123 +1588,123 @@
"inputs": {
"apiKeyRequired": {
"type": "boolean",
- "description": "Indicates whether the method requires clients to submit a valid API key."
+ "description": "A boolean flag specifying whether a valid ApiKey is required to invoke this method."
},
"authorizationScopes": {
"type": "array",
"items": {
"type": "string"
},
- "description": "A list of authorization scopes configured on the method."
+ "description": "A list of authorization scopes configured on the method. The scopes are used with a ``COGNITO_USER_POOLS`` authorizer to authorize the method invocation. The authorization works by matching the method scopes against the scopes parsed from the access token in the incoming request. The method invocation is authorized if any method scopes matches a claimed scope in the access token. Otherwise, the invocation is not authorized. When the method scope is configured, the client must provide an access token instead of an identity token for authorization purposes."
},
"authorizationType": {
"$ref": "#/types/aws-native:apigateway:MethodAuthorizationType",
- "description": "The method's authorization type."
+ "description": "The method's authorization type. This parameter is required. For valid values, see [Method](https://docs.aws.amazon.com/apigateway/latest/api/API_Method.html) in the *API Gateway API Reference*.\n If you specify the ``AuthorizerId`` property, specify ``CUSTOM`` or ``COGNITO_USER_POOLS`` for this property."
},
"authorizerId": {
"type": "string",
- "description": "The identifier of the authorizer to use on this method."
+ "description": "The identifier of an authorizer to use on this method. The method's authorization type must be ``CUSTOM`` or ``COGNITO_USER_POOLS``."
},
"httpMethod": {
"type": "string",
- "description": "The backend system that the method calls when it receives a request."
+ "description": "The method's HTTP verb."
},
"integration": {
"$ref": "#/types/aws-native:apigateway:MethodIntegration",
- "description": "The backend system that the method calls when it receives a request."
+ "description": "Represents an ``HTTP``, ``HTTP_PROXY``, ``AWS``, ``AWS_PROXY``, or Mock integration."
},
"methodResponses": {
"type": "array",
"items": {
"$ref": "#/types/aws-native:apigateway:MethodResponse"
},
- "description": "The responses that can be sent to the client who calls the method."
+ "description": "Gets a method response associated with a given HTTP status code."
},
"operationName": {
"type": "string",
- "description": "A friendly operation name for the method."
+ "description": "A human-friendly operation identifier for the method. For example, you can assign the ``operationName`` of ``ListPets`` for the ``GET /pets`` method in the ``PetStore`` example."
},
"requestModels": {
"$ref": "pulumi.json#/Any",
- "description": "The resources that are used for the request's content type. Specify request models as key-value pairs (string-to-string mapping), with a content type as the key and a Model resource name as the value."
+ "description": "A key-value map specifying data schemas, represented by Model resources, (as the mapped value) of the request payloads of given content types (as the mapping key)."
},
"requestParameters": {
"$ref": "pulumi.json#/Any",
- "description": "The request parameters that API Gateway accepts. Specify request parameters as key-value pairs (string-to-Boolean mapping), with a source as the key and a Boolean as the value."
+ "description": "A key-value map defining required or optional method request parameters that can be accepted by API Gateway. A key is a method request parameter name matching the pattern of ``method.request.{location}.{name}``, where ``location`` is ``querystring``, ``path``, or ``header`` and ``name`` is a valid and unique parameter name. The value associated with the key is a Boolean flag indicating whether the parameter is required (``true``) or optional (``false``). The method request parameter names defined here are available in Integration to be mapped to integration request parameters or templates."
},
"requestValidatorId": {
"type": "string",
- "description": "The ID of the associated request validator."
+ "description": "The identifier of a RequestValidator for request validation."
},
"resourceId": {
"type": "string",
- "description": "The ID of an API Gateway resource."
+ "description": "The Resource identifier for the MethodResponse resource."
},
"restApiId": {
"type": "string",
- "description": "The ID of the RestApi resource in which API Gateway creates the method."
+ "description": "The string identifier of the associated RestApi."
}
},
"outputs": {
"apiKeyRequired": {
"type": "boolean",
- "description": "Indicates whether the method requires clients to submit a valid API key."
+ "description": "A boolean flag specifying whether a valid ApiKey is required to invoke this method."
},
"authorizationScopes": {
"type": "array",
"items": {
"type": "string"
},
- "description": "A list of authorization scopes configured on the method."
+ "description": "A list of authorization scopes configured on the method. The scopes are used with a ``COGNITO_USER_POOLS`` authorizer to authorize the method invocation. The authorization works by matching the method scopes against the scopes parsed from the access token in the incoming request. The method invocation is authorized if any method scopes matches a claimed scope in the access token. Otherwise, the invocation is not authorized. When the method scope is configured, the client must provide an access token instead of an identity token for authorization purposes."
},
"authorizationType": {
"$ref": "#/types/aws-native:apigateway:MethodAuthorizationType",
- "description": "The method's authorization type."
+ "description": "The method's authorization type. This parameter is required. For valid values, see [Method](https://docs.aws.amazon.com/apigateway/latest/api/API_Method.html) in the *API Gateway API Reference*.\n If you specify the ``AuthorizerId`` property, specify ``CUSTOM`` or ``COGNITO_USER_POOLS`` for this property."
},
"authorizerId": {
"type": "string",
- "description": "The identifier of the authorizer to use on this method."
+ "description": "The identifier of an authorizer to use on this method. The method's authorization type must be ``CUSTOM`` or ``COGNITO_USER_POOLS``."
},
"httpMethod": {
"type": "string",
- "description": "The backend system that the method calls when it receives a request.",
+ "description": "The method's HTTP verb.",
"replaceOnChanges": true
},
"integration": {
"$ref": "#/types/aws-native:apigateway:MethodIntegration",
- "description": "The backend system that the method calls when it receives a request."
+ "description": "Represents an ``HTTP``, ``HTTP_PROXY``, ``AWS``, ``AWS_PROXY``, or Mock integration."
},
"methodResponses": {
"type": "array",
"items": {
"$ref": "#/types/aws-native:apigateway:MethodResponse"
},
- "description": "The responses that can be sent to the client who calls the method."
+ "description": "Gets a method response associated with a given HTTP status code."
},
"operationName": {
"type": "string",
- "description": "A friendly operation name for the method."
+ "description": "A human-friendly operation identifier for the method. For example, you can assign the ``operationName`` of ``ListPets`` for the ``GET /pets`` method in the ``PetStore`` example."
},
"requestModels": {
"$ref": "pulumi.json#/Any",
- "description": "The resources that are used for the request's content type. Specify request models as key-value pairs (string-to-string mapping), with a content type as the key and a Model resource name as the value."
+ "description": "A key-value map specifying data schemas, represented by Model resources, (as the mapped value) of the request payloads of given content types (as the mapping key)."
},
"requestParameters": {
"$ref": "pulumi.json#/Any",
- "description": "The request parameters that API Gateway accepts. Specify request parameters as key-value pairs (string-to-Boolean mapping), with a source as the key and a Boolean as the value."
+ "description": "A key-value map defining required or optional method request parameters that can be accepted by API Gateway. A key is a method request parameter name matching the pattern of ``method.request.{location}.{name}``, where ``location`` is ``querystring``, ``path``, or ``header`` and ``name`` is a valid and unique parameter name. The value associated with the key is a Boolean flag indicating whether the parameter is required (``true``) or optional (``false``). The method request parameter names defined here are available in Integration to be mapped to integration request parameters or templates."
},
"requestValidatorId": {
"type": "string",
- "description": "The ID of the associated request validator."
+ "description": "The identifier of a RequestValidator for request validation."
},
"resourceId": {
"type": "string",
- "description": "The ID of an API Gateway resource.",
+ "description": "The Resource identifier for the MethodResponse resource.",
"replaceOnChanges": true
},
"restApiId": {
"type": "string",
- "description": "The ID of the RestApi resource in which API Gateway creates the method.",
+ "description": "The string identifier of the associated RestApi.",
"replaceOnChanges": true
}
},
@@ -1724,48 +1724,48 @@
"inputs": {
"contentType": {
"type": "string",
- "description": "The content type for the model."
+ "description": "The content-type for the model."
},
"description": {
"type": "string",
- "description": "A description that identifies this model."
+ "description": "The description of the model."
},
"name": {
"type": "string",
- "description": "A name for the model. If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the model name."
+ "description": "A name for the model. If you don't specify a name, CFN generates a unique physical ID and uses that ID for the model name. For more information, see [Name Type](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-name.html).\n If you specify a name, you cannot perform updates that require replacement of this resource. You can perform updates that require no or some interruption. If you must replace the resource, specify a new name."
},
"restApiId": {
"type": "string",
- "description": "The ID of a REST API with which to associate this model."
+ "description": "The string identifier of the associated RestApi."
},
"schema": {
"$ref": "pulumi.json#/Any",
- "description": "The schema to use to transform data to one or more output formats. Specify null ({}) if you don't want to specify a schema."
+ "description": "The schema for the model. For ``application/json`` models, this should be JSON schema draft 4 model. Do not include \"\\*/\" characters in the description of any properties because such \"\\*/\" characters may be interpreted as the closing marker for comments in some languages, such as Java or JavaScript, causing the installation of your API's SDK generated by API Gateway to fail."
}
},
"outputs": {
"contentType": {
"type": "string",
- "description": "The content type for the model.",
+ "description": "The content-type for the model.",
"replaceOnChanges": true
},
"description": {
"type": "string",
- "description": "A description that identifies this model."
+ "description": "The description of the model."
},
"name": {
"type": "string",
- "description": "A name for the model. If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the model name.",
+ "description": "A name for the model. If you don't specify a name, CFN generates a unique physical ID and uses that ID for the model name. For more information, see [Name Type](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-name.html).\n If you specify a name, you cannot perform updates that require replacement of this resource. You can perform updates that require no or some interruption. If you must replace the resource, specify a new name.",
"replaceOnChanges": true
},
"restApiId": {
"type": "string",
- "description": "The ID of a REST API with which to associate this model.",
+ "description": "The string identifier of the associated RestApi.",
"replaceOnChanges": true
},
"schema": {
"$ref": "pulumi.json#/Any",
- "description": "The schema to use to transform data to one or more output formats. Specify null ({}) if you don't want to specify a schema."
+ "description": "The schema for the model. For ``application/json`` models, this should be JSON schema draft 4 model. Do not include \"\\*/\" characters in the description of any properties because such \"\\*/\" characters may be interpreted as the closing marker for comments in some languages, such as Java or JavaScript, causing the installation of your API's SDK generated by API Gateway to fail."
}
},
"autoNamingSpec": {
@@ -1848,7 +1848,7 @@
},
"restApiId": {
"type": "string",
- "description": "The ID of the RestApi resource in which you want to create this resource.."
+ "description": "The string identifier of the associated RestApi."
}
},
"outputs": {
@@ -1868,7 +1868,7 @@
},
"restApiId": {
"type": "string",
- "description": "The ID of the RestApi resource in which you want to create this resource..",
+ "description": "The string identifier of the associated RestApi.",
"replaceOnChanges": true
}
},
@@ -1887,102 +1887,131 @@
"cf": "AWS::ApiGateway::RestApi",
"inputs": {
"apiKeySourceType": {
- "type": "string"
+ "type": "string",
+ "description": "The source of the API key for metering requests according to a usage plan. Valid values are: ``HEADER`` to read the API key from the ``X-API-Key`` header of a request. ``AUTHORIZER`` to read the API key from the ``UsageIdentifierKey`` from a custom authorizer."
},
"binaryMediaTypes": {
"type": "array",
"items": {
"type": "string"
- }
+ },
+ "description": "The list of binary media types supported by the RestApi. By default, the RestApi supports only UTF-8-encoded text payloads."
},
"body": {
- "$ref": "pulumi.json#/Any"
+ "$ref": "pulumi.json#/Any",
+ "description": "An OpenAPI specification that defines a set of RESTful APIs in JSON format. For YAML templates, you can also provide the specification in YAML format."
},
"bodyS3Location": {
- "$ref": "#/types/aws-native:apigateway:RestApiS3Location"
+ "$ref": "#/types/aws-native:apigateway:RestApiS3Location",
+ "description": "The Amazon Simple Storage Service (Amazon S3) location that points to an OpenAPI file, which defines a set of RESTful APIs in JSON or YAML format."
},
"cloneFrom": {
- "type": "string"
+ "type": "string",
+ "description": "The ID of the RestApi that you want to clone from."
},
"description": {
- "type": "string"
+ "type": "string",
+ "description": "The description of the RestApi."
},
"disableExecuteApiEndpoint": {
- "type": "boolean"
+ "type": "boolean",
+ "description": "Specifies whether clients can invoke your API by using the default ``execute-api`` endpoint. By default, clients can invoke your API with the default ``https://{api_id}.execute-api.{region}.amazonaws.com`` endpoint. To require that clients use a custom domain name to invoke your API, disable the default endpoint"
},
"endpointConfiguration": {
- "$ref": "#/types/aws-native:apigateway:RestApiEndpointConfiguration"
+ "$ref": "#/types/aws-native:apigateway:RestApiEndpointConfiguration",
+ "description": "A list of the endpoint types of the API. Use this property when creating an API. When importing an existing API, specify the endpoint configuration types using the ``Parameters`` property."
},
"failOnWarnings": {
- "type": "boolean"
+ "type": "boolean",
+ "description": "A query parameter to indicate whether to rollback the API update (``true``) or not (``false``) when a warning is encountered. The default value is ``false``."
},
"minimumCompressionSize": {
- "type": "integer"
+ "type": "integer",
+ "description": "A nullable integer that is used to enable compression (with non-negative between 0 and 10485760 (10M) bytes, inclusive) or disable compression (with a null value) on an API. When compression is enabled, compression or decompression is not applied on the payload if the payload size is smaller than this value. Setting it to zero allows compression for any payload size."
},
"mode": {
- "type": "string"
+ "type": "string",
+ "description": "This property applies only when you use OpenAPI to define your REST API. The ``Mode`` determines how API Gateway handles resource updates.\n Valid values are ``overwrite`` or ``merge``. \n For ``overwrite``, the new API definition replaces the existing one. The existing API identifier remains unchanged.\n For ``merge``, the new API definition is merged with the existing API.\n If you don't specify this property, a default value is chosen. For REST APIs created before March 29, 2021, the default is ``overwrite``. For REST APIs created after March 29, 2021, the new API definition takes precedence, but any container types such as endpoint configurations and binary media types are merged with the existing API. \n Use the default mode to define top-level ``RestApi`` properties in addition to using OpenAPI. Generally, it's preferred to use API Gateway's OpenAPI extensions to model these properties."
},
"name": {
- "type": "string"
+ "type": "string",
+ "description": "The name of the RestApi. A name is required if the REST API is not based on an OpenAPI specification."
},
"parameters": {
- "$ref": "pulumi.json#/Any"
+ "$ref": "pulumi.json#/Any",
+ "description": "Custom header parameters as part of the request. For example, to exclude DocumentationParts from an imported API, set ``ignore=documentation`` as a ``parameters`` value, as in the AWS CLI command of ``aws apigateway import-rest-api --parameters ignore=documentation --body 'file:///path/to/imported-api-body.json'``."
},
"policy": {
- "$ref": "pulumi.json#/Any"
+ "$ref": "pulumi.json#/Any",
+ "description": "A policy document that contains the permissions for the ``RestApi`` resource. To set the ARN for the policy, use the ``!Join`` intrinsic function with ``\"\"`` as delimiter and values of ``\"execute-api:/\"`` and ``\"*\"``."
},
"tags": {
"type": "array",
"items": {
"$ref": "#/types/aws-native:apigateway:RestApiTag"
- }
+ },
+ "description": "The key-value map of strings. The valid character set is [a-zA-Z+-=._:/]. The tag key can be up to 128 characters and must not start with ``aws:``. The tag value can be up to 256 characters."
}
},
"outputs": {
"apiKeySourceType": {
- "type": "string"
+ "type": "string",
+ "description": "The source of the API key for metering requests according to a usage plan. Valid values are: ``HEADER`` to read the API key from the ``X-API-Key`` header of a request. ``AUTHORIZER`` to read the API key from the ``UsageIdentifierKey`` from a custom authorizer."
},
"binaryMediaTypes": {
"type": "array",
"items": {
"type": "string"
- }
+ },
+ "description": "The list of binary media types supported by the RestApi. By default, the RestApi supports only UTF-8-encoded text payloads."
},
"body": {
- "$ref": "pulumi.json#/Any"
+ "$ref": "pulumi.json#/Any",
+ "description": "An OpenAPI specification that defines a set of RESTful APIs in JSON format. For YAML templates, you can also provide the specification in YAML format."
},
"bodyS3Location": {
- "$ref": "#/types/aws-native:apigateway:RestApiS3Location"
+ "$ref": "#/types/aws-native:apigateway:RestApiS3Location",
+ "description": "The Amazon Simple Storage Service (Amazon S3) location that points to an OpenAPI file, which defines a set of RESTful APIs in JSON or YAML format."
},
"cloneFrom": {
- "type": "string"
+ "type": "string",
+ "description": "The ID of the RestApi that you want to clone from."
},
"description": {
- "type": "string"
+ "type": "string",
+ "description": "The description of the RestApi."
},
"disableExecuteApiEndpoint": {
- "type": "boolean"
+ "type": "boolean",
+ "description": "Specifies whether clients can invoke your API by using the default ``execute-api`` endpoint. By default, clients can invoke your API with the default ``https://{api_id}.execute-api.{region}.amazonaws.com`` endpoint. To require that clients use a custom domain name to invoke your API, disable the default endpoint"
},
"endpointConfiguration": {
- "$ref": "#/types/aws-native:apigateway:RestApiEndpointConfiguration"
+ "$ref": "#/types/aws-native:apigateway:RestApiEndpointConfiguration",
+ "description": "A list of the endpoint types of the API. Use this property when creating an API. When importing an existing API, specify the endpoint configuration types using the ``Parameters`` property."
},
"failOnWarnings": {
- "type": "boolean"
+ "type": "boolean",
+ "description": "A query parameter to indicate whether to rollback the API update (``true``) or not (``false``) when a warning is encountered. The default value is ``false``."
},
"minimumCompressionSize": {
- "type": "integer"
+ "type": "integer",
+ "description": "A nullable integer that is used to enable compression (with non-negative between 0 and 10485760 (10M) bytes, inclusive) or disable compression (with a null value) on an API. When compression is enabled, compression or decompression is not applied on the payload if the payload size is smaller than this value. Setting it to zero allows compression for any payload size."
},
"mode": {
- "type": "string"
+ "type": "string",
+ "description": "This property applies only when you use OpenAPI to define your REST API. The ``Mode`` determines how API Gateway handles resource updates.\n Valid values are ``overwrite`` or ``merge``. \n For ``overwrite``, the new API definition replaces the existing one. The existing API identifier remains unchanged.\n For ``merge``, the new API definition is merged with the existing API.\n If you don't specify this property, a default value is chosen. For REST APIs created before March 29, 2021, the default is ``overwrite``. For REST APIs created after March 29, 2021, the new API definition takes precedence, but any container types such as endpoint configurations and binary media types are merged with the existing API. \n Use the default mode to define top-level ``RestApi`` properties in addition to using OpenAPI. Generally, it's preferred to use API Gateway's OpenAPI extensions to model these properties."
},
"name": {
- "type": "string"
+ "type": "string",
+ "description": "The name of the RestApi. A name is required if the REST API is not based on an OpenAPI specification."
},
"parameters": {
- "$ref": "pulumi.json#/Any"
+ "$ref": "pulumi.json#/Any",
+ "description": "Custom header parameters as part of the request. For example, to exclude DocumentationParts from an imported API, set ``ignore=documentation`` as a ``parameters`` value, as in the AWS CLI command of ``aws apigateway import-rest-api --parameters ignore=documentation --body 'file:///path/to/imported-api-body.json'``."
},
"policy": {
- "$ref": "pulumi.json#/Any"
+ "$ref": "pulumi.json#/Any",
+ "description": "A policy document that contains the permissions for the ``RestApi`` resource. To set the ARN for the policy, use the ``!Join`` intrinsic function with ``\"\"`` as delimiter and values of ``\"execute-api:/\"`` and ``\"*\"``."
},
"restApiId": {
"type": "string"
@@ -1994,7 +2023,8 @@
"type": "array",
"items": {
"$ref": "#/types/aws-native:apigateway:RestApiTag"
- }
+ },
+ "description": "The key-value map of strings. The valid character set is [a-zA-Z+-=._:/]. The tag key can be up to 128 characters and must not start with ``aws:``. The tag value can be up to 256 characters."
}
},
"autoNamingSpec": {
@@ -2017,115 +2047,115 @@
"inputs": {
"accessLogSetting": {
"$ref": "#/types/aws-native:apigateway:StageAccessLogSetting",
- "description": "Specifies settings for logging access in this stage."
+ "description": "Access log settings, including the access log format and access log destination ARN."
},
"cacheClusterEnabled": {
"type": "boolean",
- "description": "Indicates whether cache clustering is enabled for the stage."
+ "description": "Specifies whether a cache cluster is enabled for the stage."
},
"cacheClusterSize": {
"type": "string",
- "description": "The stage's cache cluster size."
+ "description": "The stage's cache capacity in GB. For more information about choosing a cache size, see [Enabling API caching to enhance responsiveness](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-caching.html)."
},
"canarySetting": {
"$ref": "#/types/aws-native:apigateway:StageCanarySetting",
- "description": "Specifies settings for the canary deployment in this stage."
+ "description": "Settings for the canary deployment in this stage."
},
"clientCertificateId": {
"type": "string",
- "description": "The ID of the client certificate that API Gateway uses to call your integration endpoints in the stage. "
+ "description": "The identifier of a client certificate for an API stage."
},
"deploymentId": {
"type": "string",
- "description": "The ID of the deployment that the stage is associated with. This parameter is required to create a stage. "
+ "description": "The identifier of the Deployment that the stage points to."
},
"description": {
"type": "string",
- "description": "A description of the stage."
+ "description": "The stage's description."
},
"documentationVersion": {
"type": "string",
- "description": "The version ID of the API documentation snapshot."
+ "description": "The version of the associated API documentation."
},
"methodSettings": {
"type": "array",
"items": {
"$ref": "#/types/aws-native:apigateway:StageMethodSetting"
},
- "description": "Settings for all methods in the stage."
+ "description": "A map that defines the method settings for a Stage resource. Keys (designated as ``/{method_setting_key`` below) are method paths defined as ``{resource_path}/{http_method}`` for an individual method override, or ``/\\*/\\*`` for overriding all methods in the stage."
},
"restApiId": {
"type": "string",
- "description": "The ID of the RestApi resource that you're deploying with this stage."
+ "description": "The string identifier of the associated RestApi."
},
"stageName": {
"type": "string",
- "description": "The name of the stage, which API Gateway uses as the first path segment in the invoked Uniform Resource Identifier (URI)."
+ "description": "The name of the stage is the first path segment in the Uniform Resource Identifier (URI) of a call to API Gateway. Stage names can only contain alphanumeric characters, hyphens, and underscores. Maximum length is 128 characters."
},
"tags": {
"type": "array",
"items": {
"$ref": "#/types/aws-native:apigateway:StageTag"
},
- "description": "An array of arbitrary tags (key-value pairs) to associate with the stage."
+ "description": "The collection of tags. Each tag element is associated with a given resource."
},
"tracingEnabled": {
"type": "boolean",
- "description": "Specifies whether active X-Ray tracing is enabled for this stage."
+ "description": "Specifies whether active tracing with X-ray is enabled for the Stage."
},
"variables": {
"$ref": "pulumi.json#/Any",
- "description": "A map (string-to-string map) that defines the stage variables, where the variable name is the key and the variable value is the value."
+ "description": "A map (string-to-string map) that defines the stage variables, where the variable name is the key and the variable value is the value. Variable names are limited to alphanumeric characters. Values must match the following regular expression: ``[A-Za-z0-9-._~:/?#\u0026=,]+``."
}
},
"outputs": {
"accessLogSetting": {
"$ref": "#/types/aws-native:apigateway:StageAccessLogSetting",
- "description": "Specifies settings for logging access in this stage."
+ "description": "Access log settings, including the access log format and access log destination ARN."
},
"cacheClusterEnabled": {
"type": "boolean",
- "description": "Indicates whether cache clustering is enabled for the stage."
+ "description": "Specifies whether a cache cluster is enabled for the stage."
},
"cacheClusterSize": {
"type": "string",
- "description": "The stage's cache cluster size."
+ "description": "The stage's cache capacity in GB. For more information about choosing a cache size, see [Enabling API caching to enhance responsiveness](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-caching.html)."
},
"canarySetting": {
"$ref": "#/types/aws-native:apigateway:StageCanarySetting",
- "description": "Specifies settings for the canary deployment in this stage."
+ "description": "Settings for the canary deployment in this stage."
},
"clientCertificateId": {
"type": "string",
- "description": "The ID of the client certificate that API Gateway uses to call your integration endpoints in the stage. "
+ "description": "The identifier of a client certificate for an API stage."
},
"deploymentId": {
"type": "string",
- "description": "The ID of the deployment that the stage is associated with. This parameter is required to create a stage. "
+ "description": "The identifier of the Deployment that the stage points to."
},
"description": {
"type": "string",
- "description": "A description of the stage."
+ "description": "The stage's description."
},
"documentationVersion": {
"type": "string",
- "description": "The version ID of the API documentation snapshot."
+ "description": "The version of the associated API documentation."
},
"methodSettings": {
"type": "array",
"items": {
"$ref": "#/types/aws-native:apigateway:StageMethodSetting"
},
- "description": "Settings for all methods in the stage."
+ "description": "A map that defines the method settings for a Stage resource. Keys (designated as ``/{method_setting_key`` below) are method paths defined as ``{resource_path}/{http_method}`` for an individual method override, or ``/\\*/\\*`` for overriding all methods in the stage."
},
"restApiId": {
"type": "string",
- "description": "The ID of the RestApi resource that you're deploying with this stage.",
+ "description": "The string identifier of the associated RestApi.",
"replaceOnChanges": true
},
"stageName": {
"type": "string",
- "description": "The name of the stage, which API Gateway uses as the first path segment in the invoked Uniform Resource Identifier (URI).",
+ "description": "The name of the stage is the first path segment in the Uniform Resource Identifier (URI) of a call to API Gateway. Stage names can only contain alphanumeric characters, hyphens, and underscores. Maximum length is 128 characters.",
"replaceOnChanges": true
},
"tags": {
@@ -2133,15 +2163,15 @@
"items": {
"$ref": "#/types/aws-native:apigateway:StageTag"
},
- "description": "An array of arbitrary tags (key-value pairs) to associate with the stage."
+ "description": "The collection of tags. Each tag element is associated with a given resource."
},
"tracingEnabled": {
"type": "boolean",
- "description": "Specifies whether active X-Ray tracing is enabled for this stage."
+ "description": "Specifies whether active tracing with X-ray is enabled for the Stage."
},
"variables": {
"$ref": "pulumi.json#/Any",
- "description": "A map (string-to-string map) that defines the stage variables, where the variable name is the key and the variable value is the value."
+ "description": "A map (string-to-string map) that defines the stage variables, where the variable name is the key and the variable value is the value. Variable names are limited to alphanumeric characters. Values must match the following regular expression: ``[A-Za-z0-9-._~:/?#\u0026=,]+``."
}
},
"autoNamingSpec": {
@@ -2230,31 +2260,31 @@
"inputs": {
"keyId": {
"type": "string",
- "description": "The ID of the usage plan key."
+ "description": "The Id of the UsagePlanKey resource."
},
"keyType": {
"$ref": "#/types/aws-native:apigateway:UsagePlanKeyKeyType",
- "description": "The type of usage plan key. Currently, the only valid key type is API_KEY."
+ "description": "The type of a UsagePlanKey resource for a plan customer."
},
"usagePlanId": {
"type": "string",
- "description": "The ID of the usage plan."
+ "description": "The Id of the UsagePlan resource representing the usage plan containing the UsagePlanKey resource representing a plan customer."
}
},
"outputs": {
"keyId": {
"type": "string",
- "description": "The ID of the usage plan key.",
+ "description": "The Id of the UsagePlanKey resource.",
"replaceOnChanges": true
},
"keyType": {
"$ref": "#/types/aws-native:apigateway:UsagePlanKeyKeyType",
- "description": "The type of usage plan key. Currently, the only valid key type is API_KEY.",
+ "description": "The type of a UsagePlanKey resource for a plan customer.",
"replaceOnChanges": true
},
"usagePlanId": {
"type": "string",
- "description": "The ID of the usage plan.",
+ "description": "The Id of the UsagePlan resource representing the usage plan containing the UsagePlanKey resource representing a plan customer.",
"replaceOnChanges": true
}
},
@@ -3158,6 +3188,50 @@
"subnetIds"
]
},
+ "aws-native:appconfig:Application": {
+ "cf": "AWS::AppConfig::Application",
+ "inputs": {
+ "description": {
+ "type": "string",
+ "description": "A description of the application."
+ },
+ "name": {
+ "type": "string",
+ "description": "A name for the application."
+ },
+ "tags": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:appconfig:ApplicationTags"
+ },
+ "description": "Metadata to assign to the application. Tags help organize and categorize your AWS AppConfig resources. Each tag consists of a key and an optional value, both of which you define."
+ }
+ },
+ "outputs": {
+ "applicationId": {
+ "type": "string",
+ "description": "The application Id"
+ },
+ "description": {
+ "type": "string",
+ "description": "A description of the application."
+ },
+ "name": {
+ "type": "string",
+ "description": "A name for the application."
+ },
+ "tags": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:appconfig:ApplicationTags"
+ },
+ "description": "Metadata to assign to the application. Tags help organize and categorize your AWS AppConfig resources. Each tag consists of a key and an optional value, both of which you define."
+ }
+ },
+ "autoNamingSpec": {
+ "sdkName": "name"
+ }
+ },
"aws-native:appconfig:Extension": {
"cf": "AWS::AppConfig::Extension",
"inputs": {
@@ -5139,6 +5213,154 @@
"domainName"
]
},
+ "aws-native:appsync:FunctionConfiguration": {
+ "cf": "AWS::AppSync::FunctionConfiguration",
+ "inputs": {
+ "apiId": {
+ "type": "string",
+ "description": "The AWS AppSync GraphQL API that you want to attach using this function."
+ },
+ "code": {
+ "type": "string",
+ "description": "The resolver code that contains the request and response functions. When code is used, the runtime is required. The runtime value must be APPSYNC_JS."
+ },
+ "codeS3Location": {
+ "type": "string",
+ "description": "The Amazon S3 endpoint (where the code is located??)."
+ },
+ "dataSourceName": {
+ "type": "string",
+ "description": "The name of data source this function will attach."
+ },
+ "description": {
+ "type": "string",
+ "description": "The function description."
+ },
+ "functionVersion": {
+ "type": "string",
+ "description": "The version of the request mapping template. Currently, only the 2018-05-29 version of the template is supported."
+ },
+ "maxBatchSize": {
+ "type": "integer",
+ "description": "The maximum number of resolver request inputs that will be sent to a single AWS Lambda function in a BatchInvoke operation."
+ },
+ "name": {
+ "type": "string",
+ "description": "The name of the function."
+ },
+ "requestMappingTemplate": {
+ "type": "string",
+ "description": "The Function request mapping template. Functions support only the 2018-05-29 version of the request mapping template."
+ },
+ "requestMappingTemplateS3Location": {
+ "type": "string",
+ "description": "Describes a Sync configuration for a resolver. Contains information on which Conflict Detection, as well as Resolution strategy, should be performed when the resolver is invoked."
+ },
+ "responseMappingTemplate": {
+ "type": "string",
+ "description": "The Function response mapping template."
+ },
+ "responseMappingTemplateS3Location": {
+ "type": "string",
+ "description": "The location of a response mapping template in an Amazon S3 bucket. Use this if you want to provision with a template file in Amazon S3 rather than embedding it in your CloudFormation template."
+ },
+ "runtime": {
+ "$ref": "#/types/aws-native:appsync:FunctionConfigurationAppSyncRuntime",
+ "description": "Describes a runtime used by an AWS AppSync pipeline resolver or AWS AppSync function. Specifies the name and version of the runtime to use. Note that if a runtime is specified, code must also be specified."
+ },
+ "syncConfig": {
+ "$ref": "#/types/aws-native:appsync:FunctionConfigurationSyncConfig",
+ "description": "Describes a Sync configuration for a resolver. Specifies which Conflict Detection strategy and Resolution strategy to use when the resolver is invoked."
+ }
+ },
+ "outputs": {
+ "apiId": {
+ "type": "string",
+ "description": "The AWS AppSync GraphQL API that you want to attach using this function.",
+ "replaceOnChanges": true
+ },
+ "code": {
+ "type": "string",
+ "description": "The resolver code that contains the request and response functions. When code is used, the runtime is required. The runtime value must be APPSYNC_JS."
+ },
+ "codeS3Location": {
+ "type": "string",
+ "description": "The Amazon S3 endpoint (where the code is located??)."
+ },
+ "dataSourceName": {
+ "type": "string",
+ "description": "The name of data source this function will attach."
+ },
+ "description": {
+ "type": "string",
+ "description": "The function description."
+ },
+ "functionArn": {
+ "type": "string",
+ "description": "The ARN for the function generated by the service"
+ },
+ "functionId": {
+ "type": "string",
+ "description": "The unique identifier for the function generated by the service"
+ },
+ "functionVersion": {
+ "type": "string",
+ "description": "The version of the request mapping template. Currently, only the 2018-05-29 version of the template is supported."
+ },
+ "maxBatchSize": {
+ "type": "integer",
+ "description": "The maximum number of resolver request inputs that will be sent to a single AWS Lambda function in a BatchInvoke operation."
+ },
+ "name": {
+ "type": "string",
+ "description": "The name of the function."
+ },
+ "requestMappingTemplate": {
+ "type": "string",
+ "description": "The Function request mapping template. Functions support only the 2018-05-29 version of the request mapping template."
+ },
+ "requestMappingTemplateS3Location": {
+ "type": "string",
+ "description": "Describes a Sync configuration for a resolver. Contains information on which Conflict Detection, as well as Resolution strategy, should be performed when the resolver is invoked."
+ },
+ "responseMappingTemplate": {
+ "type": "string",
+ "description": "The Function response mapping template."
+ },
+ "responseMappingTemplateS3Location": {
+ "type": "string",
+ "description": "The location of a response mapping template in an Amazon S3 bucket. Use this if you want to provision with a template file in Amazon S3 rather than embedding it in your CloudFormation template."
+ },
+ "runtime": {
+ "$ref": "#/types/aws-native:appsync:FunctionConfigurationAppSyncRuntime",
+ "description": "Describes a runtime used by an AWS AppSync pipeline resolver or AWS AppSync function. Specifies the name and version of the runtime to use. Note that if a runtime is specified, code must also be specified."
+ },
+ "syncConfig": {
+ "$ref": "#/types/aws-native:appsync:FunctionConfigurationSyncConfig",
+ "description": "Describes a Sync configuration for a resolver. Specifies which Conflict Detection strategy and Resolution strategy to use when the resolver is invoked."
+ }
+ },
+ "autoNamingSpec": {
+ "sdkName": "name"
+ },
+ "required": [
+ "apiId",
+ "dataSourceName"
+ ],
+ "createOnly": [
+ "apiId"
+ ],
+ "writeOnly": [
+ "codeS3Location",
+ "requestMappingTemplateS3Location",
+ "responseMappingTemplateS3Location"
+ ],
+ "irreversibleNames": {
+ "codeS3Location": "CodeS3Location",
+ "requestMappingTemplateS3Location": "RequestMappingTemplateS3Location",
+ "responseMappingTemplateS3Location": "ResponseMappingTemplateS3Location"
+ }
+ },
"aws-native:appsync:SourceApiAssociation": {
"cf": "AWS::AppSync::SourceApiAssociation",
"inputs": {
@@ -11070,13 +11292,6 @@
"identityPoolName": {
"type": "string"
},
- "identityPoolTags": {
- "type": "array",
- "items": {
- "$ref": "#/types/aws-native:cognito:IdentityPoolTag"
- },
- "description": "An array of key-value pairs to apply to this resource."
- },
"openIdConnectProviderArns": {
"type": "array",
"items": {
@@ -11121,13 +11336,6 @@
"identityPoolName": {
"type": "string"
},
- "identityPoolTags": {
- "type": "array",
- "items": {
- "$ref": "#/types/aws-native:cognito:IdentityPoolTag"
- },
- "description": "An array of key-value pairs to apply to this resource."
- },
"name": {
"type": "string"
},
@@ -11156,11 +11364,6 @@
"required": [
"allowUnauthenticatedIdentities"
],
- "writeOnly": [
- "cognitoEvents",
- "cognitoStreams",
- "pushSync"
- ],
"irreversibleNames": {
"openIdConnectProviderArns": "OpenIdConnectProviderARNs",
"samlProviderArns": "SamlProviderARNs"
@@ -11239,6 +11442,256 @@
"userPoolId"
]
},
+ "aws-native:cognito:UserPool": {
+ "cf": "AWS::Cognito::UserPool",
+ "inputs": {
+ "accountRecoverySetting": {
+ "$ref": "#/types/aws-native:cognito:UserPoolAccountRecoverySetting"
+ },
+ "adminCreateUserConfig": {
+ "$ref": "#/types/aws-native:cognito:UserPoolAdminCreateUserConfig"
+ },
+ "aliasAttributes": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "autoVerifiedAttributes": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "deletionProtection": {
+ "type": "string"
+ },
+ "deviceConfiguration": {
+ "$ref": "#/types/aws-native:cognito:UserPoolDeviceConfiguration"
+ },
+ "emailConfiguration": {
+ "$ref": "#/types/aws-native:cognito:UserPoolEmailConfiguration"
+ },
+ "emailVerificationMessage": {
+ "type": "string"
+ },
+ "emailVerificationSubject": {
+ "type": "string"
+ },
+ "enabledMfas": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "lambdaConfig": {
+ "$ref": "#/types/aws-native:cognito:UserPoolLambdaConfig"
+ },
+ "mfaConfiguration": {
+ "type": "string"
+ },
+ "policies": {
+ "$ref": "#/types/aws-native:cognito:UserPoolPolicies"
+ },
+ "schema": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:cognito:UserPoolSchemaAttribute"
+ }
+ },
+ "smsAuthenticationMessage": {
+ "type": "string"
+ },
+ "smsConfiguration": {
+ "$ref": "#/types/aws-native:cognito:UserPoolSmsConfiguration"
+ },
+ "smsVerificationMessage": {
+ "type": "string"
+ },
+ "userAttributeUpdateSettings": {
+ "$ref": "#/types/aws-native:cognito:UserPoolUserAttributeUpdateSettings"
+ },
+ "userPoolAddOns": {
+ "$ref": "#/types/aws-native:cognito:UserPoolAddOns"
+ },
+ "userPoolName": {
+ "type": "string"
+ },
+ "userPoolTags": {
+ "$ref": "pulumi.json#/Any"
+ },
+ "usernameAttributes": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "usernameConfiguration": {
+ "$ref": "#/types/aws-native:cognito:UserPoolUsernameConfiguration"
+ },
+ "verificationMessageTemplate": {
+ "$ref": "#/types/aws-native:cognito:UserPoolVerificationMessageTemplate"
+ }
+ },
+ "outputs": {
+ "accountRecoverySetting": {
+ "$ref": "#/types/aws-native:cognito:UserPoolAccountRecoverySetting"
+ },
+ "adminCreateUserConfig": {
+ "$ref": "#/types/aws-native:cognito:UserPoolAdminCreateUserConfig"
+ },
+ "aliasAttributes": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "arn": {
+ "type": "string"
+ },
+ "autoVerifiedAttributes": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "deletionProtection": {
+ "type": "string"
+ },
+ "deviceConfiguration": {
+ "$ref": "#/types/aws-native:cognito:UserPoolDeviceConfiguration"
+ },
+ "emailConfiguration": {
+ "$ref": "#/types/aws-native:cognito:UserPoolEmailConfiguration"
+ },
+ "emailVerificationMessage": {
+ "type": "string"
+ },
+ "emailVerificationSubject": {
+ "type": "string"
+ },
+ "enabledMfas": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "lambdaConfig": {
+ "$ref": "#/types/aws-native:cognito:UserPoolLambdaConfig"
+ },
+ "mfaConfiguration": {
+ "type": "string"
+ },
+ "policies": {
+ "$ref": "#/types/aws-native:cognito:UserPoolPolicies"
+ },
+ "providerName": {
+ "type": "string"
+ },
+ "providerUrl": {
+ "type": "string"
+ },
+ "schema": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:cognito:UserPoolSchemaAttribute"
+ }
+ },
+ "smsAuthenticationMessage": {
+ "type": "string"
+ },
+ "smsConfiguration": {
+ "$ref": "#/types/aws-native:cognito:UserPoolSmsConfiguration"
+ },
+ "smsVerificationMessage": {
+ "type": "string"
+ },
+ "userAttributeUpdateSettings": {
+ "$ref": "#/types/aws-native:cognito:UserPoolUserAttributeUpdateSettings"
+ },
+ "userPoolAddOns": {
+ "$ref": "#/types/aws-native:cognito:UserPoolAddOns"
+ },
+ "userPoolId": {
+ "type": "string"
+ },
+ "userPoolName": {
+ "type": "string"
+ },
+ "userPoolTags": {
+ "$ref": "pulumi.json#/Any"
+ },
+ "usernameAttributes": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "usernameConfiguration": {
+ "$ref": "#/types/aws-native:cognito:UserPoolUsernameConfiguration"
+ },
+ "verificationMessageTemplate": {
+ "$ref": "#/types/aws-native:cognito:UserPoolVerificationMessageTemplate"
+ }
+ },
+ "autoNamingSpec": {
+ "sdkName": "userPoolName",
+ "minLength": 1,
+ "maxLength": 128
+ },
+ "writeOnly": [
+ "enabledMfas"
+ ],
+ "irreversibleNames": {
+ "providerUrl": "ProviderURL"
+ }
+ },
+ "aws-native:cognito:UserPoolGroup": {
+ "cf": "AWS::Cognito::UserPoolGroup",
+ "inputs": {
+ "description": {
+ "type": "string"
+ },
+ "groupName": {
+ "type": "string"
+ },
+ "precedence": {
+ "type": "integer"
+ },
+ "roleArn": {
+ "type": "string"
+ },
+ "userPoolId": {
+ "type": "string"
+ }
+ },
+ "outputs": {
+ "description": {
+ "type": "string"
+ },
+ "groupName": {
+ "type": "string",
+ "replaceOnChanges": true
+ },
+ "precedence": {
+ "type": "integer"
+ },
+ "roleArn": {
+ "type": "string"
+ },
+ "userPoolId": {
+ "type": "string",
+ "replaceOnChanges": true
+ }
+ },
+ "required": [
+ "userPoolId"
+ ],
+ "createOnly": [
+ "groupName",
+ "userPoolId"
+ ]
+ },
"aws-native:cognito:UserPoolUser": {
"cf": "AWS::Cognito::UserPoolUser",
"inputs": {
@@ -12126,7 +12579,7 @@
"description": "The name of the contact flow module."
},
"state": {
- "$ref": "#/types/aws-native:connect:ContactFlowModuleState",
+ "type": "string",
"description": "The state of the contact flow module."
},
"tags": {
@@ -12159,11 +12612,11 @@
"description": "The name of the contact flow module."
},
"state": {
- "$ref": "#/types/aws-native:connect:ContactFlowModuleState",
+ "type": "string",
"description": "The state of the contact flow module."
},
"status": {
- "$ref": "#/types/aws-native:connect:ContactFlowModuleStatus",
+ "type": "string",
"description": "The status of the contact flow module."
},
"tags": {
@@ -13896,6 +14349,12 @@
"type": "string",
"description": "The unique name of the domain."
},
+ "matching": {
+ "$ref": "#/types/aws-native:customerprofiles:DomainMatching"
+ },
+ "ruleBasedMatching": {
+ "$ref": "#/types/aws-native:customerprofiles:DomainRuleBasedMatching"
+ },
"tags": {
"type": "array",
"items": {
@@ -13930,6 +14389,15 @@
"type": "string",
"description": "The time of this integration got last updated at"
},
+ "matching": {
+ "$ref": "#/types/aws-native:customerprofiles:DomainMatching"
+ },
+ "ruleBasedMatching": {
+ "$ref": "#/types/aws-native:customerprofiles:DomainRuleBasedMatching"
+ },
+ "stats": {
+ "$ref": "#/types/aws-native:customerprofiles:DomainStats"
+ },
"tags": {
"type": "array",
"items": {
@@ -20708,12 +21176,20 @@
"enableDns64": {
"type": "boolean"
},
+ "ipv4NetmaskLength": {
+ "type": "integer",
+ "description": "The netmask length of the IPv4 CIDR you want to allocate to this subnet from an Amazon VPC IP Address Manager (IPAM) pool"
+ },
"ipv6CidrBlock": {
"type": "string"
},
"ipv6Native": {
"type": "boolean"
},
+ "ipv6NetmaskLength": {
+ "type": "integer",
+ "description": "The netmask length of the IPv6 CIDR you want to allocate to this subnet from an Amazon VPC IP Address Manager (IPAM) pool"
+ },
"mapPublicIpOnLaunch": {
"type": "boolean"
},
@@ -20752,6 +21228,10 @@
"enableDns64": {
"type": "boolean"
},
+ "ipv4NetmaskLength": {
+ "type": "integer",
+ "description": "The netmask length of the IPv4 CIDR you want to allocate to this subnet from an Amazon VPC IP Address Manager (IPAM) pool"
+ },
"ipv6CidrBlock": {
"type": "string"
},
@@ -20765,6 +21245,10 @@
"type": "boolean",
"replaceOnChanges": true
},
+ "ipv6NetmaskLength": {
+ "type": "integer",
+ "description": "The netmask length of the IPv6 CIDR you want to allocate to this subnet from an Amazon VPC IP Address Manager (IPAM) pool"
+ },
"mapPublicIpOnLaunch": {
"type": "boolean"
},
@@ -26299,6 +26783,97 @@
"type"
]
},
+ "aws-native:entityresolution:IdMappingWorkflow": {
+ "cf": "AWS::EntityResolution::IdMappingWorkflow",
+ "inputs": {
+ "description": {
+ "type": "string",
+ "description": "The description of the IdMappingWorkflow"
+ },
+ "idMappingTechniques": {
+ "$ref": "#/types/aws-native:entityresolution:IdMappingWorkflowIdMappingTechniques"
+ },
+ "inputSourceConfig": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:entityresolution:IdMappingWorkflowInputSource"
+ }
+ },
+ "outputSourceConfig": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:entityresolution:IdMappingWorkflowOutputSource"
+ }
+ },
+ "roleArn": {
+ "type": "string"
+ },
+ "tags": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:entityresolution:IdMappingWorkflowTag"
+ }
+ },
+ "workflowName": {
+ "type": "string",
+ "description": "The name of the IdMappingWorkflow"
+ }
+ },
+ "outputs": {
+ "createdAt": {
+ "type": "string"
+ },
+ "description": {
+ "type": "string",
+ "description": "The description of the IdMappingWorkflow"
+ },
+ "idMappingTechniques": {
+ "$ref": "#/types/aws-native:entityresolution:IdMappingWorkflowIdMappingTechniques"
+ },
+ "inputSourceConfig": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:entityresolution:IdMappingWorkflowInputSource"
+ }
+ },
+ "outputSourceConfig": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:entityresolution:IdMappingWorkflowOutputSource"
+ }
+ },
+ "roleArn": {
+ "type": "string"
+ },
+ "tags": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:entityresolution:IdMappingWorkflowTag"
+ }
+ },
+ "updatedAt": {
+ "type": "string"
+ },
+ "workflowArn": {
+ "type": "string"
+ },
+ "workflowName": {
+ "type": "string",
+ "description": "The name of the IdMappingWorkflow",
+ "replaceOnChanges": true
+ }
+ },
+ "required": [
+ "idMappingTechniques",
+ "inputSourceConfig",
+ "outputSourceConfig",
+ "roleArn",
+ "workflowName"
+ ],
+ "createOnly": [
+ "workflowName"
+ ]
+ },
"aws-native:entityresolution:MatchingWorkflow": {
"cf": "AWS::EntityResolution::MatchingWorkflow",
"inputs": {
@@ -26780,87 +27355,72 @@
"cf": "AWS::Events::Rule",
"inputs": {
"description": {
- "type": "string",
- "description": "The description of the rule."
+ "type": "string"
},
"eventBusName": {
- "type": "string",
- "description": "The name or ARN of the event bus associated with the rule. If you omit this, the default event bus is used."
+ "type": "string"
},
"eventPattern": {
- "type": "string",
- "description": "The event pattern of the rule. For more information, see Events and Event Patterns in the Amazon EventBridge User Guide."
+ "$ref": "pulumi.json#/Any"
},
"name": {
- "type": "string",
- "description": "The name of the rule."
+ "type": "string"
},
"roleArn": {
- "type": "string",
- "description": "The Amazon Resource Name (ARN) of the role that is used for target invocation."
+ "type": "string"
},
"scheduleExpression": {
- "type": "string",
- "description": "The scheduling expression. For example, \"cron(0 20 * * ? *)\", \"rate(5 minutes)\". For more information, see Creating an Amazon EventBridge rule that runs on a schedule."
+ "type": "string"
},
"state": {
- "$ref": "#/types/aws-native:events:RuleState",
- "description": "The state of the rule."
+ "type": "string"
},
"targets": {
"type": "array",
"items": {
"$ref": "#/types/aws-native:events:RuleTarget"
- },
- "description": "Adds the specified targets to the specified rule, or updates the targets if they are already associated with the rule.\nTargets are the resources that are invoked when a rule is triggered."
+ }
}
},
"outputs": {
"arn": {
- "type": "string",
- "description": "The ARN of the rule, such as arn:aws:events:us-east-2:123456789012:rule/example."
+ "type": "string"
},
"description": {
- "type": "string",
- "description": "The description of the rule."
+ "type": "string"
},
"eventBusName": {
"type": "string",
- "description": "The name or ARN of the event bus associated with the rule. If you omit this, the default event bus is used."
+ "replaceOnChanges": true
},
"eventPattern": {
- "type": "string",
- "description": "The event pattern of the rule. For more information, see Events and Event Patterns in the Amazon EventBridge User Guide."
+ "$ref": "pulumi.json#/Any"
},
"name": {
"type": "string",
- "description": "The name of the rule.",
"replaceOnChanges": true
},
"roleArn": {
- "type": "string",
- "description": "The Amazon Resource Name (ARN) of the role that is used for target invocation."
+ "type": "string"
},
"scheduleExpression": {
- "type": "string",
- "description": "The scheduling expression. For example, \"cron(0 20 * * ? *)\", \"rate(5 minutes)\". For more information, see Creating an Amazon EventBridge rule that runs on a schedule."
+ "type": "string"
},
"state": {
- "$ref": "#/types/aws-native:events:RuleState",
- "description": "The state of the rule."
+ "type": "string"
},
"targets": {
"type": "array",
"items": {
"$ref": "#/types/aws-native:events:RuleTarget"
- },
- "description": "Adds the specified targets to the specified rule, or updates the targets if they are already associated with the rule.\nTargets are the resources that are invoked when a rule is triggered."
+ }
}
},
"autoNamingSpec": {
"sdkName": "name"
},
"createOnly": [
+ "eventBusName",
"name"
]
},
@@ -28683,6 +29243,10 @@
"type": "string",
"description": "A unique identifier for an AWS IAM role that manages access to your AWS services. With an instance role ARN set, any application that runs on an instance in this fleet can assume the role, including install scripts, server processes, and daemons (background processes). Create a role or look up a role's ARN from the IAM dashboard in the AWS Management Console."
},
+ "instanceRoleCredentialsProvider": {
+ "$ref": "#/types/aws-native:gamelift:FleetInstanceRoleCredentialsProvider",
+ "description": "Credentials provider implementation that loads credentials from the Amazon EC2 Instance Metadata Service."
+ },
"locations": {
"type": "array",
"items": {
@@ -28802,6 +29366,11 @@
"description": "A unique identifier for an AWS IAM role that manages access to your AWS services. With an instance role ARN set, any application that runs on an instance in this fleet can assume the role, including install scripts, server processes, and daemons (background processes). Create a role or look up a role's ARN from the IAM dashboard in the AWS Management Console.",
"replaceOnChanges": true
},
+ "instanceRoleCredentialsProvider": {
+ "$ref": "#/types/aws-native:gamelift:FleetInstanceRoleCredentialsProvider",
+ "description": "Credentials provider implementation that loads credentials from the Amazon EC2 Instance Metadata Service.",
+ "replaceOnChanges": true
+ },
"locations": {
"type": "array",
"items": {
@@ -28886,6 +29455,7 @@
"ec2InstanceType",
"fleetType",
"instanceRoleArn",
+ "instanceRoleCredentialsProvider",
"logPaths",
"peerVpcAwsAccountId",
"peerVpcId",
@@ -30257,6 +30827,68 @@
"sseConfiguration"
]
},
+ "aws-native:iam:Group": {
+ "cf": "AWS::IAM::Group",
+ "inputs": {
+ "groupName": {
+ "type": "string",
+ "description": "The name of the group to create"
+ },
+ "managedPolicyArns": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "A list of Amazon Resource Names (ARNs) of the IAM managed policies that you want to attach to the role. "
+ },
+ "path": {
+ "type": "string",
+ "description": "The path to the group"
+ },
+ "policies": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:iam:GroupPolicy"
+ },
+ "description": "Adds or updates an inline policy document that is embedded in the specified IAM group"
+ }
+ },
+ "outputs": {
+ "arn": {
+ "type": "string",
+ "description": "The Arn of the group to create"
+ },
+ "groupName": {
+ "type": "string",
+ "description": "The name of the group to create",
+ "replaceOnChanges": true
+ },
+ "managedPolicyArns": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "A list of Amazon Resource Names (ARNs) of the IAM managed policies that you want to attach to the role. "
+ },
+ "path": {
+ "type": "string",
+ "description": "The path to the group"
+ },
+ "policies": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:iam:GroupPolicy"
+ },
+ "description": "Adds or updates an inline policy document that is embedded in the specified IAM group"
+ }
+ },
+ "autoNamingSpec": {
+ "sdkName": "groupName"
+ },
+ "createOnly": [
+ "groupName"
+ ]
+ },
"aws-native:iam:GroupPolicy": {
"cf": "AWS::IAM::GroupPolicy",
"inputs": {
@@ -32977,7 +33609,8 @@
"type": "array",
"items": {
"type": "string"
- }
+ },
+ "replaceOnChanges": true
},
"document": {
"type": "string",
@@ -32995,7 +33628,8 @@
"replaceOnChanges": true
},
"jobExecutionsRetryConfig": {
- "$ref": "#/types/aws-native:iot:JobExecutionsRetryConfigProperties"
+ "$ref": "#/types/aws-native:iot:JobExecutionsRetryConfigProperties",
+ "replaceOnChanges": true
},
"jobExecutionsRolloutConfig": {
"$ref": "#/types/aws-native:iot:JobExecutionsRolloutConfigProperties",
@@ -33010,7 +33644,8 @@
"type": "array",
"items": {
"$ref": "#/types/aws-native:iot:JobTemplateMaintenanceWindow"
- }
+ },
+ "replaceOnChanges": true
},
"presignedUrlConfig": {
"$ref": "#/types/aws-native:iot:PresignedUrlConfigProperties",
@@ -33038,18 +33673,30 @@
"createOnly": [
"abortConfig",
"description",
+ "destinationPackageVersions",
"document",
"documentSource",
"jobArn",
+ "jobExecutionsRetryConfig",
"jobExecutionsRolloutConfig",
"jobTemplateId",
+ "maintenanceWindows",
"presignedUrlConfig",
"tags",
"timeoutConfig"
],
"writeOnly": [
+ "abortConfig",
+ "destinationPackageVersions",
+ "document",
+ "documentSource",
"jobArn",
- "tags"
+ "jobExecutionsRetryConfig",
+ "jobExecutionsRolloutConfig",
+ "maintenanceWindows",
+ "presignedUrlConfig",
+ "tags",
+ "timeoutConfig"
]
},
"aws-native:iot:Logging": {
@@ -33155,6 +33802,12 @@
},
"policyName": {
"type": "string"
+ },
+ "tags": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:iot:PolicyTag"
+ }
}
},
"outputs": {
@@ -33167,6 +33820,12 @@
"policyName": {
"type": "string",
"replaceOnChanges": true
+ },
+ "tags": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:iot:PolicyTag"
+ }
}
},
"autoNamingSpec": {
@@ -38399,6 +39058,10 @@
"$ref": "#/types/aws-native:lambda:FunctionPackageType",
"description": "PackageType."
},
+ "policy": {
+ "$ref": "pulumi.json#/Any",
+ "description": "The resource policy of your function"
+ },
"reservedConcurrentExecutions": {
"type": "integer",
"description": "The number of simultaneous executions to reserve for the function."
@@ -38513,6 +39176,10 @@
"$ref": "#/types/aws-native:lambda:FunctionPackageType",
"description": "PackageType."
},
+ "policy": {
+ "$ref": "pulumi.json#/Any",
+ "description": "The resource policy of your function"
+ },
"reservedConcurrentExecutions": {
"type": "integer",
"description": "The number of simultaneous executions to reserve for the function."
@@ -38575,6 +39242,7 @@
"code/S3Key",
"code/S3ObjectVersion",
"code/ZipFile",
+ "policy",
"snapStart",
"snapStart/ApplyOn"
]
@@ -44713,6 +45381,111 @@
"serverProperties"
]
},
+ "aws-native:msk:Replicator": {
+ "cf": "AWS::MSK::Replicator",
+ "inputs": {
+ "currentVersion": {
+ "type": "string",
+ "description": "The current version of the MSK replicator."
+ },
+ "description": {
+ "type": "string",
+ "description": "A summary description of the replicator."
+ },
+ "kafkaClusters": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:msk:ReplicatorKafkaCluster"
+ },
+ "description": "Specifies a list of Kafka clusters which are targets of the replicator."
+ },
+ "replicationInfoList": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:msk:ReplicatorReplicationInfo"
+ },
+ "description": "A list of replication configurations, where each configuration targets a given source cluster to target cluster replication flow."
+ },
+ "replicatorName": {
+ "type": "string",
+ "description": "The name of the replicator."
+ },
+ "serviceExecutionRoleArn": {
+ "type": "string",
+ "description": "The Amazon Resource Name (ARN) of the IAM role used by the replicator to access external resources."
+ },
+ "tags": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:msk:ReplicatorTag"
+ },
+ "description": "A collection of tags associated with a resource"
+ }
+ },
+ "outputs": {
+ "currentVersion": {
+ "type": "string",
+ "description": "The current version of the MSK replicator."
+ },
+ "description": {
+ "type": "string",
+ "description": "A summary description of the replicator.",
+ "replaceOnChanges": true
+ },
+ "kafkaClusters": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:msk:ReplicatorKafkaCluster"
+ },
+ "description": "Specifies a list of Kafka clusters which are targets of the replicator.",
+ "replaceOnChanges": true
+ },
+ "replicationInfoList": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:msk:ReplicatorReplicationInfo"
+ },
+ "description": "A list of replication configurations, where each configuration targets a given source cluster to target cluster replication flow."
+ },
+ "replicatorArn": {
+ "type": "string",
+ "description": "Amazon Resource Name for the created replicator."
+ },
+ "replicatorName": {
+ "type": "string",
+ "description": "The name of the replicator.",
+ "replaceOnChanges": true
+ },
+ "serviceExecutionRoleArn": {
+ "type": "string",
+ "description": "The Amazon Resource Name (ARN) of the IAM role used by the replicator to access external resources.",
+ "replaceOnChanges": true
+ },
+ "tags": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:msk:ReplicatorTag"
+ },
+ "description": "A collection of tags associated with a resource"
+ }
+ },
+ "autoNamingSpec": {
+ "sdkName": "replicatorName",
+ "minLength": 1,
+ "maxLength": 128
+ },
+ "required": [
+ "kafkaClusters",
+ "replicationInfoList",
+ "serviceExecutionRoleArn"
+ ],
+ "createOnly": [
+ "description",
+ "kafkaClusters",
+ "replicatorName",
+ "serviceExecutionRoleArn"
+ ]
+ },
"aws-native:msk:ServerlessCluster": {
"cf": "AWS::MSK::ServerlessCluster",
"inputs": {
@@ -50104,6 +50877,9 @@
},
"themeArn": {
"type": "string"
+ },
+ "validationStrategy": {
+ "$ref": "#/types/aws-native:quicksight:AnalysisValidationStrategy"
}
},
"outputs": {
@@ -50171,6 +50947,9 @@
},
"themeArn": {
"type": "string"
+ },
+ "validationStrategy": {
+ "$ref": "#/types/aws-native:quicksight:AnalysisValidationStrategy"
}
},
"autoNamingSpec": {
@@ -50192,7 +50971,8 @@
"parameters",
"sheets",
"sourceEntity",
- "status"
+ "status",
+ "validationStrategy"
]
},
"aws-native:quicksight:Dashboard": {
@@ -50234,6 +51014,9 @@
"themeArn": {
"type": "string"
},
+ "validationStrategy": {
+ "$ref": "#/types/aws-native:quicksight:DashboardValidationStrategy"
+ },
"versionDescription": {
"type": "string"
}
@@ -50289,6 +51072,9 @@
"themeArn": {
"type": "string"
},
+ "validationStrategy": {
+ "$ref": "#/types/aws-native:quicksight:DashboardValidationStrategy"
+ },
"version": {
"$ref": "#/types/aws-native:quicksight:DashboardVersion"
},
@@ -50317,6 +51103,7 @@
"parameters",
"sourceEntity",
"themeArn",
+ "validationStrategy",
"versionDescription"
]
},
@@ -50709,6 +51496,9 @@
"templateId": {
"type": "string"
},
+ "validationStrategy": {
+ "$ref": "#/types/aws-native:quicksight:TemplateValidationStrategy"
+ },
"versionDescription": {
"type": "string"
}
@@ -50752,6 +51542,9 @@
"type": "string",
"replaceOnChanges": true
},
+ "validationStrategy": {
+ "$ref": "#/types/aws-native:quicksight:TemplateValidationStrategy"
+ },
"version": {
"$ref": "#/types/aws-native:quicksight:TemplateVersion"
},
@@ -50777,6 +51570,7 @@
"definition",
"lastUpdatedTime",
"sourceEntity",
+ "validationStrategy",
"version",
"versionDescription"
]
@@ -57587,89 +58381,73 @@
"cf": "AWS::S3::Bucket",
"inputs": {
"accelerateConfiguration": {
- "$ref": "#/types/aws-native:s3:BucketAccelerateConfiguration",
- "description": "Configuration for the transfer acceleration state."
+ "$ref": "#/types/aws-native:s3:BucketAccelerateConfiguration"
},
"accessControl": {
- "$ref": "#/types/aws-native:s3:BucketAccessControl",
- "description": "A canned access control list (ACL) that grants predefined permissions to the bucket."
+ "type": "string"
},
"analyticsConfigurations": {
"type": "array",
"items": {
"$ref": "#/types/aws-native:s3:BucketAnalyticsConfiguration"
- },
- "description": "The configuration and any analyses for the analytics filter of an Amazon S3 bucket."
+ }
},
"bucketEncryption": {
"$ref": "#/types/aws-native:s3:BucketEncryption"
},
"bucketName": {
- "type": "string",
- "description": "A name for the bucket. If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the bucket name."
+ "type": "string"
},
"corsConfiguration": {
- "$ref": "#/types/aws-native:s3:BucketCorsConfiguration",
- "description": "Rules that define cross-origin resource sharing of objects in this bucket."
+ "$ref": "#/types/aws-native:s3:BucketCorsConfiguration"
},
"intelligentTieringConfigurations": {
"type": "array",
"items": {
"$ref": "#/types/aws-native:s3:BucketIntelligentTieringConfiguration"
- },
- "description": "Specifies the S3 Intelligent-Tiering configuration for an Amazon S3 bucket."
+ }
},
"inventoryConfigurations": {
"type": "array",
"items": {
"$ref": "#/types/aws-native:s3:BucketInventoryConfiguration"
- },
- "description": "The inventory configuration for an Amazon S3 bucket."
+ }
},
"lifecycleConfiguration": {
- "$ref": "#/types/aws-native:s3:BucketLifecycleConfiguration",
- "description": "Rules that define how Amazon S3 manages objects during their lifetime."
+ "$ref": "#/types/aws-native:s3:BucketLifecycleConfiguration"
},
"loggingConfiguration": {
- "$ref": "#/types/aws-native:s3:BucketLoggingConfiguration",
- "description": "Settings that define where logs are stored."
+ "$ref": "#/types/aws-native:s3:BucketLoggingConfiguration"
},
"metricsConfigurations": {
"type": "array",
"items": {
"$ref": "#/types/aws-native:s3:BucketMetricsConfiguration"
- },
- "description": "Settings that define a metrics configuration for the CloudWatch request metrics from the bucket."
+ }
},
"notificationConfiguration": {
- "$ref": "#/types/aws-native:s3:BucketNotificationConfiguration",
- "description": "Configuration that defines how Amazon S3 handles bucket notifications."
+ "$ref": "#/types/aws-native:s3:BucketNotificationConfiguration"
},
"objectLockConfiguration": {
- "$ref": "#/types/aws-native:s3:BucketObjectLockConfiguration",
- "description": "Places an Object Lock configuration on the specified bucket."
+ "$ref": "#/types/aws-native:s3:BucketObjectLockConfiguration"
},
"objectLockEnabled": {
- "type": "boolean",
- "description": "Indicates whether this bucket has an Object Lock configuration enabled."
+ "type": "boolean"
},
"ownershipControls": {
- "$ref": "#/types/aws-native:s3:BucketOwnershipControls",
- "description": "Specifies the container element for object ownership rules."
+ "$ref": "#/types/aws-native:s3:BucketOwnershipControls"
},
"publicAccessBlockConfiguration": {
"$ref": "#/types/aws-native:s3:BucketPublicAccessBlockConfiguration"
},
"replicationConfiguration": {
- "$ref": "#/types/aws-native:s3:BucketReplicationConfiguration",
- "description": "Configuration for replicating objects in an S3 bucket."
+ "$ref": "#/types/aws-native:s3:BucketReplicationConfiguration"
},
"tags": {
"type": "array",
"items": {
"$ref": "#/types/aws-native:s3:BucketTag"
- },
- "description": "An arbitrary set of tags (key-value pairs) for this S3 bucket."
+ }
},
"versioningConfiguration": {
"$ref": "#/types/aws-native:s3:BucketVersioningConfiguration"
@@ -57680,107 +58458,87 @@
},
"outputs": {
"accelerateConfiguration": {
- "$ref": "#/types/aws-native:s3:BucketAccelerateConfiguration",
- "description": "Configuration for the transfer acceleration state."
+ "$ref": "#/types/aws-native:s3:BucketAccelerateConfiguration"
},
"accessControl": {
- "$ref": "#/types/aws-native:s3:BucketAccessControl",
- "description": "A canned access control list (ACL) that grants predefined permissions to the bucket."
+ "type": "string"
},
"analyticsConfigurations": {
"type": "array",
"items": {
"$ref": "#/types/aws-native:s3:BucketAnalyticsConfiguration"
- },
- "description": "The configuration and any analyses for the analytics filter of an Amazon S3 bucket."
+ }
},
"arn": {
- "type": "string",
- "description": "The Amazon Resource Name (ARN) of the specified bucket."
+ "type": "string"
},
"bucketEncryption": {
"$ref": "#/types/aws-native:s3:BucketEncryption"
},
"bucketName": {
"type": "string",
- "description": "A name for the bucket. If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the bucket name.",
"replaceOnChanges": true
},
"corsConfiguration": {
- "$ref": "#/types/aws-native:s3:BucketCorsConfiguration",
- "description": "Rules that define cross-origin resource sharing of objects in this bucket."
+ "$ref": "#/types/aws-native:s3:BucketCorsConfiguration"
},
"domainName": {
- "type": "string",
- "description": "The IPv4 DNS name of the specified bucket."
+ "type": "string"
},
"dualStackDomainName": {
- "type": "string",
- "description": "The IPv6 DNS name of the specified bucket. For more information about dual-stack endpoints, see [Using Amazon S3 Dual-Stack Endpoints](https://docs.aws.amazon.com/AmazonS3/latest/dev/dual-stack-endpoints.html)."
+ "type": "string"
},
"intelligentTieringConfigurations": {
"type": "array",
"items": {
"$ref": "#/types/aws-native:s3:BucketIntelligentTieringConfiguration"
- },
- "description": "Specifies the S3 Intelligent-Tiering configuration for an Amazon S3 bucket."
+ }
},
"inventoryConfigurations": {
"type": "array",
"items": {
"$ref": "#/types/aws-native:s3:BucketInventoryConfiguration"
- },
- "description": "The inventory configuration for an Amazon S3 bucket."
+ }
},
"lifecycleConfiguration": {
- "$ref": "#/types/aws-native:s3:BucketLifecycleConfiguration",
- "description": "Rules that define how Amazon S3 manages objects during their lifetime."
+ "$ref": "#/types/aws-native:s3:BucketLifecycleConfiguration"
},
"loggingConfiguration": {
- "$ref": "#/types/aws-native:s3:BucketLoggingConfiguration",
- "description": "Settings that define where logs are stored."
+ "$ref": "#/types/aws-native:s3:BucketLoggingConfiguration"
},
"metricsConfigurations": {
"type": "array",
"items": {
"$ref": "#/types/aws-native:s3:BucketMetricsConfiguration"
- },
- "description": "Settings that define a metrics configuration for the CloudWatch request metrics from the bucket."
+ }
},
"notificationConfiguration": {
- "$ref": "#/types/aws-native:s3:BucketNotificationConfiguration",
- "description": "Configuration that defines how Amazon S3 handles bucket notifications."
+ "$ref": "#/types/aws-native:s3:BucketNotificationConfiguration"
},
"objectLockConfiguration": {
- "$ref": "#/types/aws-native:s3:BucketObjectLockConfiguration",
- "description": "Places an Object Lock configuration on the specified bucket."
+ "$ref": "#/types/aws-native:s3:BucketObjectLockConfiguration"
},
"objectLockEnabled": {
"type": "boolean",
- "description": "Indicates whether this bucket has an Object Lock configuration enabled.",
"replaceOnChanges": true
},
"ownershipControls": {
- "$ref": "#/types/aws-native:s3:BucketOwnershipControls",
- "description": "Specifies the container element for object ownership rules."
+ "$ref": "#/types/aws-native:s3:BucketOwnershipControls"
},
"publicAccessBlockConfiguration": {
"$ref": "#/types/aws-native:s3:BucketPublicAccessBlockConfiguration"
},
"regionalDomainName": {
- "type": "string",
- "description": "Returns the regional domain name of the specified bucket."
+ "type": "string"
},
"replicationConfiguration": {
- "$ref": "#/types/aws-native:s3:BucketReplicationConfiguration",
- "description": "Configuration for replicating objects in an S3 bucket."
+ "$ref": "#/types/aws-native:s3:BucketReplicationConfiguration"
},
"tags": {
"type": "array",
"items": {
"$ref": "#/types/aws-native:s3:BucketTag"
- },
- "description": "An arbitrary set of tags (key-value pairs) for this S3 bucket."
+ }
},
"versioningConfiguration": {
"$ref": "#/types/aws-native:s3:BucketVersioningConfiguration"
@@ -57789,26 +58547,16 @@
"$ref": "#/types/aws-native:s3:BucketWebsiteConfiguration"
},
"websiteUrl": {
- "type": "string",
- "description": "The Amazon S3 website endpoint for the specified bucket."
+ "type": "string"
}
},
"autoNamingSpec": {
- "sdkName": "bucketName",
- "minLength": 3,
- "maxLength": 63
+ "sdkName": "bucketName"
},
"createOnly": [
"bucketName",
"objectLockEnabled"
],
- "writeOnly": [
- "accessControl",
- "lifecycleConfiguration/Rules/*/NoncurrentVersionExpirationInDays",
- "lifecycleConfiguration/Rules/*/NoncurrentVersionTransition",
- "lifecycleConfiguration/Rules/*/Transition",
- "replicationConfiguration/Rules/*/Prefix"
- ],
"irreversibleNames": {
"websiteUrl": "WebsiteURL"
}
@@ -61957,6 +62705,10 @@
"aws-native:sns:Topic": {
"cf": "AWS::SNS::Topic",
"inputs": {
+ "archivePolicy": {
+ "$ref": "pulumi.json#/Any",
+ "description": "The archive policy determines the number of days Amazon SNS retains messages. You can set a retention period from 1 to 365 days."
+ },
"contentBasedDeduplication": {
"type": "boolean",
"description": "Enables content-based deduplication for FIFO topics. By default, ContentBasedDeduplication is set to false. If you create a FIFO topic and this attribute is false, you must specify a value for the MessageDeduplicationId parameter for the Publish action.\n\nWhen you set ContentBasedDeduplication to true, Amazon SNS uses a SHA-256 hash to generate the MessageDeduplicationId using the body of the message (but not the attributes of the message).\n\n(Optional) To override the generated value, you can specify a value for the the MessageDeduplicationId parameter for the Publish action.\n\n"
@@ -62004,6 +62756,10 @@
}
},
"outputs": {
+ "archivePolicy": {
+ "$ref": "pulumi.json#/Any",
+ "description": "The archive policy determines the number of days Amazon SNS retains messages. You can set a retention period from 1 to 365 days."
+ },
"contentBasedDeduplication": {
"type": "boolean",
"description": "Enables content-based deduplication for FIFO topics. By default, ContentBasedDeduplication is set to false. If you create a FIFO topic and this attribute is false, you must specify a value for the MessageDeduplicationId parameter for the Publish action.\n\nWhen you set ContentBasedDeduplication to true, Amazon SNS uses a SHA-256 hash to generate the MessageDeduplicationId using the body of the message (but not the attributes of the message).\n\n(Optional) To override the generated value, you can specify a value for the the MessageDeduplicationId parameter for the Publish action.\n\n"
@@ -68136,11 +68892,11 @@
"properties": {
"destinationArn": {
"type": "string",
- "description": "The Amazon Resource Name (ARN) of the CloudWatch Logs log group or Kinesis Data Firehose delivery stream to receive access logs. If you specify a Kinesis Data Firehose delivery stream, the stream name must begin with amazon-apigateway-. "
+ "description": "The Amazon Resource Name (ARN) of the CloudWatch Logs log group or Kinesis Data Firehose delivery stream to receive access logs. If you specify a Kinesis Data Firehose delivery stream, the stream name must begin with ``amazon-apigateway-``."
},
"format": {
"type": "string",
- "description": "A single line format of the access logs of data, as specified by selected $context variables. The format must include at least $context.requestId. "
+ "description": "A single line format of the access logs of data, as specified by selected $context variables. The format must include at least ``$context.requestId``."
}
}
},
@@ -68153,11 +68909,11 @@
},
"stageVariableOverrides": {
"$ref": "pulumi.json#/Any",
- "description": "Stage variables overridden for a canary release deployment, including new stage variables introduced in the canary. These stage variables are represented as a string-to-string map between stage variable names and their values. "
+ "description": "Stage variables overridden for a canary release deployment, including new stage variables introduced in the canary. These stage variables are represented as a string-to-string map between stage variable names and their values."
},
"useStageCache": {
"type": "boolean",
- "description": "Whether the canary deployment uses the stage cache or not."
+ "description": "A Boolean flag to indicate whether the canary deployment uses the stage cache or not."
}
}
},
@@ -68166,15 +68922,15 @@
"properties": {
"percentTraffic": {
"type": "number",
- "description": "The percentage (0-100) of traffic diverted to a canary deployment."
+ "description": "The percentage (0.0-100.0) of traffic routed to the canary deployment."
},
"stageVariableOverrides": {
"$ref": "pulumi.json#/Any",
- "description": "Stage variables overridden for a canary release deployment, including new stage variables introduced in the canary. These stage variables are represented as a string-to-string map between stage variable names and their values. Duplicates are not allowed."
+ "description": "A stage variable overrides used for the canary release deployment. They can override existing stage variables or add new stage variables for the canary release deployment. These stage variables are represented as a string-to-string map between stage variable names and their values."
},
"useStageCache": {
"type": "boolean",
- "description": "Whether the canary deployment uses the stage cache."
+ "description": "A Boolean flag to indicate whether the canary release deployment uses the stage cache or not."
}
}
},
@@ -68183,19 +68939,19 @@
"properties": {
"cacheDataEncrypted": {
"type": "boolean",
- "description": "Indicates whether the cached responses are encrypted"
+ "description": "Specifies whether the cached responses are encrypted."
},
"cacheTtlInSeconds": {
"type": "integer",
- "description": "The time-to-live (TTL) period, in seconds, that specifies how long API Gateway caches responses. "
+ "description": "Specifies the time to live (TTL), in seconds, for cached responses. The higher the TTL, the longer the response will be cached."
},
"cachingEnabled": {
"type": "boolean",
- "description": "Indicates whether responses are cached and returned for requests. You must enable a cache cluster on the stage to cache responses."
+ "description": "Specifies whether responses should be cached and returned for requests. A cache cluster must be enabled on the stage for responses to be cached."
},
"dataTraceEnabled": {
"type": "boolean",
- "description": "Indicates whether data trace logging is enabled for methods in the stage. API Gateway pushes these logs to Amazon CloudWatch Logs. "
+ "description": "Specifies whether data trace logging is enabled for this method, which affects the log entries pushed to Amazon CloudWatch Logs. This can be useful to troubleshoot APIs, but can result in logging sensitive data. We recommend that you don't enable this option for production APIs."
},
"httpMethod": {
"type": "string",
@@ -68203,23 +68959,23 @@
},
"loggingLevel": {
"type": "string",
- "description": "The logging level for this method. For valid values, see the loggingLevel property of the Stage resource in the Amazon API Gateway API Reference. "
+ "description": "Specifies the logging level for this method, which affects the log entries pushed to Amazon CloudWatch Logs. Valid values are ``OFF``, ``ERROR``, and ``INFO``. Choose ``ERROR`` to write only error-level entries to CloudWatch Logs, or choose ``INFO`` to include all ``ERROR`` events as well as extra informational events."
},
"metricsEnabled": {
"type": "boolean",
- "description": "Indicates whether Amazon CloudWatch metrics are enabled for methods in the stage."
+ "description": "Specifies whether Amazon CloudWatch metrics are enabled for this method."
},
"resourcePath": {
"type": "string",
- "description": "The resource path for this method. Forward slashes (/) are encoded as ~1 and the initial slash must include a forward slash. "
+ "description": "The resource path for this method. Forward slashes (``/``) are encoded as ``~1`` and the initial slash must include a forward slash. For example, the path value ``/resource/subresource`` must be encoded as ``/~1resource~1subresource``. To specify the root path, use only a slash (``/``)."
},
"throttlingBurstLimit": {
"type": "integer",
- "description": "The number of burst requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account."
+ "description": "Specifies the throttling burst limit."
},
"throttlingRateLimit": {
"type": "number",
- "description": "The number of steady-state requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account."
+ "description": "Specifies the throttling rate limit."
}
}
},
@@ -68232,23 +68988,23 @@
},
"cacheClusterEnabled": {
"type": "boolean",
- "description": "Indicates whether cache clustering is enabled for the stage."
+ "description": "Specifies whether a cache cluster is enabled for the stage."
},
"cacheClusterSize": {
"type": "string",
- "description": "The size of the stage's cache cluster."
+ "description": "The size of the stage's cache cluster. For more information, see [cacheClusterSize](https://docs.aws.amazon.com/apigateway/latest/api/API_CreateStage.html#apigw-CreateStage-request-cacheClusterSize) in the *API Gateway API Reference*."
},
"cacheDataEncrypted": {
"type": "boolean",
- "description": "The time-to-live (TTL) period, in seconds, that specifies how long API Gateway caches responses. "
+ "description": "Indicates whether the cached responses are encrypted."
},
"cacheTtlInSeconds": {
"type": "integer",
- "description": "The time-to-live (TTL) period, in seconds, that specifies how long API Gateway caches responses. "
+ "description": "The time-to-live (TTL) period, in seconds, that specifies how long API Gateway caches responses."
},
"cachingEnabled": {
"type": "boolean",
- "description": "Indicates whether responses are cached and returned for requests. You must enable a cache cluster on the stage to cache responses."
+ "description": "Indicates whether responses are cached and returned for requests. You must enable a cache cluster on the stage to cache responses. For more information, see [Enable API Gateway Caching in a Stage to Enhance API Performance](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-caching.html) in the *API Gateway Developer Guide*."
},
"canarySetting": {
"$ref": "#/types/aws-native:apigateway:DeploymentCanarySetting",
@@ -68256,11 +69012,11 @@
},
"clientCertificateId": {
"type": "string",
- "description": "The identifier of the client certificate that API Gateway uses to call your integration endpoints in the stage. "
+ "description": "The identifier of the client certificate that API Gateway uses to call your integration endpoints in the stage."
},
"dataTraceEnabled": {
"type": "boolean",
- "description": "Indicates whether data trace logging is enabled for methods in the stage. API Gateway pushes these logs to Amazon CloudWatch Logs. "
+ "description": "Indicates whether data trace logging is enabled for methods in the stage. API Gateway pushes these logs to Amazon CloudWatch Logs."
},
"description": {
"type": "string",
@@ -68272,7 +69028,7 @@
},
"loggingLevel": {
"type": "string",
- "description": "The logging level for this method. For valid values, see the loggingLevel property of the Stage resource in the Amazon API Gateway API Reference. "
+ "description": "The logging level for this method. For valid values, see the ``loggingLevel`` property of the [MethodSetting](https://docs.aws.amazon.com/apigateway/latest/api/API_MethodSetting.html) resource in the *Amazon API Gateway API Reference*."
},
"methodSettings": {
"type": "array",
@@ -68294,19 +69050,19 @@
},
"throttlingBurstLimit": {
"type": "integer",
- "description": "The number of burst requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account."
+ "description": "The target request burst rate limit. This allows more requests through for a period of time than the target rate limit. For more information, see [Manage API Request Throttling](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-request-throttling.html) in the *API Gateway Developer Guide*."
},
"throttlingRateLimit": {
"type": "number",
- "description": "The number of steady-state requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account."
+ "description": "The target request steady-state rate limit. For more information, see [Manage API Request Throttling](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-request-throttling.html) in the *API Gateway Developer Guide*."
},
"tracingEnabled": {
"type": "boolean",
- "description": "Specifies whether active tracing with X-ray is enabled for this stage."
+ "description": "Specifies whether active tracing with X-ray is enabled for this stage.\n For more information, see [Trace API Gateway API Execution with X-Ray](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-xray.html) in the *API Gateway Developer Guide*."
},
"variables": {
"$ref": "pulumi.json#/Any",
- "description": "A map that defines the stage variables. Variable names must consist of alphanumeric characters, and the values must match the following regular expression: [A-Za-z0-9-._~:/?#\u0026=,]+. "
+ "description": "A map that defines the stage variables. Variable names must consist of alphanumeric characters, and the values must match the following regular expression: ``[A-Za-z0-9-._~:/?#\u0026=,]+``."
}
}
},
@@ -68328,23 +69084,23 @@
"properties": {
"method": {
"type": "string",
- "description": "The HTTP verb of a method."
+ "description": "The HTTP verb of a method. It is a valid field for the API entity types of ``METHOD``, ``PATH_PARAMETER``, ``QUERY_PARAMETER``, ``REQUEST_HEADER``, ``REQUEST_BODY``, ``RESPONSE``, ``RESPONSE_HEADER``, and ``RESPONSE_BODY``. The default value is ``*`` for any method. When an applicable child entity inherits the content of an entity of the same type with more general specifications of the other ``location`` attributes, the child entity's ``method`` attribute must match that of the parent entity exactly."
},
"name": {
"type": "string",
- "description": "The name of the targeted API entity."
+ "description": "The name of the targeted API entity. It is a valid and required field for the API entity types of ``AUTHORIZER``, ``MODEL``, ``PATH_PARAMETER``, ``QUERY_PARAMETER``, ``REQUEST_HEADER``, ``REQUEST_BODY`` and ``RESPONSE_HEADER``. It is an invalid field for any other entity type."
},
"path": {
"type": "string",
- "description": "The URL path of the target."
+ "description": "The URL path of the target. It is a valid field for the API entity types of ``RESOURCE``, ``METHOD``, ``PATH_PARAMETER``, ``QUERY_PARAMETER``, ``REQUEST_HEADER``, ``REQUEST_BODY``, ``RESPONSE``, ``RESPONSE_HEADER``, and ``RESPONSE_BODY``. The default value is ``/`` for the root resource. When an applicable child entity inherits the content of another entity of the same type with more general specifications of the other ``location`` attributes, the child entity's ``path`` attribute must match that of the parent entity as a prefix."
},
"statusCode": {
"type": "string",
- "description": "The HTTP status code of a response."
+ "description": "The HTTP status code of a response. It is a valid field for the API entity types of ``RESPONSE``, ``RESPONSE_HEADER``, and ``RESPONSE_BODY``. The default value is ``*`` for any status code. When an applicable child entity inherits the content of an entity of the same type with more general specifications of the other ``location`` attributes, the child entity's ``statusCode`` attribute must match that of the parent entity exactly."
},
"type": {
"$ref": "#/types/aws-native:apigateway:DocumentationPartLocationType",
- "description": "The type of API entity that the documentation content applies to."
+ "description": "The type of API entity to which the documentation content applies. Valid values are ``API``, ``AUTHORIZER``, ``MODEL``, ``RESOURCE``, ``METHOD``, ``PATH_PARAMETER``, ``QUERY_PARAMETER``, ``REQUEST_HEADER``, ``REQUEST_BODY``, ``RESPONSE``, ``RESPONSE_HEADER``, and ``RESPONSE_BODY``. Content inheritance does not apply to any entity of the ``API``, ``AUTHORIZER``, ``METHOD``, ``MODEL``, ``REQUEST_BODY``, or ``RESOURCE`` type."
}
}
},
@@ -68395,62 +69151,62 @@
"items": {
"type": "string"
},
- "description": "A list of request parameters whose values API Gateway caches."
+ "description": "A list of request parameters whose values API Gateway caches. To be valid values for ``cacheKeyParameters``, these parameters must also be specified for Method ``requestParameters``."
},
"cacheNamespace": {
"type": "string",
- "description": "An API-specific tag group of related cached parameters."
+ "description": "Specifies a group of related cached parameters. By default, API Gateway uses the resource ID as the ``cacheNamespace``. You can specify the same ``cacheNamespace`` across resources to return the same cached data for requests to different resources."
},
"connectionId": {
"type": "string",
- "description": "The ID of the VpcLink used for the integration when connectionType=VPC_LINK, otherwise undefined."
+ "description": "The ID of the VpcLink used for the integration when ``connectionType=VPC_LINK`` and undefined, otherwise."
},
"connectionType": {
"$ref": "#/types/aws-native:apigateway:MethodIntegrationConnectionType",
- "description": "The type of the network connection to the integration endpoint."
+ "description": "The type of the network connection to the integration endpoint. The valid value is ``INTERNET`` for connections through the public routable internet or ``VPC_LINK`` for private connections between API Gateway and a network load balancer in a VPC. The default value is ``INTERNET``."
},
"contentHandling": {
"$ref": "#/types/aws-native:apigateway:MethodIntegrationContentHandling",
- "description": "Specifies how to handle request payload content type conversions."
+ "description": "Specifies how to handle request payload content type conversions. Supported values are ``CONVERT_TO_BINARY`` and ``CONVERT_TO_TEXT``, with the following behaviors:\n If this property is not defined, the request payload will be passed through from the method request to integration request without modification, provided that the ``passthroughBehavior`` is configured to support payload pass-through."
},
"credentials": {
"type": "string",
- "description": "The credentials that are required for the integration."
+ "description": "Specifies the credentials required for the integration, if any. For AWS integrations, three options are available. To specify an IAM Role for API Gateway to assume, use the role's Amazon Resource Name (ARN). To require that the caller's identity be passed through from the request, specify the string ``arn:aws:iam::\\*:user/\\*``. To use resource-based permissions on supported AWS services, specify null."
},
"integrationHttpMethod": {
"type": "string",
- "description": "The integration's HTTP method type."
+ "description": "Specifies the integration's HTTP method type. For the Type property, if you specify ``MOCK``, this property is optional. For Lambda integrations, you must set the integration method to ``POST``. For all other types, you must specify this property."
},
"integrationResponses": {
"type": "array",
"items": {
"$ref": "#/types/aws-native:apigateway:MethodIntegrationResponse"
},
- "description": "The response that API Gateway provides after a method's backend completes processing a request."
+ "description": "Specifies the integration's responses."
},
"passthroughBehavior": {
"$ref": "#/types/aws-native:apigateway:MethodIntegrationPassthroughBehavior",
- "description": "Indicates when API Gateway passes requests to the targeted backend."
+ "description": "Specifies how the method request body of an unmapped content type will be passed through the integration request to the back end without transformation. A content type is unmapped if no mapping template is defined in the integration or the content type does not match any of the mapped content types, as specified in ``requestTemplates``. The valid value is one of the following: ``WHEN_NO_MATCH``: passes the method request body through the integration request to the back end without transformation when the method request content type does not match any content type associated with the mapping templates defined in the integration request. ``WHEN_NO_TEMPLATES``: passes the method request body through the integration request to the back end without transformation when no mapping template is defined in the integration request. If a template is defined when this option is selected, the method request of an unmapped content-type will be rejected with an HTTP 415 Unsupported Media Type response. ``NEVER``: rejects the method request with an HTTP 415 Unsupported Media Type response when either the method request content type does not match any content type associated with the mapping templates defined in the integration request or no mapping template is defined in the integration request."
},
"requestParameters": {
"$ref": "pulumi.json#/Any",
- "description": "The request parameters that API Gateway sends with the backend request."
+ "description": "A key-value map specifying request parameters that are passed from the method request to the back end. The key is an integration request parameter name and the associated value is a method request parameter value or static value that must be enclosed within single quotes and pre-encoded as required by the back end. The method request parameter value must match the pattern of ``method.request.{location}.{name}``, where ``location`` is ``querystring``, ``path``, or ``header`` and ``name`` must be a valid and unique method request parameter name."
},
"requestTemplates": {
"$ref": "pulumi.json#/Any",
- "description": "A map of Apache Velocity templates that are applied on the request payload."
+ "description": "Represents a map of Velocity templates that are applied on the request payload based on the value of the Content-Type header sent by the client. The content type value is the key in this map, and the template (as a String) is the value."
},
"timeoutInMillis": {
"type": "integer",
- "description": "Custom timeout between 50 and 29,000 milliseconds."
+ "description": "Custom timeout between 50 and 29,000 milliseconds. The default value is 29,000 milliseconds or 29 seconds."
},
"type": {
"$ref": "#/types/aws-native:apigateway:MethodIntegrationType",
- "description": "The type of backend that your method is running."
+ "description": "Specifies an API method integration type. The valid value is one of the following:\n For the HTTP and HTTP proxy integrations, each integration can specify a protocol (``http/https``), port and path. Standard 80 and 443 ports are supported as well as custom ports above 1024. An HTTP or HTTP proxy integration with a ``connectionType`` of ``VPC_LINK`` is referred to as a private integration and uses a VpcLink to connect API Gateway to a network load balancer of a VPC."
},
"uri": {
"type": "string",
- "description": "The Uniform Resource Identifier (URI) for the integration."
+ "description": "Specifies Uniform Resource Identifier (URI) of the integration endpoint.\n For ``HTTP`` or ``HTTP_PROXY`` integrations, the URI must be a fully formed, encoded HTTP(S) URL according to the RFC-3986 specification for standard integrations. If ``connectionType`` is ``VPC_LINK`` specify the Network Load Balancer DNS name. For ``AWS`` or ``AWS_PROXY`` integrations, the URI is of the form ``arn:aws:apigateway:{region}:{subdomain.service|service}:path|action/{service_api}``. Here, {Region} is the API Gateway region (e.g., us-east-1); {service} is the name of the integrated AWS service (e.g., s3); and {subdomain} is a designated subdomain supported by certain AWS service for fast host-name lookup. action can be used for an AWS service action-based API, using an Action={name}\u0026{p1}={v1}\u0026p2={v2}... query string. The ensuing {service_api} refers to a supported action {name} plus any required input parameters. Alternatively, path can be used for an AWS service path-based API. The ensuing service_api refers to the path to an AWS service resource, including the region of the integrated AWS service, if applicable. For example, for integration with the S3 API of GetObject, the uri can be either ``arn:aws:apigateway:us-west-2:s3:action/GetObject\u0026Bucket={bucket}\u0026Key={key}`` or ``arn:aws:apigateway:us-west-2:s3:path/{bucket}/{key}``"
}
}
},
@@ -68468,23 +69224,23 @@
"properties": {
"contentHandling": {
"$ref": "#/types/aws-native:apigateway:MethodIntegrationResponseContentHandling",
- "description": "Specifies how to handle request payload content type conversions."
+ "description": "Specifies how to handle response payload content type conversions. Supported values are ``CONVERT_TO_BINARY`` and ``CONVERT_TO_TEXT``, with the following behaviors:\n If this property is not defined, the response payload will be passed through from the integration response to the method response without modification."
},
"responseParameters": {
"$ref": "pulumi.json#/Any",
- "description": "The response parameters from the backend response that API Gateway sends to the method response."
+ "description": "A key-value map specifying response parameters that are passed to the method response from the back end. The key is a method response header parameter name and the mapped value is an integration response header value, a static value enclosed within a pair of single quotes, or a JSON expression from the integration response body. The mapping key must match the pattern of ``method.response.header.{name}``, where ``name`` is a valid and unique header name. The mapped non-static value must match the pattern of ``integration.response.header.{name}`` or ``integration.response.body.{JSON-expression}``, where ``name`` is a valid and unique response header name and ``JSON-expression`` is a valid JSON expression without the ``$`` prefix."
},
"responseTemplates": {
"$ref": "pulumi.json#/Any",
- "description": "The templates that are used to transform the integration response body. Specify templates as key-value pairs (string-to-string mappings), with a content type as the key and a template as the value."
+ "description": "Specifies the templates used to transform the integration response body. Response templates are represented as a key/value map, with a content-type as the key and a template as the value."
},
"selectionPattern": {
"type": "string",
- "description": "A regular expression that specifies which error strings or status codes from the backend map to the integration response."
+ "description": "Specifies the regular expression (regex) pattern used to choose an integration response based on the response from the back end. For example, if the success response returns nothing and the error response returns some string, you could use the ``.+`` regex to match error response. However, make sure that the error response does not contain any newline (``\\n``) character in such cases. If the back end is an LAMlong function, the LAMlong function error header is matched. For all other HTTP and AWS back ends, the HTTP status code is matched."
},
"statusCode": {
"type": "string",
- "description": "The status code that API Gateway uses to map the integration response to a MethodResponse status code."
+ "description": "Specifies the status code that is used to map the integration response to an existing MethodResponse."
}
}
},
@@ -68499,15 +69255,15 @@
"properties": {
"responseModels": {
"$ref": "pulumi.json#/Any",
- "description": "The resources used for the response's content type. Specify response models as key-value pairs (string-to-string maps), with a content type as the key and a Model resource name as the value."
+ "description": "Specifies the Model resources used for the response's content-type. Response models are represented as a key/value map, with a content-type as the key and a Model name as the value."
},
"responseParameters": {
"$ref": "pulumi.json#/Any",
- "description": "Response parameters that API Gateway sends to the client that called a method. Specify response parameters as key-value pairs (string-to-Boolean maps), with a destination as the key and a Boolean as the value."
+ "description": "A key-value map specifying required or optional response parameters that API Gateway can send back to the caller. A key defines a method response header and the value specifies whether the associated method response header is required or not. The expression of the key must match the pattern ``method.response.header.{name}``, where ``name`` is a valid and unique header name. API Gateway passes certain integration response data to the method response headers specified here according to the mapping you prescribe in the API's IntegrationResponse. The integration response data that can be mapped include an integration response header expressed in ``integration.response.header.{name}``, a static value enclosed within a pair of single quotes (e.g., ``'application/json'``), or a JSON expression from the back-end response payload in the form of ``integration.response.body.{JSON-expression}``, where ``JSON-expression`` is a valid JSON expression without the ``$`` prefix.)"
},
"statusCode": {
"type": "string",
- "description": "The method response's status code, which you map to an IntegrationResponse."
+ "description": "The method response's status code."
}
}
},
@@ -68518,13 +69274,15 @@
"type": "array",
"items": {
"type": "string"
- }
+ },
+ "description": "A list of endpoint types of an API (RestApi) or its custom domain name (DomainName). For an edge-optimized API and its custom domain name, the endpoint type is ``\"EDGE\"``. For a regional API and its custom domain name, the endpoint type is ``REGIONAL``. For a private API, the endpoint type is ``PRIVATE``."
},
"vpcEndpointIds": {
"type": "array",
"items": {
"type": "string"
- }
+ },
+ "description": "A list of VpcEndpointIds of an API (RestApi) against which to create Route53 ALIASes. It is only supported for ``PRIVATE`` endpoint type."
}
}
},
@@ -68532,16 +69290,20 @@
"type": "object",
"properties": {
"bucket": {
- "type": "string"
+ "type": "string",
+ "description": "The name of the S3 bucket where the OpenAPI file is stored."
},
"eTag": {
- "type": "string"
+ "type": "string",
+ "description": "The Amazon S3 ETag (a file checksum) of the OpenAPI file. If you don't specify a value, API Gateway skips ETag validation of your OpenAPI file."
},
"key": {
- "type": "string"
+ "type": "string",
+ "description": "The file name of the OpenAPI file (Amazon S3 object name)."
},
"version": {
- "type": "string"
+ "type": "string",
+ "description": "For versioning-enabled buckets, a specific version of the OpenAPI file."
}
}
},
@@ -68561,11 +69323,11 @@
"properties": {
"destinationArn": {
"type": "string",
- "description": "The Amazon Resource Name (ARN) of the CloudWatch Logs log group or Kinesis Data Firehose delivery stream to receive access logs. If you specify a Kinesis Data Firehose delivery stream, the stream name must begin with amazon-apigateway-. This parameter is required to enable access logging."
+ "description": "The Amazon Resource Name (ARN) of the CloudWatch Logs log group or Kinesis Data Firehose delivery stream to receive access logs. If you specify a Kinesis Data Firehose delivery stream, the stream name must begin with ``amazon-apigateway-``. This parameter is required to enable access logging."
},
"format": {
"type": "string",
- "description": "A single line format of the access logs of data, as specified by selected $context variables (https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-mapping-template-reference.html#context-variable-reference). The format must include at least $context.requestId. This parameter is required to enable access logging."
+ "description": "A single line format of the access logs of data, as specified by selected [$context variables](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-mapping-template-reference.html#context-variable-reference). The format must include at least ``$context.requestId``. This parameter is required to enable access logging."
}
}
},
@@ -68574,11 +69336,11 @@
"properties": {
"deploymentId": {
"type": "string",
- "description": "The identifier of the deployment that the stage points to."
+ "description": "The ID of the canary deployment."
},
"percentTraffic": {
"type": "number",
- "description": "The percentage (0-100) of traffic diverted to a canary deployment."
+ "description": "The percent (0-100) of traffic diverted to a canary deployment."
},
"stageVariableOverrides": {
"$ref": "pulumi.json#/Any",
@@ -68586,7 +69348,7 @@
},
"useStageCache": {
"type": "boolean",
- "description": "Whether the canary deployment uses the stage cache or not."
+ "description": "A Boolean flag to indicate whether the canary deployment uses the stage cache or not."
}
}
},
@@ -68595,43 +69357,43 @@
"properties": {
"cacheDataEncrypted": {
"type": "boolean",
- "description": "Indicates whether the cached responses are encrypted."
+ "description": "Specifies whether the cached responses are encrypted."
},
"cacheTtlInSeconds": {
"type": "integer",
- "description": "The time-to-live (TTL) period, in seconds, that specifies how long API Gateway caches responses."
+ "description": "Specifies the time to live (TTL), in seconds, for cached responses. The higher the TTL, the longer the response will be cached."
},
"cachingEnabled": {
"type": "boolean",
- "description": "Indicates whether responses are cached and returned for requests. You must enable a cache cluster on the stage to cache responses."
+ "description": "Specifies whether responses should be cached and returned for requests. A cache cluster must be enabled on the stage for responses to be cached."
},
"dataTraceEnabled": {
"type": "boolean",
- "description": "Indicates whether data trace logging is enabled for methods in the stage. API Gateway pushes these logs to Amazon CloudWatch Logs."
+ "description": "Specifies whether data trace logging is enabled for this method, which affects the log entries pushed to Amazon CloudWatch Logs. This can be useful to troubleshoot APIs, but can result in logging sensitive data. We recommend that you don't enable this option for production APIs."
},
"httpMethod": {
"type": "string",
- "description": "The HTTP method. You can use an asterisk (*) as a wildcard to apply method settings to multiple methods."
+ "description": "The HTTP method. To apply settings to multiple resources and methods, specify an asterisk (``*``) for the ``HttpMethod`` and ``/*`` for the ``ResourcePath``. This parameter is required when you specify a ``MethodSetting``."
},
"loggingLevel": {
"type": "string",
- "description": "The logging level for this method. For valid values, see the loggingLevel property of the Stage (https://docs.aws.amazon.com/apigateway/api-reference/resource/stage/#loggingLevel) resource in the Amazon API Gateway API Reference."
+ "description": "Specifies the logging level for this method, which affects the log entries pushed to Amazon CloudWatch Logs. Valid values are ``OFF``, ``ERROR``, and ``INFO``. Choose ``ERROR`` to write only error-level entries to CloudWatch Logs, or choose ``INFO`` to include all ``ERROR`` events as well as extra informational events."
},
"metricsEnabled": {
"type": "boolean",
- "description": "Indicates whether Amazon CloudWatch metrics are enabled for methods in the stage."
+ "description": "Specifies whether Amazon CloudWatch metrics are enabled for this method."
},
"resourcePath": {
"type": "string",
- "description": "The resource path for this method. Forward slashes (/) are encoded as ~1 and the initial slash must include a forward slash. For example, the path value /resource/subresource must be encoded as /~1resource~1subresource. To specify the root path, use only a slash (/). You can use an asterisk (*) as a wildcard to apply method settings to multiple methods."
+ "description": "The resource path for this method. Forward slashes (``/``) are encoded as ``~1`` and the initial slash must include a forward slash. For example, the path value ``/resource/subresource`` must be encoded as ``/~1resource~1subresource``. To specify the root path, use only a slash (``/``). To apply settings to multiple resources and methods, specify an asterisk (``*``) for the ``HttpMethod`` and ``/*`` for the ``ResourcePath``. This parameter is required when you specify a ``MethodSetting``."
},
"throttlingBurstLimit": {
"type": "integer",
- "description": "The number of burst requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account."
+ "description": "Specifies the throttling burst limit."
},
"throttlingRateLimit": {
"type": "number",
- "description": "The number of steady-state requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account."
+ "description": "Specifies the throttling rate limit."
}
}
},
@@ -68839,6 +69601,19 @@
"aws-native:apigatewayv2:RouteResponseRouteParameters": {
"type": "object"
},
+ "aws-native:appconfig:ApplicationTags": {
+ "type": "object",
+ "properties": {
+ "key": {
+ "type": "string",
+ "description": "The key-value string map. The valid character set is [a-zA-Z1-9+-=._:/]. The tag key can be up to 128 characters and must not start with aws:."
+ },
+ "value": {
+ "type": "string",
+ "description": "The tag value can be up to 256 characters."
+ }
+ }
+ },
"aws-native:appconfig:ExtensionAssociationTag": {
"type": "object",
"properties": {
@@ -71646,6 +72421,44 @@
}
}
},
+ "aws-native:appsync:FunctionConfigurationAppSyncRuntime": {
+ "type": "object",
+ "properties": {
+ "name": {
+ "type": "string",
+ "description": "The name of the runtime to use. Currently, the only allowed value is APPSYNC_JS."
+ },
+ "runtimeVersion": {
+ "type": "string",
+ "description": "The version of the runtime to use. Currently, the only allowed version is 1.0.0."
+ }
+ }
+ },
+ "aws-native:appsync:FunctionConfigurationLambdaConflictHandlerConfig": {
+ "type": "object",
+ "properties": {
+ "lambdaConflictHandlerArn": {
+ "type": "string",
+ "description": "The Amazon Resource Name (ARN) for the Lambda function to use as the Conflict Handler."
+ }
+ }
+ },
+ "aws-native:appsync:FunctionConfigurationSyncConfig": {
+ "type": "object",
+ "properties": {
+ "conflictDetection": {
+ "type": "string",
+ "description": "The Conflict Detection strategy to use."
+ },
+ "conflictHandler": {
+ "type": "string",
+ "description": "The Conflict Resolution strategy to perform in the event of a conflict."
+ },
+ "lambdaConflictHandlerConfig": {
+ "$ref": "#/types/aws-native:appsync:FunctionConfigurationLambdaConflictHandlerConfig"
+ }
+ }
+ },
"aws-native:appsync:SourceApiAssociationConfig": {
"type": "object",
"properties": {
@@ -76057,19 +76870,6 @@
}
}
},
- "aws-native:cognito:IdentityPoolTag": {
- "type": "object",
- "properties": {
- "key": {
- "type": "string",
- "description": "The key name of the tag. You can specify a value that is 1 to 128 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -."
- },
- "value": {
- "type": "string",
- "description": "The value for the tag. You can specify a value that is 0 to 256 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -."
- }
- }
- },
"aws-native:cognito:LogDeliveryConfigurationCloudWatchLogsConfiguration": {
"type": "object",
"properties": {
@@ -76092,6 +76892,261 @@
}
}
},
+ "aws-native:cognito:UserPoolAccountRecoverySetting": {
+ "type": "object",
+ "properties": {
+ "recoveryMechanisms": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:cognito:UserPoolRecoveryOption"
+ }
+ }
+ }
+ },
+ "aws-native:cognito:UserPoolAddOns": {
+ "type": "object",
+ "properties": {
+ "advancedSecurityMode": {
+ "type": "string"
+ }
+ }
+ },
+ "aws-native:cognito:UserPoolAdminCreateUserConfig": {
+ "type": "object",
+ "properties": {
+ "allowAdminCreateUserOnly": {
+ "type": "boolean"
+ },
+ "inviteMessageTemplate": {
+ "$ref": "#/types/aws-native:cognito:UserPoolInviteMessageTemplate"
+ },
+ "unusedAccountValidityDays": {
+ "type": "integer"
+ }
+ }
+ },
+ "aws-native:cognito:UserPoolCustomEmailSender": {
+ "type": "object",
+ "properties": {
+ "lambdaArn": {
+ "type": "string"
+ },
+ "lambdaVersion": {
+ "type": "string"
+ }
+ }
+ },
+ "aws-native:cognito:UserPoolCustomSmsSender": {
+ "type": "object",
+ "properties": {
+ "lambdaArn": {
+ "type": "string"
+ },
+ "lambdaVersion": {
+ "type": "string"
+ }
+ }
+ },
+ "aws-native:cognito:UserPoolDeviceConfiguration": {
+ "type": "object",
+ "properties": {
+ "challengeRequiredOnNewDevice": {
+ "type": "boolean"
+ },
+ "deviceOnlyRememberedOnUserPrompt": {
+ "type": "boolean"
+ }
+ }
+ },
+ "aws-native:cognito:UserPoolEmailConfiguration": {
+ "type": "object",
+ "properties": {
+ "configurationSet": {
+ "type": "string"
+ },
+ "emailSendingAccount": {
+ "type": "string"
+ },
+ "from": {
+ "type": "string"
+ },
+ "replyToEmailAddress": {
+ "type": "string"
+ },
+ "sourceArn": {
+ "type": "string"
+ }
+ }
+ },
+ "aws-native:cognito:UserPoolInviteMessageTemplate": {
+ "type": "object",
+ "properties": {
+ "emailMessage": {
+ "type": "string"
+ },
+ "emailSubject": {
+ "type": "string"
+ },
+ "smsMessage": {
+ "type": "string"
+ }
+ },
+ "irreversibleNames": {
+ "smsMessage": "SMSMessage"
+ }
+ },
+ "aws-native:cognito:UserPoolLambdaConfig": {
+ "type": "object",
+ "properties": {
+ "createAuthChallenge": {
+ "type": "string"
+ },
+ "customEmailSender": {
+ "$ref": "#/types/aws-native:cognito:UserPoolCustomEmailSender"
+ },
+ "customMessage": {
+ "type": "string"
+ },
+ "customSmsSender": {
+ "$ref": "#/types/aws-native:cognito:UserPoolCustomSmsSender"
+ },
+ "defineAuthChallenge": {
+ "type": "string"
+ },
+ "kmsKeyId": {
+ "type": "string"
+ },
+ "postAuthentication": {
+ "type": "string"
+ },
+ "postConfirmation": {
+ "type": "string"
+ },
+ "preAuthentication": {
+ "type": "string"
+ },
+ "preSignUp": {
+ "type": "string"
+ },
+ "preTokenGeneration": {
+ "type": "string"
+ },
+ "userMigration": {
+ "type": "string"
+ },
+ "verifyAuthChallengeResponse": {
+ "type": "string"
+ }
+ },
+ "irreversibleNames": {
+ "customSmsSender": "CustomSMSSender",
+ "kmsKeyId": "KMSKeyID"
+ }
+ },
+ "aws-native:cognito:UserPoolNumberAttributeConstraints": {
+ "type": "object",
+ "properties": {
+ "maxValue": {
+ "type": "string"
+ },
+ "minValue": {
+ "type": "string"
+ }
+ }
+ },
+ "aws-native:cognito:UserPoolPasswordPolicy": {
+ "type": "object",
+ "properties": {
+ "minimumLength": {
+ "type": "integer"
+ },
+ "requireLowercase": {
+ "type": "boolean"
+ },
+ "requireNumbers": {
+ "type": "boolean"
+ },
+ "requireSymbols": {
+ "type": "boolean"
+ },
+ "requireUppercase": {
+ "type": "boolean"
+ },
+ "temporaryPasswordValidityDays": {
+ "type": "integer"
+ }
+ }
+ },
+ "aws-native:cognito:UserPoolPolicies": {
+ "type": "object",
+ "properties": {
+ "passwordPolicy": {
+ "$ref": "#/types/aws-native:cognito:UserPoolPasswordPolicy"
+ }
+ }
+ },
+ "aws-native:cognito:UserPoolRecoveryOption": {
+ "type": "object",
+ "properties": {
+ "name": {
+ "type": "string"
+ },
+ "priority": {
+ "type": "integer"
+ }
+ }
+ },
+ "aws-native:cognito:UserPoolSchemaAttribute": {
+ "type": "object",
+ "properties": {
+ "attributeDataType": {
+ "type": "string"
+ },
+ "developerOnlyAttribute": {
+ "type": "boolean"
+ },
+ "mutable": {
+ "type": "boolean"
+ },
+ "name": {
+ "type": "string"
+ },
+ "numberAttributeConstraints": {
+ "$ref": "#/types/aws-native:cognito:UserPoolNumberAttributeConstraints"
+ },
+ "required": {
+ "type": "boolean"
+ },
+ "stringAttributeConstraints": {
+ "$ref": "#/types/aws-native:cognito:UserPoolStringAttributeConstraints"
+ }
+ }
+ },
+ "aws-native:cognito:UserPoolSmsConfiguration": {
+ "type": "object",
+ "properties": {
+ "externalId": {
+ "type": "string"
+ },
+ "snsCallerArn": {
+ "type": "string"
+ },
+ "snsRegion": {
+ "type": "string"
+ }
+ }
+ },
+ "aws-native:cognito:UserPoolStringAttributeConstraints": {
+ "type": "object",
+ "properties": {
+ "maxLength": {
+ "type": "string"
+ },
+ "minLength": {
+ "type": "string"
+ }
+ }
+ },
"aws-native:cognito:UserPoolUserAttributeType": {
"type": "object",
"properties": {
@@ -76103,6 +77158,48 @@
}
}
},
+ "aws-native:cognito:UserPoolUserAttributeUpdateSettings": {
+ "type": "object",
+ "properties": {
+ "attributesRequireVerificationBeforeUpdate": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "aws-native:cognito:UserPoolUsernameConfiguration": {
+ "type": "object",
+ "properties": {
+ "caseSensitive": {
+ "type": "boolean"
+ }
+ }
+ },
+ "aws-native:cognito:UserPoolVerificationMessageTemplate": {
+ "type": "object",
+ "properties": {
+ "defaultEmailOption": {
+ "type": "string"
+ },
+ "emailMessage": {
+ "type": "string"
+ },
+ "emailMessageByLink": {
+ "type": "string"
+ },
+ "emailSubject": {
+ "type": "string"
+ },
+ "emailSubjectByLink": {
+ "type": "string"
+ },
+ "smsMessage": {
+ "type": "string"
+ }
+ }
+ },
"aws-native:comprehend:DocumentClassifierAugmentedManifestsListItem": {
"type": "object",
"properties": {
@@ -76590,12 +77687,6 @@
}
}
},
- "aws-native:connect:ContactFlowModuleState": {
- "type": "string"
- },
- "aws-native:connect:ContactFlowModuleStatus": {
- "type": "string"
- },
"aws-native:connect:ContactFlowModuleTag": {
"type": "object",
"properties": {
@@ -77769,6 +78860,222 @@
}
}
},
+ "aws-native:customerprofiles:DomainAttributeTypesSelector": {
+ "type": "object",
+ "properties": {
+ "address": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "The Address type. You can choose from Address, BusinessAddress, MaillingAddress, and ShippingAddress. You only can use the Address type in the MatchingRule. For example, if you want to match profile based on BusinessAddress.City or MaillingAddress.City, you need to choose the BusinessAddress and the MaillingAddress to represent the Address type and specify the Address.City on the matching rule."
+ },
+ "attributeMatchingModel": {
+ "$ref": "#/types/aws-native:customerprofiles:DomainAttributeTypesSelectorAttributeMatchingModel",
+ "description": "Configures the AttributeMatchingModel, you can either choose ONE_TO_ONE or MANY_TO_MANY."
+ },
+ "emailAddress": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "The Email type. You can choose from EmailAddress, BusinessEmailAddress and PersonalEmailAddress. You only can use the EmailAddress type in the MatchingRule. For example, if you want to match profile based on PersonalEmailAddress or BusinessEmailAddress, you need to choose the PersonalEmailAddress and the BusinessEmailAddress to represent the EmailAddress type and only specify the EmailAddress on the matching rule."
+ },
+ "phoneNumber": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "The PhoneNumber type. You can choose from PhoneNumber, HomePhoneNumber, and MobilePhoneNumber. You only can use the PhoneNumber type in the MatchingRule. For example, if you want to match a profile based on Phone or HomePhone, you need to choose the Phone and the HomePhone to represent the PhoneNumber type and only specify the PhoneNumber on the matching rule."
+ }
+ }
+ },
+ "aws-native:customerprofiles:DomainAttributeTypesSelectorAttributeMatchingModel": {
+ "type": "string"
+ },
+ "aws-native:customerprofiles:DomainAutoMerging": {
+ "type": "object",
+ "properties": {
+ "conflictResolution": {
+ "$ref": "#/types/aws-native:customerprofiles:DomainConflictResolution"
+ },
+ "consolidation": {
+ "$ref": "#/types/aws-native:customerprofiles:DomainConsolidation"
+ },
+ "enabled": {
+ "type": "boolean",
+ "description": "The flag that enables the auto-merging of duplicate profiles."
+ },
+ "minAllowedConfidenceScoreForMerging": {
+ "type": "number",
+ "description": "A number between 0 and 1 that represents the minimum confidence score required for profiles within a matching group to be merged during the auto-merge process. A higher score means higher similarity required to merge profiles."
+ }
+ }
+ },
+ "aws-native:customerprofiles:DomainConflictResolution": {
+ "type": "object",
+ "properties": {
+ "conflictResolvingModel": {
+ "$ref": "#/types/aws-native:customerprofiles:DomainConflictResolutionConflictResolvingModel",
+ "description": "How the auto-merging process should resolve conflicts between different profiles."
+ },
+ "sourceName": {
+ "type": "string",
+ "description": "The ObjectType name that is used to resolve profile merging conflicts when choosing SOURCE as the ConflictResolvingModel."
+ }
+ }
+ },
+ "aws-native:customerprofiles:DomainConflictResolutionConflictResolvingModel": {
+ "type": "string"
+ },
+ "aws-native:customerprofiles:DomainConsolidation": {
+ "type": "object",
+ "properties": {
+ "matchingAttributesList": {
+ "type": "array",
+ "items": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "description": "A list of matching criteria."
+ }
+ }
+ },
+ "aws-native:customerprofiles:DomainExportingConfig": {
+ "type": "object",
+ "properties": {
+ "s3Exporting": {
+ "$ref": "#/types/aws-native:customerprofiles:DomainS3ExportingConfig"
+ }
+ },
+ "irreversibleNames": {
+ "s3Exporting": "S3Exporting"
+ }
+ },
+ "aws-native:customerprofiles:DomainJobSchedule": {
+ "type": "object",
+ "properties": {
+ "dayOfTheWeek": {
+ "$ref": "#/types/aws-native:customerprofiles:DomainJobScheduleDayOfTheWeek",
+ "description": "The day when the Identity Resolution Job should run every week."
+ },
+ "time": {
+ "type": "string",
+ "description": "The time when the Identity Resolution Job should run every week."
+ }
+ }
+ },
+ "aws-native:customerprofiles:DomainJobScheduleDayOfTheWeek": {
+ "type": "string"
+ },
+ "aws-native:customerprofiles:DomainMatching": {
+ "type": "object",
+ "properties": {
+ "autoMerging": {
+ "$ref": "#/types/aws-native:customerprofiles:DomainAutoMerging"
+ },
+ "enabled": {
+ "type": "boolean",
+ "description": "The flag that enables the matching process of duplicate profiles."
+ },
+ "exportingConfig": {
+ "$ref": "#/types/aws-native:customerprofiles:DomainExportingConfig"
+ },
+ "jobSchedule": {
+ "$ref": "#/types/aws-native:customerprofiles:DomainJobSchedule"
+ }
+ }
+ },
+ "aws-native:customerprofiles:DomainMatchingRule": {
+ "type": "object",
+ "properties": {
+ "rule": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "aws-native:customerprofiles:DomainRuleBasedMatching": {
+ "type": "object",
+ "properties": {
+ "attributeTypesSelector": {
+ "$ref": "#/types/aws-native:customerprofiles:DomainAttributeTypesSelector"
+ },
+ "conflictResolution": {
+ "$ref": "#/types/aws-native:customerprofiles:DomainConflictResolution"
+ },
+ "enabled": {
+ "type": "boolean",
+ "description": "The flag that enables the rule-based matching process of duplicate profiles."
+ },
+ "exportingConfig": {
+ "$ref": "#/types/aws-native:customerprofiles:DomainExportingConfig"
+ },
+ "matchingRules": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:customerprofiles:DomainMatchingRule"
+ },
+ "description": "Configures how the rule-based matching process should match profiles. You can have up to 15 MatchingRule in the MatchingRules."
+ },
+ "maxAllowedRuleLevelForMatching": {
+ "type": "integer",
+ "description": "Indicates the maximum allowed rule level for matching."
+ },
+ "maxAllowedRuleLevelForMerging": {
+ "type": "integer",
+ "description": "Indicates the maximum allowed rule level for merging."
+ },
+ "status": {
+ "$ref": "#/types/aws-native:customerprofiles:DomainRuleBasedMatchingStatus"
+ }
+ }
+ },
+ "aws-native:customerprofiles:DomainRuleBasedMatchingStatus": {
+ "type": "string"
+ },
+ "aws-native:customerprofiles:DomainS3ExportingConfig": {
+ "type": "object",
+ "properties": {
+ "s3BucketName": {
+ "type": "string",
+ "description": "The name of the S3 bucket where Identity Resolution Jobs write result files."
+ },
+ "s3KeyName": {
+ "type": "string",
+ "description": "The S3 key name of the location where Identity Resolution Jobs write result files."
+ }
+ },
+ "irreversibleNames": {
+ "s3BucketName": "S3BucketName",
+ "s3KeyName": "S3KeyName"
+ }
+ },
+ "aws-native:customerprofiles:DomainStats": {
+ "type": "object",
+ "properties": {
+ "meteringProfileCount": {
+ "type": "number",
+ "description": "The number of profiles that you are currently paying for in the domain. If you have more than 100 objects associated with a single profile, that profile counts as two profiles. If you have more than 200 objects, that profile counts as three, and so on."
+ },
+ "objectCount": {
+ "type": "number",
+ "description": "The total number of objects in domain."
+ },
+ "profileCount": {
+ "type": "number",
+ "description": "The total number of profiles currently in the domain."
+ },
+ "totalSize": {
+ "type": "number",
+ "description": "The total size, in bytes, of all objects in the domain."
+ }
+ }
+ },
"aws-native:customerprofiles:DomainTag": {
"type": "object",
"properties": {
@@ -87335,6 +88642,92 @@
"aws-native:emrserverless:ApplicationWorkerTypeSpecificationInputMap": {
"type": "object"
},
+ "aws-native:entityresolution:IdMappingWorkflowIdMappingTechniques": {
+ "type": "object",
+ "properties": {
+ "idMappingType": {
+ "$ref": "#/types/aws-native:entityresolution:IdMappingWorkflowIdMappingTechniquesIdMappingType"
+ },
+ "providerProperties": {
+ "$ref": "#/types/aws-native:entityresolution:IdMappingWorkflowProviderProperties"
+ }
+ }
+ },
+ "aws-native:entityresolution:IdMappingWorkflowIdMappingTechniquesIdMappingType": {
+ "type": "string"
+ },
+ "aws-native:entityresolution:IdMappingWorkflowInputSource": {
+ "type": "object",
+ "properties": {
+ "inputSourceArn": {
+ "type": "string",
+ "description": "An Glue table ARN for the input source table"
+ },
+ "schemaArn": {
+ "type": "string"
+ }
+ },
+ "irreversibleNames": {
+ "inputSourceArn": "InputSourceARN"
+ }
+ },
+ "aws-native:entityresolution:IdMappingWorkflowIntermediateSourceConfiguration": {
+ "type": "object",
+ "properties": {
+ "intermediateS3Path": {
+ "type": "string",
+ "description": "The s3 path that would be used to stage the intermediate data being generated during workflow execution."
+ }
+ },
+ "irreversibleNames": {
+ "intermediateS3Path": "IntermediateS3Path"
+ }
+ },
+ "aws-native:entityresolution:IdMappingWorkflowOutputSource": {
+ "type": "object",
+ "properties": {
+ "kmsArn": {
+ "type": "string"
+ },
+ "outputS3Path": {
+ "type": "string",
+ "description": "The S3 path to which Entity Resolution will write the output table"
+ }
+ },
+ "irreversibleNames": {
+ "kmsArn": "KMSArn",
+ "outputS3Path": "OutputS3Path"
+ }
+ },
+ "aws-native:entityresolution:IdMappingWorkflowProviderProperties": {
+ "type": "object",
+ "properties": {
+ "intermediateSourceConfiguration": {
+ "$ref": "#/types/aws-native:entityresolution:IdMappingWorkflowIntermediateSourceConfiguration"
+ },
+ "providerConfiguration": {
+ "$ref": "pulumi.json#/Any",
+ "description": "Additional Provider configuration that would be required for the provider service. The Configuration must be in JSON string format"
+ },
+ "providerServiceArn": {
+ "type": "string",
+ "description": "Arn of the Provider Service being used."
+ }
+ }
+ },
+ "aws-native:entityresolution:IdMappingWorkflowTag": {
+ "type": "object",
+ "properties": {
+ "key": {
+ "type": "string",
+ "description": "The key name of the tag. You can specify a value that is 1 to 128 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -."
+ },
+ "value": {
+ "type": "string",
+ "description": "The value for the tag. You can specify a value that is 0 to 256 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -."
+ }
+ }
+ },
"aws-native:entityresolution:MatchingWorkflowInputSource": {
"type": "object",
"properties": {
@@ -87917,12 +89310,6 @@
"sql": {
"type": "string"
},
- "sqls": {
- "type": "array",
- "items": {
- "type": "string"
- }
- },
"statementName": {
"type": "string"
},
@@ -87997,9 +89384,6 @@
}
}
},
- "aws-native:events:RuleState": {
- "type": "string"
- },
"aws-native:events:RuleTag": {
"type": "object",
"properties": {
@@ -89302,6 +90686,9 @@
"aws-native:gamelift:FleetComputeType": {
"type": "string"
},
+ "aws-native:gamelift:FleetInstanceRoleCredentialsProvider": {
+ "type": "string"
+ },
"aws-native:gamelift:FleetIpPermission": {
"type": "object",
"properties": {
@@ -90669,6 +92056,19 @@
}
}
},
+ "aws-native:iam:GroupPolicy": {
+ "type": "object",
+ "properties": {
+ "policyDocument": {
+ "type": "string",
+ "description": "The policy document."
+ },
+ "policyName": {
+ "type": "string",
+ "description": "The friendly name (not ARN) identifying the policy."
+ }
+ }
+ },
"aws-native:iam:OidcProviderTag": {
"type": "object",
"properties": {
@@ -92266,6 +93666,17 @@
"aws-native:iot:MitigationActionUpdateDeviceCertificateParamsAction": {
"type": "string"
},
+ "aws-native:iot:PolicyTag": {
+ "type": "object",
+ "properties": {
+ "key": {
+ "type": "string"
+ },
+ "value": {
+ "type": "string"
+ }
+ }
+ },
"aws-native:iot:PresignedUrlConfigProperties": {
"type": "object",
"properties": {
@@ -105217,6 +106628,144 @@
}
}
},
+ "aws-native:msk:ReplicatorAmazonMskCluster": {
+ "type": "object",
+ "properties": {
+ "mskClusterArn": {
+ "type": "string",
+ "description": "The ARN of an Amazon MSK cluster."
+ }
+ }
+ },
+ "aws-native:msk:ReplicatorConsumerGroupReplication": {
+ "type": "object",
+ "properties": {
+ "consumerGroupsToExclude": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "List of regular expression patterns indicating the consumer groups that should not be replicated."
+ },
+ "consumerGroupsToReplicate": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "List of regular expression patterns indicating the consumer groups to copy."
+ },
+ "detectAndCopyNewConsumerGroups": {
+ "type": "boolean",
+ "description": "Whether to periodically check for new consumer groups."
+ },
+ "synchroniseConsumerGroupOffsets": {
+ "type": "boolean",
+ "description": "Whether to periodically write the translated offsets to __consumer_offsets topic in target cluster."
+ }
+ }
+ },
+ "aws-native:msk:ReplicatorKafkaCluster": {
+ "type": "object",
+ "properties": {
+ "amazonMskCluster": {
+ "$ref": "#/types/aws-native:msk:ReplicatorAmazonMskCluster",
+ "description": "Details of an Amazon MSK cluster. Exactly one of AmazonMskCluster is required."
+ },
+ "vpcConfig": {
+ "$ref": "#/types/aws-native:msk:ReplicatorKafkaClusterClientVpcConfig",
+ "description": "Details of an Amazon VPC which has network connectivity to the Apache Kafka cluster."
+ }
+ }
+ },
+ "aws-native:msk:ReplicatorKafkaClusterClientVpcConfig": {
+ "type": "object",
+ "properties": {
+ "securityGroupIds": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "The AWS security groups to associate with the elastic network interfaces in order to specify what the replicator has access to. If a security group is not specified, the default security group associated with the VPC is used."
+ },
+ "subnetIds": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "The list of subnets to connect to in the virtual private cloud (VPC). AWS creates elastic network interfaces inside these subnets."
+ }
+ }
+ },
+ "aws-native:msk:ReplicatorReplicationInfo": {
+ "type": "object",
+ "properties": {
+ "consumerGroupReplication": {
+ "$ref": "#/types/aws-native:msk:ReplicatorConsumerGroupReplication",
+ "description": "Configuration relating to consumer group replication."
+ },
+ "sourceKafkaClusterArn": {
+ "type": "string",
+ "description": "Amazon Resource Name of the source Kafka cluster."
+ },
+ "targetCompressionType": {
+ "$ref": "#/types/aws-native:msk:ReplicatorReplicationInfoTargetCompressionType",
+ "description": "The type of compression to use writing records to target Kafka cluster."
+ },
+ "targetKafkaClusterArn": {
+ "type": "string",
+ "description": "Amazon Resource Name of the target Kafka cluster."
+ },
+ "topicReplication": {
+ "$ref": "#/types/aws-native:msk:ReplicatorTopicReplication",
+ "description": "Configuration relating to topic replication."
+ }
+ }
+ },
+ "aws-native:msk:ReplicatorReplicationInfoTargetCompressionType": {
+ "type": "string"
+ },
+ "aws-native:msk:ReplicatorTag": {
+ "type": "object",
+ "properties": {
+ "key": {
+ "type": "string"
+ },
+ "value": {
+ "type": "string"
+ }
+ }
+ },
+ "aws-native:msk:ReplicatorTopicReplication": {
+ "type": "object",
+ "properties": {
+ "copyAccessControlListsForTopics": {
+ "type": "boolean",
+ "description": "Whether to periodically configure remote topic ACLs to match their corresponding upstream topics."
+ },
+ "copyTopicConfigurations": {
+ "type": "boolean",
+ "description": "Whether to periodically configure remote topics to match their corresponding upstream topics."
+ },
+ "detectAndCopyNewTopics": {
+ "type": "boolean",
+ "description": "Whether to periodically check for new topics and partitions."
+ },
+ "topicsToExclude": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "List of regular expression patterns indicating the topics that should not be replicated."
+ },
+ "topicsToReplicate": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "List of regular expression patterns indicating the topics to copy."
+ }
+ }
+ },
"aws-native:msk:ServerlessClusterClientAuthentication": {
"type": "object",
"properties": {
@@ -117033,6 +118582,17 @@
"aws-native:quicksight:AnalysisUrlTargetConfiguration": {
"type": "string"
},
+ "aws-native:quicksight:AnalysisValidationStrategy": {
+ "type": "object",
+ "properties": {
+ "mode": {
+ "$ref": "#/types/aws-native:quicksight:AnalysisValidationStrategyMode"
+ }
+ }
+ },
+ "aws-native:quicksight:AnalysisValidationStrategyMode": {
+ "type": "string"
+ },
"aws-native:quicksight:AnalysisValueWhenUnsetOption": {
"type": "string"
},
@@ -125114,6 +126674,17 @@
"aws-native:quicksight:DashboardUrlTargetConfiguration": {
"type": "string"
},
+ "aws-native:quicksight:DashboardValidationStrategy": {
+ "type": "object",
+ "properties": {
+ "mode": {
+ "$ref": "#/types/aws-native:quicksight:DashboardValidationStrategyMode"
+ }
+ }
+ },
+ "aws-native:quicksight:DashboardValidationStrategyMode": {
+ "type": "string"
+ },
"aws-native:quicksight:DashboardValueWhenUnsetOption": {
"type": "string"
},
@@ -134075,6 +135646,17 @@
"aws-native:quicksight:TemplateUrlTargetConfiguration": {
"type": "string"
},
+ "aws-native:quicksight:TemplateValidationStrategy": {
+ "type": "object",
+ "properties": {
+ "mode": {
+ "$ref": "#/types/aws-native:quicksight:TemplateValidationStrategyMode"
+ }
+ }
+ },
+ "aws-native:quicksight:TemplateValidationStrategyMode": {
+ "type": "string"
+ },
"aws-native:quicksight:TemplateValueWhenUnsetOption": {
"type": "string"
},
@@ -137764,8 +139346,7 @@
"type": "object",
"properties": {
"daysAfterInitiation": {
- "type": "integer",
- "description": "Specifies the number of days after which Amazon S3 aborts an incomplete multipart upload."
+ "type": "integer"
}
}
},
@@ -137773,17 +139354,10 @@
"type": "object",
"properties": {
"accelerationStatus": {
- "$ref": "#/types/aws-native:s3:BucketAccelerateConfigurationAccelerationStatus",
- "description": "Configures the transfer acceleration state for an Amazon S3 bucket."
+ "type": "string"
}
}
},
- "aws-native:s3:BucketAccelerateConfigurationAccelerationStatus": {
- "type": "string"
- },
- "aws-native:s3:BucketAccessControl": {
- "type": "string"
- },
"aws-native:s3:BucketAccessControlTranslation": {
"type": "object",
"properties": {
@@ -137796,12 +139370,10 @@
"type": "object",
"properties": {
"id": {
- "type": "string",
- "description": "The ID that identifies the analytics configuration."
+ "type": "string"
},
"prefix": {
- "type": "string",
- "description": "The prefix that an object must have to be included in the analytics results."
+ "type": "string"
},
"storageClassAnalysis": {
"$ref": "#/types/aws-native:s3:BucketStorageClassAnalysis"
@@ -137832,43 +139404,34 @@
"type": "array",
"items": {
"type": "string"
- },
- "description": "Headers that are specified in the Access-Control-Request-Headers header."
+ }
},
"allowedMethods": {
"type": "array",
"items": {
- "$ref": "#/types/aws-native:s3:BucketCorsRuleAllowedMethodsItem"
- },
- "description": "An HTTP method that you allow the origin to execute."
+ "type": "string"
+ }
},
"allowedOrigins": {
"type": "array",
"items": {
"type": "string"
- },
- "description": "One or more origins you want customers to be able to access the bucket from."
+ }
},
"exposedHeaders": {
"type": "array",
"items": {
"type": "string"
- },
- "description": "One or more headers in the response that you want customers to be able to access from their applications (for example, from a JavaScript XMLHttpRequest object)."
+ }
},
"id": {
- "type": "string",
- "description": "A unique identifier for this rule."
+ "type": "string"
},
"maxAge": {
- "type": "integer",
- "description": "The time in seconds that your browser is to cache the preflight response for the specified resource."
+ "type": "integer"
}
}
},
- "aws-native:s3:BucketCorsRuleAllowedMethodsItem": {
- "type": "string"
- },
"aws-native:s3:BucketDataExport": {
"type": "object",
"properties": {
@@ -137876,8 +139439,7 @@
"$ref": "#/types/aws-native:s3:BucketDestination"
},
"outputSchemaVersion": {
- "type": "string",
- "description": "The version of the output schema to use when exporting data."
+ "type": "string"
}
}
},
@@ -137888,51 +139450,38 @@
"type": "integer"
},
"mode": {
- "$ref": "#/types/aws-native:s3:BucketDefaultRetentionMode"
+ "type": "string"
},
"years": {
"type": "integer"
}
}
},
- "aws-native:s3:BucketDefaultRetentionMode": {
- "type": "string"
- },
"aws-native:s3:BucketDeleteMarkerReplication": {
"type": "object",
"properties": {
"status": {
- "$ref": "#/types/aws-native:s3:BucketDeleteMarkerReplicationStatus"
+ "type": "string"
}
}
},
- "aws-native:s3:BucketDeleteMarkerReplicationStatus": {
- "type": "string"
- },
"aws-native:s3:BucketDestination": {
"type": "object",
"properties": {
"bucketAccountId": {
- "type": "string",
- "description": "The account ID that owns the destination S3 bucket. "
+ "type": "string"
},
"bucketArn": {
- "type": "string",
- "description": "The Amazon Resource Name (ARN) of the bucket to which data is exported."
+ "type": "string"
},
"format": {
- "$ref": "#/types/aws-native:s3:BucketDestinationFormat",
- "description": "Specifies the file format used when exporting data to Amazon S3."
+ "type": "string"
},
"prefix": {
- "type": "string",
- "description": "The prefix to use when exporting data. The prefix is prepended to all results."
+ "type": "string"
}
}
},
- "aws-native:s3:BucketDestinationFormat": {
- "type": "string"
- },
"aws-native:s3:BucketEncryption": {
"type": "object",
"properties": {
@@ -137940,8 +139489,7 @@
"type": "array",
"items": {
"$ref": "#/types/aws-native:s3:BucketServerSideEncryptionRule"
- },
- "description": "Specifies the default server-side-encryption configuration."
+ }
}
}
},
@@ -137949,8 +139497,7 @@
"type": "object",
"properties": {
"replicaKmsKeyId": {
- "type": "string",
- "description": "Specifies the ID (Key ARN or Alias ARN) of the customer managed customer master key (CMK) stored in AWS Key Management Service (KMS) for the destination bucket."
+ "type": "string"
}
},
"irreversibleNames": {
@@ -137961,8 +139508,7 @@
"type": "object",
"properties": {
"eventBridgeEnabled": {
- "type": "boolean",
- "description": "Specifies whether to send notifications to Amazon EventBridge when events occur in an Amazon S3 bucket."
+ "type": "boolean"
}
}
},
@@ -137981,36 +139527,28 @@
"type": "object",
"properties": {
"id": {
- "type": "string",
- "description": "The ID used to identify the S3 Intelligent-Tiering configuration."
+ "type": "string"
},
"prefix": {
- "type": "string",
- "description": "An object key name prefix that identifies the subset of objects to which the rule applies."
+ "type": "string"
},
"status": {
- "$ref": "#/types/aws-native:s3:BucketIntelligentTieringConfigurationStatus",
- "description": "Specifies the status of the configuration."
+ "type": "string"
},
"tagFilters": {
"type": "array",
"items": {
"$ref": "#/types/aws-native:s3:BucketTagFilter"
- },
- "description": "A container for a key-value pair."
+ }
},
"tierings": {
"type": "array",
"items": {
"$ref": "#/types/aws-native:s3:BucketTiering"
- },
- "description": "Specifies a list of S3 Intelligent-Tiering storage class tiers in the configuration. At least one tier must be defined in the list. At most, you can specify two tiers in the list, one for each available AccessTier: ARCHIVE_ACCESS and DEEP_ARCHIVE_ACCESS."
+ }
}
}
},
- "aws-native:s3:BucketIntelligentTieringConfigurationStatus": {
- "type": "string"
- },
"aws-native:s3:BucketInventoryConfiguration": {
"type": "object",
"properties": {
@@ -138018,57 +139556,39 @@
"$ref": "#/types/aws-native:s3:BucketDestination"
},
"enabled": {
- "type": "boolean",
- "description": "Specifies whether the inventory is enabled or disabled."
+ "type": "boolean"
},
"id": {
- "type": "string",
- "description": "The ID used to identify the inventory configuration."
+ "type": "string"
},
"includedObjectVersions": {
- "$ref": "#/types/aws-native:s3:BucketInventoryConfigurationIncludedObjectVersions",
- "description": "Object versions to include in the inventory list."
+ "type": "string"
},
"optionalFields": {
"type": "array",
"items": {
- "$ref": "#/types/aws-native:s3:BucketInventoryConfigurationOptionalFieldsItem"
- },
- "description": "Contains the optional fields that are included in the inventory results."
+ "type": "string"
+ }
},
"prefix": {
- "type": "string",
- "description": "The prefix that is prepended to all inventory results."
+ "type": "string"
},
"scheduleFrequency": {
- "$ref": "#/types/aws-native:s3:BucketInventoryConfigurationScheduleFrequency",
- "description": "Specifies the schedule for generating inventory results."
+ "type": "string"
}
}
},
- "aws-native:s3:BucketInventoryConfigurationIncludedObjectVersions": {
- "type": "string"
- },
- "aws-native:s3:BucketInventoryConfigurationOptionalFieldsItem": {
- "type": "string"
- },
- "aws-native:s3:BucketInventoryConfigurationScheduleFrequency": {
- "type": "string"
- },
"aws-native:s3:BucketLambdaConfiguration": {
"type": "object",
"properties": {
"event": {
- "type": "string",
- "description": "The Amazon S3 bucket event for which to invoke the AWS Lambda function."
+ "type": "string"
},
"filter": {
- "$ref": "#/types/aws-native:s3:BucketNotificationFilter",
- "description": "The filtering rules that determine which objects invoke the AWS Lambda function."
+ "$ref": "#/types/aws-native:s3:BucketNotificationFilter"
},
"function": {
- "type": "string",
- "description": "The Amazon Resource Name (ARN) of the AWS Lambda function that Amazon S3 invokes when the specified event type occurs."
+ "type": "string"
}
}
},
@@ -138079,8 +139599,7 @@
"type": "array",
"items": {
"$ref": "#/types/aws-native:s3:BucketRule"
- },
- "description": "A lifecycle rule for individual objects in an Amazon S3 bucket."
+ }
}
}
},
@@ -138088,8 +139607,7 @@
"type": "object",
"properties": {
"destinationBucketName": {
- "type": "string",
- "description": "The name of an Amazon S3 bucket where Amazon S3 store server access log files. You can store log files in any bucket that you own. By default, logs are stored in the bucket where the LoggingConfiguration property is defined."
+ "type": "string"
},
"logFilePrefix": {
"type": "string"
@@ -138103,7 +139621,7 @@
"$ref": "#/types/aws-native:s3:BucketReplicationTimeValue"
},
"status": {
- "$ref": "#/types/aws-native:s3:BucketMetricsStatus"
+ "type": "string"
}
}
},
@@ -138127,19 +139645,14 @@
}
}
},
- "aws-native:s3:BucketMetricsStatus": {
- "type": "string"
- },
"aws-native:s3:BucketNoncurrentVersionExpiration": {
"type": "object",
"properties": {
"newerNoncurrentVersions": {
- "type": "integer",
- "description": "Specified the number of newer noncurrent and current versions that must exists before performing the associated action"
+ "type": "integer"
},
"noncurrentDays": {
- "type": "integer",
- "description": "Specified the number of days an object is noncurrent before Amazon S3 can perform the associated action"
+ "type": "integer"
}
}
},
@@ -138147,22 +139660,16 @@
"type": "object",
"properties": {
"newerNoncurrentVersions": {
- "type": "integer",
- "description": "Specified the number of newer noncurrent and current versions that must exists before performing the associated action"
+ "type": "integer"
},
"storageClass": {
- "$ref": "#/types/aws-native:s3:BucketNoncurrentVersionTransitionStorageClass",
- "description": "The class of storage used to store the object."
+ "type": "string"
},
"transitionInDays": {
- "type": "integer",
- "description": "Specifies the number of days an object is noncurrent before Amazon S3 can perform the associated action."
+ "type": "integer"
}
}
},
- "aws-native:s3:BucketNoncurrentVersionTransitionStorageClass": {
- "type": "string"
- },
"aws-native:s3:BucketNotificationConfiguration": {
"type": "object",
"properties": {
@@ -138234,32 +139741,24 @@
"type": "object",
"properties": {
"objectOwnership": {
- "$ref": "#/types/aws-native:s3:BucketOwnershipControlsRuleObjectOwnership",
- "description": "Specifies an object ownership rule."
+ "type": "string"
}
}
},
- "aws-native:s3:BucketOwnershipControlsRuleObjectOwnership": {
- "type": "string"
- },
"aws-native:s3:BucketPublicAccessBlockConfiguration": {
"type": "object",
"properties": {
"blockPublicAcls": {
- "type": "boolean",
- "description": "Specifies whether Amazon S3 should block public access control lists (ACLs) for this bucket and objects in this bucket. Setting this element to TRUE causes the following behavior:\n- PUT Bucket acl and PUT Object acl calls fail if the specified ACL is public.\n - PUT Object calls fail if the request includes a public ACL.\nEnabling this setting doesn't affect existing policies or ACLs."
+ "type": "boolean"
},
"blockPublicPolicy": {
- "type": "boolean",
- "description": "Specifies whether Amazon S3 should block public bucket policies for this bucket. Setting this element to TRUE causes Amazon S3 to reject calls to PUT Bucket policy if the specified bucket policy allows public access.\nEnabling this setting doesn't affect existing bucket policies."
+ "type": "boolean"
},
"ignorePublicAcls": {
- "type": "boolean",
- "description": "Specifies whether Amazon S3 should ignore public ACLs for this bucket and objects in this bucket. Setting this element to TRUE causes Amazon S3 to ignore all public ACLs on this bucket and objects in this bucket.\nEnabling this setting doesn't affect the persistence of any existing ACLs and doesn't prevent new public ACLs from being set."
+ "type": "boolean"
},
"restrictPublicBuckets": {
- "type": "boolean",
- "description": "Specifies whether Amazon S3 should restrict public bucket policies for this bucket. Setting this element to TRUE restricts access to this bucket to only AWS services and authorized users within this account if the bucket has a public policy.\nEnabling this setting doesn't affect previously stored bucket policies, except that public and cross-account access within any public bucket policy, including non-public delegation to specific accounts, is blocked."
+ "type": "boolean"
}
}
},
@@ -138267,16 +139766,13 @@
"type": "object",
"properties": {
"event": {
- "type": "string",
- "description": "The Amazon S3 bucket event about which you want to publish messages to Amazon SQS."
+ "type": "string"
},
"filter": {
- "$ref": "#/types/aws-native:s3:BucketNotificationFilter",
- "description": "The filtering rules that determine which objects trigger notifications."
+ "$ref": "#/types/aws-native:s3:BucketNotificationFilter"
},
"queue": {
- "type": "string",
- "description": "The Amazon Resource Name (ARN) of the Amazon SQS queue to which Amazon S3 publishes a message when it detects events of the specified type."
+ "type": "string"
}
}
},
@@ -138284,71 +139780,52 @@
"type": "object",
"properties": {
"hostName": {
- "type": "string",
- "description": "Name of the host where requests are redirected."
+ "type": "string"
},
"protocol": {
- "$ref": "#/types/aws-native:s3:BucketRedirectAllRequestsToProtocol",
- "description": "Protocol to use when redirecting requests. The default is the protocol that is used in the original request."
+ "type": "string"
}
}
},
- "aws-native:s3:BucketRedirectAllRequestsToProtocol": {
- "type": "string"
- },
"aws-native:s3:BucketRedirectRule": {
"type": "object",
"properties": {
"hostName": {
- "type": "string",
- "description": "The host name to use in the redirect request."
+ "type": "string"
},
"httpRedirectCode": {
- "type": "string",
- "description": "The HTTP redirect code to use on the response. Not required if one of the siblings is present."
+ "type": "string"
},
"protocol": {
- "$ref": "#/types/aws-native:s3:BucketRedirectRuleProtocol",
- "description": "Protocol to use when redirecting requests. The default is the protocol that is used in the original request."
+ "type": "string"
},
"replaceKeyPrefixWith": {
- "type": "string",
- "description": "The object key prefix to use in the redirect request."
+ "type": "string"
},
"replaceKeyWith": {
- "type": "string",
- "description": "The specific object key to use in the redirect request.d"
+ "type": "string"
}
}
},
- "aws-native:s3:BucketRedirectRuleProtocol": {
- "type": "string"
- },
"aws-native:s3:BucketReplicaModifications": {
"type": "object",
"properties": {
"status": {
- "$ref": "#/types/aws-native:s3:BucketReplicaModificationsStatus",
- "description": "Specifies whether Amazon S3 replicates modifications on replicas."
+ "type": "string"
}
}
},
- "aws-native:s3:BucketReplicaModificationsStatus": {
- "type": "string"
- },
"aws-native:s3:BucketReplicationConfiguration": {
"type": "object",
"properties": {
"role": {
- "type": "string",
- "description": "The Amazon Resource Name (ARN) of the AWS Identity and Access Management (IAM) role that Amazon S3 assumes when replicating objects."
+ "type": "string"
},
"rules": {
"type": "array",
"items": {
"$ref": "#/types/aws-native:s3:BucketReplicationRule"
- },
- "description": "A container for one or more replication rules."
+ }
}
}
},
@@ -138374,14 +139851,10 @@
"$ref": "#/types/aws-native:s3:BucketReplicationTime"
},
"storageClass": {
- "$ref": "#/types/aws-native:s3:BucketReplicationDestinationStorageClass",
- "description": "The storage class to use when replicating objects, such as S3 Standard or reduced redundancy."
+ "type": "string"
}
}
},
- "aws-native:s3:BucketReplicationDestinationStorageClass": {
- "type": "string"
- },
"aws-native:s3:BucketReplicationRule": {
"type": "object",
"properties": {
@@ -138395,12 +139868,10 @@
"$ref": "#/types/aws-native:s3:BucketReplicationRuleFilter"
},
"id": {
- "type": "string",
- "description": "A unique identifier for the rule."
+ "type": "string"
},
"prefix": {
- "type": "string",
- "description": "An object key name prefix that identifies the object or objects to which the rule applies."
+ "type": "string"
},
"priority": {
"type": "integer"
@@ -138409,8 +139880,7 @@
"$ref": "#/types/aws-native:s3:BucketSourceSelectionCriteria"
},
"status": {
- "$ref": "#/types/aws-native:s3:BucketReplicationRuleStatus",
- "description": "Specifies whether the rule is enabled."
+ "type": "string"
}
}
},
@@ -138442,23 +139912,17 @@
}
}
},
- "aws-native:s3:BucketReplicationRuleStatus": {
- "type": "string"
- },
"aws-native:s3:BucketReplicationTime": {
"type": "object",
"properties": {
"status": {
- "$ref": "#/types/aws-native:s3:BucketReplicationTimeStatus"
+ "type": "string"
},
"time": {
"$ref": "#/types/aws-native:s3:BucketReplicationTimeValue"
}
}
},
- "aws-native:s3:BucketReplicationTimeStatus": {
- "type": "string"
- },
"aws-native:s3:BucketReplicationTimeValue": {
"type": "object",
"properties": {
@@ -138471,8 +139935,7 @@
"type": "object",
"properties": {
"redirectRule": {
- "$ref": "#/types/aws-native:s3:BucketRedirectRule",
- "description": "Container for redirect information. You can redirect requests to another host, to another page, or with another protocol. In the event of an error, you can specify a different error code to return."
+ "$ref": "#/types/aws-native:s3:BucketRedirectRule"
},
"routingRuleCondition": {
"$ref": "#/types/aws-native:s3:BucketRoutingRuleCondition"
@@ -138483,12 +139946,10 @@
"type": "object",
"properties": {
"httpErrorCodeReturnedEquals": {
- "type": "string",
- "description": "The HTTP error code when the redirect is applied. "
+ "type": "string"
},
"keyPrefixEquals": {
- "type": "string",
- "description": "The object key name prefix when the redirect is applied."
+ "type": "string"
}
}
},
@@ -138526,16 +139987,16 @@
}
},
"objectSizeGreaterThan": {
- "type": "string"
+ "type": "integer"
},
"objectSizeLessThan": {
- "type": "string"
+ "type": "integer"
},
"prefix": {
"type": "string"
},
"status": {
- "$ref": "#/types/aws-native:s3:BucketRuleStatus"
+ "type": "string"
},
"tagFilters": {
"type": "array",
@@ -138554,9 +140015,6 @@
}
}
},
- "aws-native:s3:BucketRuleStatus": {
- "type": "string"
- },
"aws-native:s3:BucketS3KeyFilter": {
"type": "object",
"properties": {
@@ -138572,11 +140030,10 @@
"type": "object",
"properties": {
"kmsMasterKeyId": {
- "type": "string",
- "description": "\"KMSMasterKeyID\" can only be used when you set the value of SSEAlgorithm as aws:kms or aws:kms:dsse."
+ "type": "string"
},
"sseAlgorithm": {
- "$ref": "#/types/aws-native:s3:BucketServerSideEncryptionByDefaultSseAlgorithm"
+ "type": "string"
}
},
"irreversibleNames": {
@@ -138584,15 +140041,11 @@
"sseAlgorithm": "SSEAlgorithm"
}
},
- "aws-native:s3:BucketServerSideEncryptionByDefaultSseAlgorithm": {
- "type": "string"
- },
"aws-native:s3:BucketServerSideEncryptionRule": {
"type": "object",
"properties": {
"bucketKeyEnabled": {
- "type": "boolean",
- "description": "Specifies whether Amazon S3 should use an S3 Bucket Key with server-side encryption using KMS (SSE-KMS) for new objects in the bucket. Existing objects are not affected. Setting the BucketKeyEnabled element to true causes Amazon S3 to use an S3 Bucket Key. By default, S3 Bucket Key is not enabled."
+ "type": "boolean"
},
"serverSideEncryptionByDefault": {
"$ref": "#/types/aws-native:s3:BucketServerSideEncryptionByDefault"
@@ -138603,12 +140056,10 @@
"type": "object",
"properties": {
"replicaModifications": {
- "$ref": "#/types/aws-native:s3:BucketReplicaModifications",
- "description": "A filter that you can specify for selection for modifications on replicas."
+ "$ref": "#/types/aws-native:s3:BucketReplicaModifications"
},
"sseKmsEncryptedObjects": {
- "$ref": "#/types/aws-native:s3:BucketSseKmsEncryptedObjects",
- "description": "A container for filter information for the selection of Amazon S3 objects encrypted with AWS KMS."
+ "$ref": "#/types/aws-native:s3:BucketSseKmsEncryptedObjects"
}
}
},
@@ -138616,14 +140067,10 @@
"type": "object",
"properties": {
"status": {
- "$ref": "#/types/aws-native:s3:BucketSseKmsEncryptedObjectsStatus",
- "description": "Specifies whether Amazon S3 replicates objects created with server-side encryption using a customer master key (CMK) stored in AWS Key Management Service."
+ "type": "string"
}
}
},
- "aws-native:s3:BucketSseKmsEncryptedObjectsStatus": {
- "type": "string"
- },
"aws-native:s3:BucketStorageClassAnalysis": {
"type": "object",
"properties": {
@@ -138658,32 +140105,24 @@
"type": "object",
"properties": {
"accessTier": {
- "$ref": "#/types/aws-native:s3:BucketTieringAccessTier",
- "description": "S3 Intelligent-Tiering access tier. See Storage class for automatically optimizing frequently and infrequently accessed objects for a list of access tiers in the S3 Intelligent-Tiering storage class."
+ "type": "string"
},
"days": {
- "type": "integer",
- "description": "The number of consecutive days of no access after which an object will be eligible to be transitioned to the corresponding tier. The minimum number of days specified for Archive Access tier must be at least 90 days and Deep Archive Access tier must be at least 180 days. The maximum can be up to 2 years (730 days)."
+ "type": "integer"
}
}
},
- "aws-native:s3:BucketTieringAccessTier": {
- "type": "string"
- },
"aws-native:s3:BucketTopicConfiguration": {
"type": "object",
"properties": {
"event": {
- "type": "string",
- "description": "The Amazon S3 bucket event about which to send notifications."
+ "type": "string"
},
"filter": {
- "$ref": "#/types/aws-native:s3:BucketNotificationFilter",
- "description": "The filtering rules that determine for which objects to send notifications."
+ "$ref": "#/types/aws-native:s3:BucketNotificationFilter"
},
"topic": {
- "type": "string",
- "description": "The Amazon Resource Name (ARN) of the Amazon SNS topic to which Amazon S3 publishes a message when it detects events of the specified type."
+ "type": "string"
}
}
},
@@ -138691,7 +140130,7 @@
"type": "object",
"properties": {
"storageClass": {
- "$ref": "#/types/aws-native:s3:BucketTransitionStorageClass"
+ "type": "string"
},
"transitionDate": {
"type": "string"
@@ -138701,31 +140140,22 @@
}
}
},
- "aws-native:s3:BucketTransitionStorageClass": {
- "type": "string"
- },
"aws-native:s3:BucketVersioningConfiguration": {
"type": "object",
"properties": {
"status": {
- "$ref": "#/types/aws-native:s3:BucketVersioningConfigurationStatus",
- "description": "The versioning state of the bucket."
+ "type": "string"
}
}
},
- "aws-native:s3:BucketVersioningConfigurationStatus": {
- "type": "string"
- },
"aws-native:s3:BucketWebsiteConfiguration": {
"type": "object",
"properties": {
"errorDocument": {
- "type": "string",
- "description": "The name of the error document for the website."
+ "type": "string"
},
"indexDocument": {
- "type": "string",
- "description": "The name of the index document for the website."
+ "type": "string"
},
"redirectAllRequestsTo": {
"$ref": "#/types/aws-native:s3:BucketRedirectAllRequestsTo"
@@ -139390,6 +140820,10 @@
"datasetFormat": {
"$ref": "#/types/aws-native:sagemaker:DataQualityJobDefinitionDatasetFormat"
},
+ "excludeFeaturesAttribute": {
+ "type": "string",
+ "description": "Indexes or names of the features to be excluded from analysis"
+ },
"localPath": {
"type": "string",
"description": "Path to the filesystem where the endpoint data is available to the container."
@@ -139540,6 +140974,10 @@
"endpointName": {
"type": "string"
},
+ "excludeFeaturesAttribute": {
+ "type": "string",
+ "description": "Indexes or names of the features to be excluded from analysis"
+ },
"localPath": {
"type": "string",
"description": "Path to the filesystem where the endpoint data is available to the container."
@@ -142518,6 +143956,10 @@
"datasetFormat": {
"$ref": "#/types/aws-native:sagemaker:MonitoringScheduleDatasetFormat"
},
+ "excludeFeaturesAttribute": {
+ "type": "string",
+ "description": "Indexes or names of the features to be excluded from analysis"
+ },
"localPath": {
"type": "string",
"description": "Path to the filesystem where the endpoint data is available to the container."
@@ -142626,6 +144068,10 @@
"endpointName": {
"type": "string"
},
+ "excludeFeaturesAttribute": {
+ "type": "string",
+ "description": "Indexes or names of the features to be excluded from analysis"
+ },
"localPath": {
"type": "string",
"description": "Path to the filesystem where the endpoint data is available to the container."
@@ -142857,9 +144303,17 @@
"aws-native:sagemaker:MonitoringScheduleScheduleConfig": {
"type": "object",
"properties": {
+ "dataAnalysisEndTime": {
+ "type": "string",
+ "description": "Data Analysis end time, e.g. PT0H"
+ },
+ "dataAnalysisStartTime": {
+ "type": "string",
+ "description": "Data Analysis start time, e.g. -PT1H"
+ },
"scheduleExpression": {
"type": "string",
- "description": "A cron expression that describes details about the monitoring schedule."
+ "description": "A cron expression or 'NOW' that describes details about the monitoring schedule."
}
}
},
@@ -149752,6 +151206,12 @@
"vpcLinkId"
]
},
+ "aws-native:appconfig:getApplication": {
+ "cf": "AWS::AppConfig::Application",
+ "ids": [
+ "applicationId"
+ ]
+ },
"aws-native:appconfig:getExtension": {
"cf": "AWS::AppConfig::Extension",
"ids": [
@@ -149887,6 +151347,12 @@
"apiAssociationIdentifier"
]
},
+ "aws-native:appsync:getFunctionConfiguration": {
+ "cf": "AWS::AppSync::FunctionConfiguration",
+ "ids": [
+ "functionArn"
+ ]
+ },
"aws-native:appsync:getSourceApiAssociation": {
"cf": "AWS::AppSync::SourceApiAssociation",
"ids": [
@@ -150353,6 +151819,19 @@
"id"
]
},
+ "aws-native:cognito:getUserPool": {
+ "cf": "AWS::Cognito::UserPool",
+ "ids": [
+ "userPoolId"
+ ]
+ },
+ "aws-native:cognito:getUserPoolGroup": {
+ "cf": "AWS::Cognito::UserPoolGroup",
+ "ids": [
+ "userPoolId",
+ "groupName"
+ ]
+ },
"aws-native:comprehend:getDocumentClassifier": {
"cf": "AWS::Comprehend::DocumentClassifier",
"ids": [
@@ -151445,6 +152924,12 @@
"applicationId"
]
},
+ "aws-native:entityresolution:getIdMappingWorkflow": {
+ "cf": "AWS::EntityResolution::IdMappingWorkflow",
+ "ids": [
+ "workflowName"
+ ]
+ },
"aws-native:entityresolution:getMatchingWorkflow": {
"cf": "AWS::EntityResolution::MatchingWorkflow",
"ids": [
@@ -151490,7 +152975,7 @@
"aws-native:events:getRule": {
"cf": "AWS::Events::Rule",
"ids": [
- "arn"
+ "id"
]
},
"aws-native:eventschemas:getRegistryPolicy": {
@@ -151740,6 +153225,12 @@
"datastoreId"
]
},
+ "aws-native:iam:getGroup": {
+ "cf": "AWS::IAM::Group",
+ "ids": [
+ "groupName"
+ ]
+ },
"aws-native:iam:getGroupPolicy": {
"cf": "AWS::IAM::GroupPolicy",
"ids": [
@@ -152856,6 +154347,12 @@
"arn"
]
},
+ "aws-native:msk:getReplicator": {
+ "cf": "AWS::MSK::Replicator",
+ "ids": [
+ "replicatorArn"
+ ]
+ },
"aws-native:msk:getServerlessCluster": {
"cf": "AWS::MSK::ServerlessCluster",
"ids": [
@@ -153702,7 +155199,7 @@
"aws-native:s3:getBucket": {
"cf": "AWS::S3::Bucket",
"ids": [
- "bucketName"
+ "id"
]
},
"aws-native:s3:getBucketPolicy": {
@@ -153941,13 +155438,16 @@
"aws-native:servicecatalogappregistry:getAttributeGroupAssociation": {
"cf": "AWS::ServiceCatalogAppRegistry::AttributeGroupAssociation",
"ids": [
- "id"
+ "applicationArn",
+ "attributeGroupArn"
]
},
"aws-native:servicecatalogappregistry:getResourceAssociation": {
"cf": "AWS::ServiceCatalogAppRegistry::ResourceAssociation",
"ids": [
- "id"
+ "applicationArn",
+ "resourceArn",
+ "resourceType"
]
},
"aws-native:ses:getConfigurationSet": {
diff --git a/provider/cmd/pulumi-resource-aws-native/schema.json b/provider/cmd/pulumi-resource-aws-native/schema.json
index ba4788740c..2988f977d3 100644
--- a/provider/cmd/pulumi-resource-aws-native/schema.json
+++ b/provider/cmd/pulumi-resource-aws-native/schema.json
@@ -1594,19 +1594,21 @@
]
},
"aws-native:apigateway:DeploymentAccessLogSetting": {
+ "description": "The ``AccessLogSetting`` property type specifies settings for logging access in this stage.\n ``AccessLogSetting`` is a property of the [StageDescription](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription.html) property type.",
"properties": {
"destinationArn": {
"type": "string",
- "description": "The Amazon Resource Name (ARN) of the CloudWatch Logs log group or Kinesis Data Firehose delivery stream to receive access logs. If you specify a Kinesis Data Firehose delivery stream, the stream name must begin with amazon-apigateway-. "
+ "description": "The Amazon Resource Name (ARN) of the CloudWatch Logs log group or Kinesis Data Firehose delivery stream to receive access logs. If you specify a Kinesis Data Firehose delivery stream, the stream name must begin with ``amazon-apigateway-``."
},
"format": {
"type": "string",
- "description": "A single line format of the access logs of data, as specified by selected $context variables. The format must include at least $context.requestId. "
+ "description": "A single line format of the access logs of data, as specified by selected $context variables. The format must include at least ``$context.requestId``."
}
},
"type": "object"
},
"aws-native:apigateway:DeploymentCanarySetting": {
+ "description": "The ``CanarySetting`` property type specifies settings for the canary deployment in this stage.\n ``CanarySetting`` is a property of the [StageDescription](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription.html) property type.",
"properties": {
"percentTraffic": {
"type": "number",
@@ -1614,49 +1616,51 @@
},
"stageVariableOverrides": {
"$ref": "pulumi.json#/Any",
- "description": "Stage variables overridden for a canary release deployment, including new stage variables introduced in the canary. These stage variables are represented as a string-to-string map between stage variable names and their values. "
+ "description": "Stage variables overridden for a canary release deployment, including new stage variables introduced in the canary. These stage variables are represented as a string-to-string map between stage variable names and their values."
},
"useStageCache": {
"type": "boolean",
- "description": "Whether the canary deployment uses the stage cache or not."
+ "description": "A Boolean flag to indicate whether the canary deployment uses the stage cache or not."
}
},
"type": "object"
},
"aws-native:apigateway:DeploymentCanarySettings": {
+ "description": "The ``DeploymentCanarySettings`` property type specifies settings for the canary deployment.",
"properties": {
"percentTraffic": {
"type": "number",
- "description": "The percentage (0-100) of traffic diverted to a canary deployment."
+ "description": "The percentage (0.0-100.0) of traffic routed to the canary deployment."
},
"stageVariableOverrides": {
"$ref": "pulumi.json#/Any",
- "description": "Stage variables overridden for a canary release deployment, including new stage variables introduced in the canary. These stage variables are represented as a string-to-string map between stage variable names and their values. Duplicates are not allowed."
+ "description": "A stage variable overrides used for the canary release deployment. They can override existing stage variables or add new stage variables for the canary release deployment. These stage variables are represented as a string-to-string map between stage variable names and their values."
},
"useStageCache": {
"type": "boolean",
- "description": "Whether the canary deployment uses the stage cache."
+ "description": "A Boolean flag to indicate whether the canary release deployment uses the stage cache or not."
}
},
"type": "object"
},
"aws-native:apigateway:DeploymentMethodSetting": {
+ "description": "The ``MethodSetting`` property type configures settings for all methods in a stage.\n The ``MethodSettings`` property of the [Amazon API Gateway Deployment StageDescription](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription.html) property type contains a list of ``MethodSetting`` property types.",
"properties": {
"cacheDataEncrypted": {
"type": "boolean",
- "description": "Indicates whether the cached responses are encrypted"
+ "description": "Specifies whether the cached responses are encrypted."
},
"cacheTtlInSeconds": {
"type": "integer",
- "description": "The time-to-live (TTL) period, in seconds, that specifies how long API Gateway caches responses. "
+ "description": "Specifies the time to live (TTL), in seconds, for cached responses. The higher the TTL, the longer the response will be cached."
},
"cachingEnabled": {
"type": "boolean",
- "description": "Indicates whether responses are cached and returned for requests. You must enable a cache cluster on the stage to cache responses."
+ "description": "Specifies whether responses should be cached and returned for requests. A cache cluster must be enabled on the stage for responses to be cached."
},
"dataTraceEnabled": {
"type": "boolean",
- "description": "Indicates whether data trace logging is enabled for methods in the stage. API Gateway pushes these logs to Amazon CloudWatch Logs. "
+ "description": "Specifies whether data trace logging is enabled for this method, which affects the log entries pushed to Amazon CloudWatch Logs. This can be useful to troubleshoot APIs, but can result in logging sensitive data. We recommend that you don't enable this option for production APIs."
},
"httpMethod": {
"type": "string",
@@ -1664,28 +1668,29 @@
},
"loggingLevel": {
"type": "string",
- "description": "The logging level for this method. For valid values, see the loggingLevel property of the Stage resource in the Amazon API Gateway API Reference. "
+ "description": "Specifies the logging level for this method, which affects the log entries pushed to Amazon CloudWatch Logs. Valid values are ``OFF``, ``ERROR``, and ``INFO``. Choose ``ERROR`` to write only error-level entries to CloudWatch Logs, or choose ``INFO`` to include all ``ERROR`` events as well as extra informational events."
},
"metricsEnabled": {
"type": "boolean",
- "description": "Indicates whether Amazon CloudWatch metrics are enabled for methods in the stage."
+ "description": "Specifies whether Amazon CloudWatch metrics are enabled for this method."
},
"resourcePath": {
"type": "string",
- "description": "The resource path for this method. Forward slashes (/) are encoded as ~1 and the initial slash must include a forward slash. "
+ "description": "The resource path for this method. Forward slashes (``/``) are encoded as ``~1`` and the initial slash must include a forward slash. For example, the path value ``/resource/subresource`` must be encoded as ``/~1resource~1subresource``. To specify the root path, use only a slash (``/``)."
},
"throttlingBurstLimit": {
"type": "integer",
- "description": "The number of burst requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account."
+ "description": "Specifies the throttling burst limit."
},
"throttlingRateLimit": {
"type": "number",
- "description": "The number of steady-state requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account."
+ "description": "Specifies the throttling rate limit."
}
},
"type": "object"
},
"aws-native:apigateway:DeploymentStageDescription": {
+ "description": "``StageDescription`` is a property of the [AWS::ApiGateway::Deployment](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-deployment.html) resource that configures a deployment stage.",
"properties": {
"accessLogSetting": {
"$ref": "#/types/aws-native:apigateway:DeploymentAccessLogSetting",
@@ -1693,23 +1698,23 @@
},
"cacheClusterEnabled": {
"type": "boolean",
- "description": "Indicates whether cache clustering is enabled for the stage."
+ "description": "Specifies whether a cache cluster is enabled for the stage."
},
"cacheClusterSize": {
"type": "string",
- "description": "The size of the stage's cache cluster."
+ "description": "The size of the stage's cache cluster. For more information, see [cacheClusterSize](https://docs.aws.amazon.com/apigateway/latest/api/API_CreateStage.html#apigw-CreateStage-request-cacheClusterSize) in the *API Gateway API Reference*."
},
"cacheDataEncrypted": {
"type": "boolean",
- "description": "The time-to-live (TTL) period, in seconds, that specifies how long API Gateway caches responses. "
+ "description": "Indicates whether the cached responses are encrypted."
},
"cacheTtlInSeconds": {
"type": "integer",
- "description": "The time-to-live (TTL) period, in seconds, that specifies how long API Gateway caches responses. "
+ "description": "The time-to-live (TTL) period, in seconds, that specifies how long API Gateway caches responses."
},
"cachingEnabled": {
"type": "boolean",
- "description": "Indicates whether responses are cached and returned for requests. You must enable a cache cluster on the stage to cache responses."
+ "description": "Indicates whether responses are cached and returned for requests. You must enable a cache cluster on the stage to cache responses. For more information, see [Enable API Gateway Caching in a Stage to Enhance API Performance](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-caching.html) in the *API Gateway Developer Guide*."
},
"canarySetting": {
"$ref": "#/types/aws-native:apigateway:DeploymentCanarySetting",
@@ -1717,11 +1722,11 @@
},
"clientCertificateId": {
"type": "string",
- "description": "The identifier of the client certificate that API Gateway uses to call your integration endpoints in the stage. "
+ "description": "The identifier of the client certificate that API Gateway uses to call your integration endpoints in the stage."
},
"dataTraceEnabled": {
"type": "boolean",
- "description": "Indicates whether data trace logging is enabled for methods in the stage. API Gateway pushes these logs to Amazon CloudWatch Logs. "
+ "description": "Indicates whether data trace logging is enabled for methods in the stage. API Gateway pushes these logs to Amazon CloudWatch Logs."
},
"description": {
"type": "string",
@@ -1733,7 +1738,7 @@
},
"loggingLevel": {
"type": "string",
- "description": "The logging level for this method. For valid values, see the loggingLevel property of the Stage resource in the Amazon API Gateway API Reference. "
+ "description": "The logging level for this method. For valid values, see the ``loggingLevel`` property of the [MethodSetting](https://docs.aws.amazon.com/apigateway/latest/api/API_MethodSetting.html) resource in the *Amazon API Gateway API Reference*."
},
"methodSettings": {
"type": "array",
@@ -1755,19 +1760,19 @@
},
"throttlingBurstLimit": {
"type": "integer",
- "description": "The number of burst requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account."
+ "description": "The target request burst rate limit. This allows more requests through for a period of time than the target rate limit. For more information, see [Manage API Request Throttling](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-request-throttling.html) in the *API Gateway Developer Guide*."
},
"throttlingRateLimit": {
"type": "number",
- "description": "The number of steady-state requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account."
+ "description": "The target request steady-state rate limit. For more information, see [Manage API Request Throttling](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-request-throttling.html) in the *API Gateway Developer Guide*."
},
"tracingEnabled": {
"type": "boolean",
- "description": "Specifies whether active tracing with X-ray is enabled for this stage."
+ "description": "Specifies whether active tracing with X-ray is enabled for this stage.\n For more information, see [Trace API Gateway API Execution with X-Ray](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-xray.html) in the *API Gateway Developer Guide*."
},
"variables": {
"$ref": "pulumi.json#/Any",
- "description": "A map that defines the stage variables. Variable names must consist of alphanumeric characters, and the values must match the following regular expression: [A-Za-z0-9-._~:/?#\u0026=,]+. "
+ "description": "A map that defines the stage variables. Variable names must consist of alphanumeric characters, and the values must match the following regular expression: ``[A-Za-z0-9-._~:/?#\u0026=,]+``."
}
},
"type": "object"
@@ -1790,32 +1795,33 @@
]
},
"aws-native:apigateway:DocumentationPartLocation": {
+ "description": "The ``Location`` property specifies the location of the Amazon API Gateway API entity that the documentation applies to. ``Location`` is a property of the [AWS::ApiGateway::DocumentationPart](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-documentationpart.html) resource.\n For more information about each property, including constraints and valid values, see [DocumentationPart](https://docs.aws.amazon.com/apigateway/latest/api/API_DocumentationPartLocation.html) in the *Amazon API Gateway REST API Reference*.",
"properties": {
"method": {
"type": "string",
- "description": "The HTTP verb of a method."
+ "description": "The HTTP verb of a method. It is a valid field for the API entity types of ``METHOD``, ``PATH_PARAMETER``, ``QUERY_PARAMETER``, ``REQUEST_HEADER``, ``REQUEST_BODY``, ``RESPONSE``, ``RESPONSE_HEADER``, and ``RESPONSE_BODY``. The default value is ``*`` for any method. When an applicable child entity inherits the content of an entity of the same type with more general specifications of the other ``location`` attributes, the child entity's ``method`` attribute must match that of the parent entity exactly."
},
"name": {
"type": "string",
- "description": "The name of the targeted API entity."
+ "description": "The name of the targeted API entity. It is a valid and required field for the API entity types of ``AUTHORIZER``, ``MODEL``, ``PATH_PARAMETER``, ``QUERY_PARAMETER``, ``REQUEST_HEADER``, ``REQUEST_BODY`` and ``RESPONSE_HEADER``. It is an invalid field for any other entity type."
},
"path": {
"type": "string",
- "description": "The URL path of the target."
+ "description": "The URL path of the target. It is a valid field for the API entity types of ``RESOURCE``, ``METHOD``, ``PATH_PARAMETER``, ``QUERY_PARAMETER``, ``REQUEST_HEADER``, ``REQUEST_BODY``, ``RESPONSE``, ``RESPONSE_HEADER``, and ``RESPONSE_BODY``. The default value is ``/`` for the root resource. When an applicable child entity inherits the content of another entity of the same type with more general specifications of the other ``location`` attributes, the child entity's ``path`` attribute must match that of the parent entity as a prefix."
},
"statusCode": {
"type": "string",
- "description": "The HTTP status code of a response."
+ "description": "The HTTP status code of a response. It is a valid field for the API entity types of ``RESPONSE``, ``RESPONSE_HEADER``, and ``RESPONSE_BODY``. The default value is ``*`` for any status code. When an applicable child entity inherits the content of an entity of the same type with more general specifications of the other ``location`` attributes, the child entity's ``statusCode`` attribute must match that of the parent entity exactly."
},
"type": {
"$ref": "#/types/aws-native:apigateway:DocumentationPartLocationType",
- "description": "The type of API entity that the documentation content applies to."
+ "description": "The type of API entity to which the documentation content applies. Valid values are ``API``, ``AUTHORIZER``, ``MODEL``, ``RESOURCE``, ``METHOD``, ``PATH_PARAMETER``, ``QUERY_PARAMETER``, ``REQUEST_HEADER``, ``REQUEST_BODY``, ``RESPONSE``, ``RESPONSE_HEADER``, and ``RESPONSE_BODY``. Content inheritance does not apply to any entity of the ``API``, ``AUTHORIZER``, ``METHOD``, ``MODEL``, ``REQUEST_BODY``, or ``RESOURCE`` type."
}
},
"type": "object"
},
"aws-native:apigateway:DocumentationPartLocationType": {
- "description": "The type of API entity that the documentation content applies to.",
+ "description": "The type of API entity to which the documentation content applies. Valid values are ``API``, ``AUTHORIZER``, ``MODEL``, ``RESOURCE``, ``METHOD``, ``PATH_PARAMETER``, ``QUERY_PARAMETER``, ``REQUEST_HEADER``, ``REQUEST_BODY``, ``RESPONSE``, ``RESPONSE_HEADER``, and ``RESPONSE_BODY``. Content inheritance does not apply to any entity of the ``API``, ``AUTHORIZER``, ``METHOD``, ``MODEL``, ``REQUEST_BODY``, or ``RESOURCE`` type.",
"type": "string",
"enum": [
{
@@ -1902,7 +1908,7 @@
"type": "object"
},
"aws-native:apigateway:MethodAuthorizationType": {
- "description": "The method's authorization type.",
+ "description": "The method's authorization type. This parameter is required. For valid values, see [Method](https://docs.aws.amazon.com/apigateway/latest/api/API_Method.html) in the *API Gateway API Reference*.\n If you specify the ``AuthorizerId`` property, specify ``CUSTOM`` or ``COGNITO_USER_POOLS`` for this property.",
"type": "string",
"enum": [
{
@@ -1924,68 +1930,69 @@
]
},
"aws-native:apigateway:MethodIntegration": {
+ "description": "``Integration`` is a property of the [AWS::ApiGateway::Method](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-method.html) resource that specifies information about the target backend that a method calls.",
"properties": {
"cacheKeyParameters": {
"type": "array",
"items": {
"type": "string"
},
- "description": "A list of request parameters whose values API Gateway caches."
+ "description": "A list of request parameters whose values API Gateway caches. To be valid values for ``cacheKeyParameters``, these parameters must also be specified for Method ``requestParameters``."
},
"cacheNamespace": {
"type": "string",
- "description": "An API-specific tag group of related cached parameters."
+ "description": "Specifies a group of related cached parameters. By default, API Gateway uses the resource ID as the ``cacheNamespace``. You can specify the same ``cacheNamespace`` across resources to return the same cached data for requests to different resources."
},
"connectionId": {
"type": "string",
- "description": "The ID of the VpcLink used for the integration when connectionType=VPC_LINK, otherwise undefined."
+ "description": "The ID of the VpcLink used for the integration when ``connectionType=VPC_LINK`` and undefined, otherwise."
},
"connectionType": {
"$ref": "#/types/aws-native:apigateway:MethodIntegrationConnectionType",
- "description": "The type of the network connection to the integration endpoint."
+ "description": "The type of the network connection to the integration endpoint. The valid value is ``INTERNET`` for connections through the public routable internet or ``VPC_LINK`` for private connections between API Gateway and a network load balancer in a VPC. The default value is ``INTERNET``."
},
"contentHandling": {
"$ref": "#/types/aws-native:apigateway:MethodIntegrationContentHandling",
- "description": "Specifies how to handle request payload content type conversions."
+ "description": "Specifies how to handle request payload content type conversions. Supported values are ``CONVERT_TO_BINARY`` and ``CONVERT_TO_TEXT``, with the following behaviors:\n If this property is not defined, the request payload will be passed through from the method request to integration request without modification, provided that the ``passthroughBehavior`` is configured to support payload pass-through."
},
"credentials": {
"type": "string",
- "description": "The credentials that are required for the integration."
+ "description": "Specifies the credentials required for the integration, if any. For AWS integrations, three options are available. To specify an IAM Role for API Gateway to assume, use the role's Amazon Resource Name (ARN). To require that the caller's identity be passed through from the request, specify the string ``arn:aws:iam::\\*:user/\\*``. To use resource-based permissions on supported AWS services, specify null."
},
"integrationHttpMethod": {
"type": "string",
- "description": "The integration's HTTP method type."
+ "description": "Specifies the integration's HTTP method type. For the Type property, if you specify ``MOCK``, this property is optional. For Lambda integrations, you must set the integration method to ``POST``. For all other types, you must specify this property."
},
"integrationResponses": {
"type": "array",
"items": {
"$ref": "#/types/aws-native:apigateway:MethodIntegrationResponse"
},
- "description": "The response that API Gateway provides after a method's backend completes processing a request."
+ "description": "Specifies the integration's responses."
},
"passthroughBehavior": {
"$ref": "#/types/aws-native:apigateway:MethodIntegrationPassthroughBehavior",
- "description": "Indicates when API Gateway passes requests to the targeted backend."
+ "description": "Specifies how the method request body of an unmapped content type will be passed through the integration request to the back end without transformation. A content type is unmapped if no mapping template is defined in the integration or the content type does not match any of the mapped content types, as specified in ``requestTemplates``. The valid value is one of the following: ``WHEN_NO_MATCH``: passes the method request body through the integration request to the back end without transformation when the method request content type does not match any content type associated with the mapping templates defined in the integration request. ``WHEN_NO_TEMPLATES``: passes the method request body through the integration request to the back end without transformation when no mapping template is defined in the integration request. If a template is defined when this option is selected, the method request of an unmapped content-type will be rejected with an HTTP 415 Unsupported Media Type response. ``NEVER``: rejects the method request with an HTTP 415 Unsupported Media Type response when either the method request content type does not match any content type associated with the mapping templates defined in the integration request or no mapping template is defined in the integration request."
},
"requestParameters": {
"$ref": "pulumi.json#/Any",
- "description": "The request parameters that API Gateway sends with the backend request."
+ "description": "A key-value map specifying request parameters that are passed from the method request to the back end. The key is an integration request parameter name and the associated value is a method request parameter value or static value that must be enclosed within single quotes and pre-encoded as required by the back end. The method request parameter value must match the pattern of ``method.request.{location}.{name}``, where ``location`` is ``querystring``, ``path``, or ``header`` and ``name`` must be a valid and unique method request parameter name."
},
"requestTemplates": {
"$ref": "pulumi.json#/Any",
- "description": "A map of Apache Velocity templates that are applied on the request payload."
+ "description": "Represents a map of Velocity templates that are applied on the request payload based on the value of the Content-Type header sent by the client. The content type value is the key in this map, and the template (as a String) is the value."
},
"timeoutInMillis": {
"type": "integer",
- "description": "Custom timeout between 50 and 29,000 milliseconds."
+ "description": "Custom timeout between 50 and 29,000 milliseconds. The default value is 29,000 milliseconds or 29 seconds."
},
"type": {
"$ref": "#/types/aws-native:apigateway:MethodIntegrationType",
- "description": "The type of backend that your method is running."
+ "description": "Specifies an API method integration type. The valid value is one of the following:\n For the HTTP and HTTP proxy integrations, each integration can specify a protocol (``http/https``), port and path. Standard 80 and 443 ports are supported as well as custom ports above 1024. An HTTP or HTTP proxy integration with a ``connectionType`` of ``VPC_LINK`` is referred to as a private integration and uses a VpcLink to connect API Gateway to a network load balancer of a VPC."
},
"uri": {
"type": "string",
- "description": "The Uniform Resource Identifier (URI) for the integration."
+ "description": "Specifies Uniform Resource Identifier (URI) of the integration endpoint.\n For ``HTTP`` or ``HTTP_PROXY`` integrations, the URI must be a fully formed, encoded HTTP(S) URL according to the RFC-3986 specification for standard integrations. If ``connectionType`` is ``VPC_LINK`` specify the Network Load Balancer DNS name. For ``AWS`` or ``AWS_PROXY`` integrations, the URI is of the form ``arn:aws:apigateway:{region}:{subdomain.service|service}:path|action/{service_api}``. Here, {Region} is the API Gateway region (e.g., us-east-1); {service} is the name of the integrated AWS service (e.g., s3); and {subdomain} is a designated subdomain supported by certain AWS service for fast host-name lookup. action can be used for an AWS service action-based API, using an Action={name}\u0026{p1}={v1}\u0026p2={v2}... query string. The ensuing {service_api} refers to a supported action {name} plus any required input parameters. Alternatively, path can be used for an AWS service path-based API. The ensuing service_api refers to the path to an AWS service resource, including the region of the integrated AWS service, if applicable. For example, for integration with the S3 API of GetObject, the uri can be either ``arn:aws:apigateway:us-west-2:s3:action/GetObject\u0026Bucket={bucket}\u0026Key={key}`` or ``arn:aws:apigateway:us-west-2:s3:path/{bucket}/{key}``"
}
},
"type": "object",
@@ -1994,7 +2001,7 @@
]
},
"aws-native:apigateway:MethodIntegrationConnectionType": {
- "description": "The type of the network connection to the integration endpoint.",
+ "description": "The type of the network connection to the integration endpoint. The valid value is ``INTERNET`` for connections through the public routable internet or ``VPC_LINK`` for private connections between API Gateway and a network load balancer in a VPC. The default value is ``INTERNET``.",
"type": "string",
"enum": [
{
@@ -2008,7 +2015,7 @@
]
},
"aws-native:apigateway:MethodIntegrationContentHandling": {
- "description": "Specifies how to handle request payload content type conversions.",
+ "description": "Specifies how to handle request payload content type conversions. Supported values are ``CONVERT_TO_BINARY`` and ``CONVERT_TO_TEXT``, with the following behaviors:\n If this property is not defined, the request payload will be passed through from the method request to integration request without modification, provided that the ``passthroughBehavior`` is configured to support payload pass-through.",
"type": "string",
"enum": [
{
@@ -2022,7 +2029,7 @@
]
},
"aws-native:apigateway:MethodIntegrationPassthroughBehavior": {
- "description": "Indicates when API Gateway passes requests to the targeted backend.",
+ "description": "Specifies how the method request body of an unmapped content type will be passed through the integration request to the back end without transformation. A content type is unmapped if no mapping template is defined in the integration or the content type does not match any of the mapped content types, as specified in ``requestTemplates``. The valid value is one of the following: ``WHEN_NO_MATCH``: passes the method request body through the integration request to the back end without transformation when the method request content type does not match any content type associated with the mapping templates defined in the integration request. ``WHEN_NO_TEMPLATES``: passes the method request body through the integration request to the back end without transformation when no mapping template is defined in the integration request. If a template is defined when this option is selected, the method request of an unmapped content-type will be rejected with an HTTP 415 Unsupported Media Type response. ``NEVER``: rejects the method request with an HTTP 415 Unsupported Media Type response when either the method request content type does not match any content type associated with the mapping templates defined in the integration request or no mapping template is defined in the integration request.",
"type": "string",
"enum": [
{
@@ -2040,26 +2047,27 @@
]
},
"aws-native:apigateway:MethodIntegrationResponse": {
+ "description": "``IntegrationResponse`` is a property of the [Amazon API Gateway Method Integration](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-method-integration.html) property type that specifies the response that API Gateway sends after a method's backend finishes processing a request.",
"properties": {
"contentHandling": {
"$ref": "#/types/aws-native:apigateway:MethodIntegrationResponseContentHandling",
- "description": "Specifies how to handle request payload content type conversions."
+ "description": "Specifies how to handle response payload content type conversions. Supported values are ``CONVERT_TO_BINARY`` and ``CONVERT_TO_TEXT``, with the following behaviors:\n If this property is not defined, the response payload will be passed through from the integration response to the method response without modification."
},
"responseParameters": {
"$ref": "pulumi.json#/Any",
- "description": "The response parameters from the backend response that API Gateway sends to the method response."
+ "description": "A key-value map specifying response parameters that are passed to the method response from the back end. The key is a method response header parameter name and the mapped value is an integration response header value, a static value enclosed within a pair of single quotes, or a JSON expression from the integration response body. The mapping key must match the pattern of ``method.response.header.{name}``, where ``name`` is a valid and unique header name. The mapped non-static value must match the pattern of ``integration.response.header.{name}`` or ``integration.response.body.{JSON-expression}``, where ``name`` is a valid and unique response header name and ``JSON-expression`` is a valid JSON expression without the ``$`` prefix."
},
"responseTemplates": {
"$ref": "pulumi.json#/Any",
- "description": "The templates that are used to transform the integration response body. Specify templates as key-value pairs (string-to-string mappings), with a content type as the key and a template as the value."
+ "description": "Specifies the templates used to transform the integration response body. Response templates are represented as a key/value map, with a content-type as the key and a template as the value."
},
"selectionPattern": {
"type": "string",
- "description": "A regular expression that specifies which error strings or status codes from the backend map to the integration response."
+ "description": "Specifies the regular expression (regex) pattern used to choose an integration response based on the response from the back end. For example, if the success response returns nothing and the error response returns some string, you could use the ``.+`` regex to match error response. However, make sure that the error response does not contain any newline (``\\n``) character in such cases. If the back end is an LAMlong function, the LAMlong function error header is matched. For all other HTTP and AWS back ends, the HTTP status code is matched."
},
"statusCode": {
"type": "string",
- "description": "The status code that API Gateway uses to map the integration response to a MethodResponse status code."
+ "description": "Specifies the status code that is used to map the integration response to an existing MethodResponse."
}
},
"type": "object",
@@ -2068,7 +2076,7 @@
]
},
"aws-native:apigateway:MethodIntegrationResponseContentHandling": {
- "description": "Specifies how to handle request payload content type conversions.",
+ "description": "Specifies how to handle response payload content type conversions. Supported values are ``CONVERT_TO_BINARY`` and ``CONVERT_TO_TEXT``, with the following behaviors:\n If this property is not defined, the response payload will be passed through from the integration response to the method response without modification.",
"type": "string",
"enum": [
{
@@ -2082,7 +2090,7 @@
]
},
"aws-native:apigateway:MethodIntegrationType": {
- "description": "The type of backend that your method is running.",
+ "description": "Specifies an API method integration type. The valid value is one of the following:\n For the HTTP and HTTP proxy integrations, each integration can specify a protocol (``http/https``), port and path. Standard 80 and 443 ports are supported as well as custom ports above 1024. An HTTP or HTTP proxy integration with a ``connectionType`` of ``VPC_LINK`` is referred to as a private integration and uses a VpcLink to connect API Gateway to a network load balancer of a VPC.",
"type": "string",
"enum": [
{
@@ -2108,18 +2116,19 @@
]
},
"aws-native:apigateway:MethodResponse": {
+ "description": "Represents a method response of a given HTTP status code returned to the client. The method response is passed from the back end through the associated integration response that can be transformed using a mapping template.",
"properties": {
"responseModels": {
"$ref": "pulumi.json#/Any",
- "description": "The resources used for the response's content type. Specify response models as key-value pairs (string-to-string maps), with a content type as the key and a Model resource name as the value."
+ "description": "Specifies the Model resources used for the response's content-type. Response models are represented as a key/value map, with a content-type as the key and a Model name as the value."
},
"responseParameters": {
"$ref": "pulumi.json#/Any",
- "description": "Response parameters that API Gateway sends to the client that called a method. Specify response parameters as key-value pairs (string-to-Boolean maps), with a destination as the key and a Boolean as the value."
+ "description": "A key-value map specifying required or optional response parameters that API Gateway can send back to the caller. A key defines a method response header and the value specifies whether the associated method response header is required or not. The expression of the key must match the pattern ``method.response.header.{name}``, where ``name`` is a valid and unique header name. API Gateway passes certain integration response data to the method response headers specified here according to the mapping you prescribe in the API's IntegrationResponse. The integration response data that can be mapped include an integration response header expressed in ``integration.response.header.{name}``, a static value enclosed within a pair of single quotes (e.g., ``'application/json'``), or a JSON expression from the back-end response payload in the form of ``integration.response.body.{JSON-expression}``, where ``JSON-expression`` is a valid JSON expression without the ``$`` prefix.)"
},
"statusCode": {
"type": "string",
- "description": "The method response's status code, which you map to an IntegrationResponse."
+ "description": "The method response's status code."
}
},
"type": "object",
@@ -2128,35 +2137,43 @@
]
},
"aws-native:apigateway:RestApiEndpointConfiguration": {
+ "description": "The ``EndpointConfiguration`` property type specifies the endpoint types of a REST API.\n ``EndpointConfiguration`` is a property of the [AWS::ApiGateway::RestApi](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html) resource.",
"properties": {
"types": {
"type": "array",
"items": {
"type": "string"
- }
+ },
+ "description": "A list of endpoint types of an API (RestApi) or its custom domain name (DomainName). For an edge-optimized API and its custom domain name, the endpoint type is ``\"EDGE\"``. For a regional API and its custom domain name, the endpoint type is ``REGIONAL``. For a private API, the endpoint type is ``PRIVATE``."
},
"vpcEndpointIds": {
"type": "array",
"items": {
"type": "string"
- }
+ },
+ "description": "A list of VpcEndpointIds of an API (RestApi) against which to create Route53 ALIASes. It is only supported for ``PRIVATE`` endpoint type."
}
},
"type": "object"
},
"aws-native:apigateway:RestApiS3Location": {
+ "description": "``S3Location`` is a property of the [AWS::ApiGateway::RestApi](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html) resource that specifies the Amazon S3 location of a OpenAPI (formerly Swagger) file that defines a set of RESTful APIs in JSON or YAML.\n On January 1, 2016, the Swagger Specification was donated to the [OpenAPI initiative](https://docs.aws.amazon.com/https://www.openapis.org/), becoming the foundation of the OpenAPI Specification.",
"properties": {
"bucket": {
- "type": "string"
+ "type": "string",
+ "description": "The name of the S3 bucket where the OpenAPI file is stored."
},
"eTag": {
- "type": "string"
+ "type": "string",
+ "description": "The Amazon S3 ETag (a file checksum) of the OpenAPI file. If you don't specify a value, API Gateway skips ETag validation of your OpenAPI file."
},
"key": {
- "type": "string"
+ "type": "string",
+ "description": "The file name of the OpenAPI file (Amazon S3 object name)."
},
"version": {
- "type": "string"
+ "type": "string",
+ "description": "For versioning-enabled buckets, a specific version of the OpenAPI file."
}
},
"type": "object"
@@ -2177,29 +2194,29 @@
]
},
"aws-native:apigateway:StageAccessLogSetting": {
- "description": "Specifies settings for logging access in this stage.",
+ "description": "The ``AccessLogSetting`` property type specifies settings for logging access in this stage.\n ``AccessLogSetting`` is a property of the [AWS::ApiGateway::Stage](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html) resource.",
"properties": {
"destinationArn": {
"type": "string",
- "description": "The Amazon Resource Name (ARN) of the CloudWatch Logs log group or Kinesis Data Firehose delivery stream to receive access logs. If you specify a Kinesis Data Firehose delivery stream, the stream name must begin with amazon-apigateway-. This parameter is required to enable access logging."
+ "description": "The Amazon Resource Name (ARN) of the CloudWatch Logs log group or Kinesis Data Firehose delivery stream to receive access logs. If you specify a Kinesis Data Firehose delivery stream, the stream name must begin with ``amazon-apigateway-``. This parameter is required to enable access logging."
},
"format": {
"type": "string",
- "description": "A single line format of the access logs of data, as specified by selected $context variables (https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-mapping-template-reference.html#context-variable-reference). The format must include at least $context.requestId. This parameter is required to enable access logging."
+ "description": "A single line format of the access logs of data, as specified by selected [$context variables](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-mapping-template-reference.html#context-variable-reference). The format must include at least ``$context.requestId``. This parameter is required to enable access logging."
}
},
"type": "object"
},
"aws-native:apigateway:StageCanarySetting": {
- "description": "Specifies settings for the canary deployment in this stage.",
+ "description": "Configuration settings of a canary deployment.",
"properties": {
"deploymentId": {
"type": "string",
- "description": "The identifier of the deployment that the stage points to."
+ "description": "The ID of the canary deployment."
},
"percentTraffic": {
"type": "number",
- "description": "The percentage (0-100) of traffic diverted to a canary deployment."
+ "description": "The percent (0-100) of traffic diverted to a canary deployment."
},
"stageVariableOverrides": {
"$ref": "pulumi.json#/Any",
@@ -2207,53 +2224,53 @@
},
"useStageCache": {
"type": "boolean",
- "description": "Whether the canary deployment uses the stage cache or not."
+ "description": "A Boolean flag to indicate whether the canary deployment uses the stage cache or not."
}
},
"type": "object"
},
"aws-native:apigateway:StageMethodSetting": {
- "description": "Configures settings for all methods in a stage.",
+ "description": "The ``MethodSetting`` property type configures settings for all methods in a stage.\n The ``MethodSettings`` property of the ``AWS::ApiGateway::Stage`` resource contains a list of ``MethodSetting`` property types.",
"properties": {
"cacheDataEncrypted": {
"type": "boolean",
- "description": "Indicates whether the cached responses are encrypted."
+ "description": "Specifies whether the cached responses are encrypted."
},
"cacheTtlInSeconds": {
"type": "integer",
- "description": "The time-to-live (TTL) period, in seconds, that specifies how long API Gateway caches responses."
+ "description": "Specifies the time to live (TTL), in seconds, for cached responses. The higher the TTL, the longer the response will be cached."
},
"cachingEnabled": {
"type": "boolean",
- "description": "Indicates whether responses are cached and returned for requests. You must enable a cache cluster on the stage to cache responses."
+ "description": "Specifies whether responses should be cached and returned for requests. A cache cluster must be enabled on the stage for responses to be cached."
},
"dataTraceEnabled": {
"type": "boolean",
- "description": "Indicates whether data trace logging is enabled for methods in the stage. API Gateway pushes these logs to Amazon CloudWatch Logs."
+ "description": "Specifies whether data trace logging is enabled for this method, which affects the log entries pushed to Amazon CloudWatch Logs. This can be useful to troubleshoot APIs, but can result in logging sensitive data. We recommend that you don't enable this option for production APIs."
},
"httpMethod": {
"type": "string",
- "description": "The HTTP method. You can use an asterisk (*) as a wildcard to apply method settings to multiple methods."
+ "description": "The HTTP method. To apply settings to multiple resources and methods, specify an asterisk (``*``) for the ``HttpMethod`` and ``/*`` for the ``ResourcePath``. This parameter is required when you specify a ``MethodSetting``."
},
"loggingLevel": {
"type": "string",
- "description": "The logging level for this method. For valid values, see the loggingLevel property of the Stage (https://docs.aws.amazon.com/apigateway/api-reference/resource/stage/#loggingLevel) resource in the Amazon API Gateway API Reference."
+ "description": "Specifies the logging level for this method, which affects the log entries pushed to Amazon CloudWatch Logs. Valid values are ``OFF``, ``ERROR``, and ``INFO``. Choose ``ERROR`` to write only error-level entries to CloudWatch Logs, or choose ``INFO`` to include all ``ERROR`` events as well as extra informational events."
},
"metricsEnabled": {
"type": "boolean",
- "description": "Indicates whether Amazon CloudWatch metrics are enabled for methods in the stage."
+ "description": "Specifies whether Amazon CloudWatch metrics are enabled for this method."
},
"resourcePath": {
"type": "string",
- "description": "The resource path for this method. Forward slashes (/) are encoded as ~1 and the initial slash must include a forward slash. For example, the path value /resource/subresource must be encoded as /~1resource~1subresource. To specify the root path, use only a slash (/). You can use an asterisk (*) as a wildcard to apply method settings to multiple methods."
+ "description": "The resource path for this method. Forward slashes (``/``) are encoded as ``~1`` and the initial slash must include a forward slash. For example, the path value ``/resource/subresource`` must be encoded as ``/~1resource~1subresource``. To specify the root path, use only a slash (``/``). To apply settings to multiple resources and methods, specify an asterisk (``*``) for the ``HttpMethod`` and ``/*`` for the ``ResourcePath``. This parameter is required when you specify a ``MethodSetting``."
},
"throttlingBurstLimit": {
"type": "integer",
- "description": "The number of burst requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account."
+ "description": "Specifies the throttling burst limit."
},
"throttlingRateLimit": {
"type": "number",
- "description": "The number of steady-state requests per second that API Gateway permits across all APIs, stages, and methods in your AWS account."
+ "description": "Specifies the throttling rate limit."
}
},
"type": "object"
@@ -2294,7 +2311,7 @@
"type": "object"
},
"aws-native:apigateway:UsagePlanKeyKeyType": {
- "description": "The type of usage plan key. Currently, the only valid key type is API_KEY.",
+ "description": "The type of a UsagePlanKey resource for a plan customer.",
"type": "string",
"enum": [
{
@@ -2486,6 +2503,24 @@
"aws-native:apigatewayv2:RouteResponseRouteParameters": {
"type": "object"
},
+ "aws-native:appconfig:ApplicationTags": {
+ "description": "Metadata to assign to the application. Tags help organize and categorize your AWS AppConfig resources. Each tag consists of a key and an optional value, both of which you define.",
+ "properties": {
+ "key": {
+ "type": "string",
+ "description": "The key-value string map. The valid character set is [a-zA-Z1-9+-=._:/]. The tag key can be up to 128 characters and must not start with aws:."
+ },
+ "value": {
+ "type": "string",
+ "description": "The tag value can be up to 256 characters."
+ }
+ },
+ "type": "object",
+ "required": [
+ "key",
+ "value"
+ ]
+ },
"aws-native:appconfig:ExtensionAssociationTag": {
"description": "A key-value pair to associate with a resource.",
"properties": {
@@ -7463,6 +7498,54 @@
},
"type": "object"
},
+ "aws-native:appsync:FunctionConfigurationAppSyncRuntime": {
+ "description": "Describes a runtime used by an AWS AppSync pipeline resolver or AWS AppSync function. Specifies the name and version of the runtime to use. Note that if a runtime is specified, code must also be specified.",
+ "properties": {
+ "name": {
+ "type": "string",
+ "description": "The name of the runtime to use. Currently, the only allowed value is APPSYNC_JS."
+ },
+ "runtimeVersion": {
+ "type": "string",
+ "description": "The version of the runtime to use. Currently, the only allowed version is 1.0.0."
+ }
+ },
+ "type": "object",
+ "required": [
+ "name",
+ "runtimeVersion"
+ ]
+ },
+ "aws-native:appsync:FunctionConfigurationLambdaConflictHandlerConfig": {
+ "description": "The LambdaConflictHandlerConfig when configuring LAMBDA as the Conflict Handler.",
+ "properties": {
+ "lambdaConflictHandlerArn": {
+ "type": "string",
+ "description": "The Amazon Resource Name (ARN) for the Lambda function to use as the Conflict Handler."
+ }
+ },
+ "type": "object"
+ },
+ "aws-native:appsync:FunctionConfigurationSyncConfig": {
+ "description": "Describes a Sync configuration for a resolver. Specifies which Conflict Detection strategy and Resolution strategy to use when the resolver is invoked.",
+ "properties": {
+ "conflictDetection": {
+ "type": "string",
+ "description": "The Conflict Detection strategy to use."
+ },
+ "conflictHandler": {
+ "type": "string",
+ "description": "The Conflict Resolution strategy to perform in the event of a conflict."
+ },
+ "lambdaConflictHandlerConfig": {
+ "$ref": "#/types/aws-native:appsync:FunctionConfigurationLambdaConflictHandlerConfig"
+ }
+ },
+ "type": "object",
+ "required": [
+ "conflictDetection"
+ ]
+ },
"aws-native:appsync:SourceApiAssociationConfig": {
"properties": {
"mergeType": {
@@ -13492,11 +13575,7 @@
"type": "boolean"
}
},
- "type": "object",
- "required": [
- "clientId",
- "providerName"
- ]
+ "type": "object"
},
"aws-native:cognito:IdentityPoolCognitoStreams": {
"properties": {
@@ -13526,24 +13605,6 @@
},
"type": "object"
},
- "aws-native:cognito:IdentityPoolTag": {
- "description": "A key-value pair to associate with a resource.",
- "properties": {
- "key": {
- "type": "string",
- "description": "The key name of the tag. You can specify a value that is 1 to 128 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -."
- },
- "value": {
- "type": "string",
- "description": "The value for the tag. You can specify a value that is 0 to 256 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -."
- }
- },
- "type": "object",
- "required": [
- "key",
- "value"
- ]
- },
"aws-native:cognito:LogDeliveryConfigurationCloudWatchLogsConfiguration": {
"properties": {
"logGroupArn": {
@@ -13566,6 +13627,254 @@
},
"type": "object"
},
+ "aws-native:cognito:UserPoolAccountRecoverySetting": {
+ "properties": {
+ "recoveryMechanisms": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:cognito:UserPoolRecoveryOption"
+ }
+ }
+ },
+ "type": "object"
+ },
+ "aws-native:cognito:UserPoolAddOns": {
+ "properties": {
+ "advancedSecurityMode": {
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "aws-native:cognito:UserPoolAdminCreateUserConfig": {
+ "properties": {
+ "allowAdminCreateUserOnly": {
+ "type": "boolean"
+ },
+ "inviteMessageTemplate": {
+ "$ref": "#/types/aws-native:cognito:UserPoolInviteMessageTemplate"
+ },
+ "unusedAccountValidityDays": {
+ "type": "integer"
+ }
+ },
+ "type": "object"
+ },
+ "aws-native:cognito:UserPoolCustomEmailSender": {
+ "properties": {
+ "lambdaArn": {
+ "type": "string"
+ },
+ "lambdaVersion": {
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "aws-native:cognito:UserPoolCustomSmsSender": {
+ "properties": {
+ "lambdaArn": {
+ "type": "string"
+ },
+ "lambdaVersion": {
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "aws-native:cognito:UserPoolDeviceConfiguration": {
+ "properties": {
+ "challengeRequiredOnNewDevice": {
+ "type": "boolean"
+ },
+ "deviceOnlyRememberedOnUserPrompt": {
+ "type": "boolean"
+ }
+ },
+ "type": "object"
+ },
+ "aws-native:cognito:UserPoolEmailConfiguration": {
+ "properties": {
+ "configurationSet": {
+ "type": "string"
+ },
+ "emailSendingAccount": {
+ "type": "string"
+ },
+ "from": {
+ "type": "string"
+ },
+ "replyToEmailAddress": {
+ "type": "string"
+ },
+ "sourceArn": {
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "aws-native:cognito:UserPoolInviteMessageTemplate": {
+ "properties": {
+ "emailMessage": {
+ "type": "string"
+ },
+ "emailSubject": {
+ "type": "string"
+ },
+ "smsMessage": {
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "aws-native:cognito:UserPoolLambdaConfig": {
+ "properties": {
+ "createAuthChallenge": {
+ "type": "string"
+ },
+ "customEmailSender": {
+ "$ref": "#/types/aws-native:cognito:UserPoolCustomEmailSender"
+ },
+ "customMessage": {
+ "type": "string"
+ },
+ "customSmsSender": {
+ "$ref": "#/types/aws-native:cognito:UserPoolCustomSmsSender"
+ },
+ "defineAuthChallenge": {
+ "type": "string"
+ },
+ "kmsKeyId": {
+ "type": "string"
+ },
+ "postAuthentication": {
+ "type": "string"
+ },
+ "postConfirmation": {
+ "type": "string"
+ },
+ "preAuthentication": {
+ "type": "string"
+ },
+ "preSignUp": {
+ "type": "string"
+ },
+ "preTokenGeneration": {
+ "type": "string"
+ },
+ "userMigration": {
+ "type": "string"
+ },
+ "verifyAuthChallengeResponse": {
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "aws-native:cognito:UserPoolNumberAttributeConstraints": {
+ "properties": {
+ "maxValue": {
+ "type": "string"
+ },
+ "minValue": {
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "aws-native:cognito:UserPoolPasswordPolicy": {
+ "properties": {
+ "minimumLength": {
+ "type": "integer"
+ },
+ "requireLowercase": {
+ "type": "boolean"
+ },
+ "requireNumbers": {
+ "type": "boolean"
+ },
+ "requireSymbols": {
+ "type": "boolean"
+ },
+ "requireUppercase": {
+ "type": "boolean"
+ },
+ "temporaryPasswordValidityDays": {
+ "type": "integer"
+ }
+ },
+ "type": "object"
+ },
+ "aws-native:cognito:UserPoolPolicies": {
+ "properties": {
+ "passwordPolicy": {
+ "$ref": "#/types/aws-native:cognito:UserPoolPasswordPolicy"
+ }
+ },
+ "type": "object"
+ },
+ "aws-native:cognito:UserPoolRecoveryOption": {
+ "properties": {
+ "name": {
+ "type": "string"
+ },
+ "priority": {
+ "type": "integer"
+ }
+ },
+ "type": "object"
+ },
+ "aws-native:cognito:UserPoolSchemaAttribute": {
+ "properties": {
+ "attributeDataType": {
+ "type": "string"
+ },
+ "developerOnlyAttribute": {
+ "type": "boolean"
+ },
+ "mutable": {
+ "type": "boolean"
+ },
+ "name": {
+ "type": "string"
+ },
+ "numberAttributeConstraints": {
+ "$ref": "#/types/aws-native:cognito:UserPoolNumberAttributeConstraints"
+ },
+ "required": {
+ "type": "boolean"
+ },
+ "stringAttributeConstraints": {
+ "$ref": "#/types/aws-native:cognito:UserPoolStringAttributeConstraints"
+ }
+ },
+ "type": "object"
+ },
+ "aws-native:cognito:UserPoolSmsConfiguration": {
+ "properties": {
+ "externalId": {
+ "type": "string"
+ },
+ "snsCallerArn": {
+ "type": "string"
+ },
+ "snsRegion": {
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "aws-native:cognito:UserPoolStringAttributeConstraints": {
+ "properties": {
+ "maxLength": {
+ "type": "string"
+ },
+ "minLength": {
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
"aws-native:cognito:UserPoolUserAttributeType": {
"properties": {
"name": {
@@ -13577,6 +13886,51 @@
},
"type": "object"
},
+ "aws-native:cognito:UserPoolUserAttributeUpdateSettings": {
+ "properties": {
+ "attributesRequireVerificationBeforeUpdate": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ },
+ "type": "object",
+ "required": [
+ "attributesRequireVerificationBeforeUpdate"
+ ]
+ },
+ "aws-native:cognito:UserPoolUsernameConfiguration": {
+ "properties": {
+ "caseSensitive": {
+ "type": "boolean"
+ }
+ },
+ "type": "object"
+ },
+ "aws-native:cognito:UserPoolVerificationMessageTemplate": {
+ "properties": {
+ "defaultEmailOption": {
+ "type": "string"
+ },
+ "emailMessage": {
+ "type": "string"
+ },
+ "emailMessageByLink": {
+ "type": "string"
+ },
+ "emailSubject": {
+ "type": "string"
+ },
+ "emailSubjectByLink": {
+ "type": "string"
+ },
+ "smsMessage": {
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
"aws-native:comprehend:DocumentClassifierAugmentedManifestsListItem": {
"properties": {
"attributeNames": {
@@ -15845,34 +16199,6 @@
},
"type": "object"
},
- "aws-native:connect:ContactFlowModuleState": {
- "description": "The state of the contact flow module.",
- "type": "string",
- "enum": [
- {
- "name": "Active",
- "value": "ACTIVE"
- },
- {
- "name": "Archived",
- "value": "ARCHIVED"
- }
- ]
- },
- "aws-native:connect:ContactFlowModuleStatus": {
- "description": "The status of the contact flow module.",
- "type": "string",
- "enum": [
- {
- "name": "Published",
- "value": "PUBLISHED"
- },
- {
- "name": "Saved",
- "value": "SAVED"
- }
- ]
- },
"aws-native:connect:ContactFlowModuleTag": {
"description": "A key-value pair to associate with a resource.",
"properties": {
@@ -17940,6 +18266,321 @@
"uri"
]
},
+ "aws-native:customerprofiles:DomainAttributeTypesSelector": {
+ "description": "Configures information about the AttributeTypesSelector where the rule-based identity resolution uses to match profiles.",
+ "properties": {
+ "address": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "The Address type. You can choose from Address, BusinessAddress, MaillingAddress, and ShippingAddress. You only can use the Address type in the MatchingRule. For example, if you want to match profile based on BusinessAddress.City or MaillingAddress.City, you need to choose the BusinessAddress and the MaillingAddress to represent the Address type and specify the Address.City on the matching rule."
+ },
+ "attributeMatchingModel": {
+ "$ref": "#/types/aws-native:customerprofiles:DomainAttributeTypesSelectorAttributeMatchingModel",
+ "description": "Configures the AttributeMatchingModel, you can either choose ONE_TO_ONE or MANY_TO_MANY."
+ },
+ "emailAddress": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "The Email type. You can choose from EmailAddress, BusinessEmailAddress and PersonalEmailAddress. You only can use the EmailAddress type in the MatchingRule. For example, if you want to match profile based on PersonalEmailAddress or BusinessEmailAddress, you need to choose the PersonalEmailAddress and the BusinessEmailAddress to represent the EmailAddress type and only specify the EmailAddress on the matching rule."
+ },
+ "phoneNumber": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "The PhoneNumber type. You can choose from PhoneNumber, HomePhoneNumber, and MobilePhoneNumber. You only can use the PhoneNumber type in the MatchingRule. For example, if you want to match a profile based on Phone or HomePhone, you need to choose the Phone and the HomePhone to represent the PhoneNumber type and only specify the PhoneNumber on the matching rule."
+ }
+ },
+ "type": "object",
+ "required": [
+ "attributeMatchingModel"
+ ]
+ },
+ "aws-native:customerprofiles:DomainAttributeTypesSelectorAttributeMatchingModel": {
+ "description": "Configures the AttributeMatchingModel, you can either choose ONE_TO_ONE or MANY_TO_MANY.",
+ "type": "string",
+ "enum": [
+ {
+ "name": "OneToOne",
+ "value": "ONE_TO_ONE"
+ },
+ {
+ "name": "ManyToMany",
+ "value": "MANY_TO_MANY"
+ }
+ ]
+ },
+ "aws-native:customerprofiles:DomainAutoMerging": {
+ "description": "Configuration information about the auto-merging process.",
+ "properties": {
+ "conflictResolution": {
+ "$ref": "#/types/aws-native:customerprofiles:DomainConflictResolution"
+ },
+ "consolidation": {
+ "$ref": "#/types/aws-native:customerprofiles:DomainConsolidation"
+ },
+ "enabled": {
+ "type": "boolean",
+ "description": "The flag that enables the auto-merging of duplicate profiles."
+ },
+ "minAllowedConfidenceScoreForMerging": {
+ "type": "number",
+ "description": "A number between 0 and 1 that represents the minimum confidence score required for profiles within a matching group to be merged during the auto-merge process. A higher score means higher similarity required to merge profiles."
+ }
+ },
+ "type": "object",
+ "required": [
+ "enabled"
+ ]
+ },
+ "aws-native:customerprofiles:DomainConflictResolution": {
+ "description": "How the auto-merging process should resolve conflicts between different profiles. For example, if Profile A and Profile B have the same FirstName and LastName (and that is the matching criteria), which EmailAddress should be used? ",
+ "properties": {
+ "conflictResolvingModel": {
+ "$ref": "#/types/aws-native:customerprofiles:DomainConflictResolutionConflictResolvingModel",
+ "description": "How the auto-merging process should resolve conflicts between different profiles."
+ },
+ "sourceName": {
+ "type": "string",
+ "description": "The ObjectType name that is used to resolve profile merging conflicts when choosing SOURCE as the ConflictResolvingModel."
+ }
+ },
+ "type": "object",
+ "required": [
+ "conflictResolvingModel"
+ ]
+ },
+ "aws-native:customerprofiles:DomainConflictResolutionConflictResolvingModel": {
+ "description": "How the auto-merging process should resolve conflicts between different profiles.",
+ "type": "string",
+ "enum": [
+ {
+ "name": "Recency",
+ "value": "RECENCY"
+ },
+ {
+ "name": "Source",
+ "value": "SOURCE"
+ }
+ ]
+ },
+ "aws-native:customerprofiles:DomainConsolidation": {
+ "description": "A list of matching attributes that represent matching criteria. If two profiles meet at least one of the requirements in the matching attributes list, they will be merged.",
+ "properties": {
+ "matchingAttributesList": {
+ "type": "array",
+ "items": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "description": "A list of matching criteria."
+ }
+ },
+ "type": "object",
+ "required": [
+ "matchingAttributesList"
+ ]
+ },
+ "aws-native:customerprofiles:DomainExportingConfig": {
+ "description": "Configuration information for exporting Identity Resolution results, for example, to an S3 bucket.",
+ "properties": {
+ "s3Exporting": {
+ "$ref": "#/types/aws-native:customerprofiles:DomainS3ExportingConfig"
+ }
+ },
+ "type": "object"
+ },
+ "aws-native:customerprofiles:DomainJobSchedule": {
+ "description": "The day and time when do you want to start the Identity Resolution Job every week.",
+ "properties": {
+ "dayOfTheWeek": {
+ "$ref": "#/types/aws-native:customerprofiles:DomainJobScheduleDayOfTheWeek",
+ "description": "The day when the Identity Resolution Job should run every week."
+ },
+ "time": {
+ "type": "string",
+ "description": "The time when the Identity Resolution Job should run every week."
+ }
+ },
+ "type": "object",
+ "required": [
+ "dayOfTheWeek",
+ "time"
+ ]
+ },
+ "aws-native:customerprofiles:DomainJobScheduleDayOfTheWeek": {
+ "description": "The day when the Identity Resolution Job should run every week.",
+ "type": "string",
+ "enum": [
+ {
+ "name": "Sunday",
+ "value": "SUNDAY"
+ },
+ {
+ "name": "Monday",
+ "value": "MONDAY"
+ },
+ {
+ "name": "Tuesday",
+ "value": "TUESDAY"
+ },
+ {
+ "name": "Wednesday",
+ "value": "WEDNESDAY"
+ },
+ {
+ "name": "Thursday",
+ "value": "THURSDAY"
+ },
+ {
+ "name": "Friday",
+ "value": "FRIDAY"
+ },
+ {
+ "name": "Saturday",
+ "value": "SATURDAY"
+ }
+ ]
+ },
+ "aws-native:customerprofiles:DomainMatching": {
+ "description": "The process of matching duplicate profiles. If Matching = true, Amazon Connect Customer Profiles starts a weekly batch process called Identity Resolution Job. If you do not specify a date and time for Identity Resolution Job to run, by default it runs every Saturday at 12AM UTC to detect duplicate profiles in your domains. After the Identity Resolution Job completes, use the GetMatches API to return and review the results. Or, if you have configured ExportingConfig in the MatchingRequest, you can download the results from S3.",
+ "properties": {
+ "autoMerging": {
+ "$ref": "#/types/aws-native:customerprofiles:DomainAutoMerging"
+ },
+ "enabled": {
+ "type": "boolean",
+ "description": "The flag that enables the matching process of duplicate profiles."
+ },
+ "exportingConfig": {
+ "$ref": "#/types/aws-native:customerprofiles:DomainExportingConfig"
+ },
+ "jobSchedule": {
+ "$ref": "#/types/aws-native:customerprofiles:DomainJobSchedule"
+ }
+ },
+ "type": "object",
+ "required": [
+ "enabled"
+ ]
+ },
+ "aws-native:customerprofiles:DomainMatchingRule": {
+ "description": "Specifies how does the rule-based matching process should match profiles.",
+ "properties": {
+ "rule": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ },
+ "type": "object",
+ "required": [
+ "rule"
+ ]
+ },
+ "aws-native:customerprofiles:DomainRuleBasedMatching": {
+ "description": "The process of matching duplicate profiles using the Rule-Based matching. If RuleBasedMatching = true, Amazon Connect Customer Profiles will start to match and merge your profiles according to your configuration in the RuleBasedMatchingRequest. You can use the ListRuleBasedMatches and GetSimilarProfiles API to return and review the results. Also, if you have configured ExportingConfig in the RuleBasedMatchingRequest, you can download the results from S3.",
+ "properties": {
+ "attributeTypesSelector": {
+ "$ref": "#/types/aws-native:customerprofiles:DomainAttributeTypesSelector"
+ },
+ "conflictResolution": {
+ "$ref": "#/types/aws-native:customerprofiles:DomainConflictResolution"
+ },
+ "enabled": {
+ "type": "boolean",
+ "description": "The flag that enables the rule-based matching process of duplicate profiles."
+ },
+ "exportingConfig": {
+ "$ref": "#/types/aws-native:customerprofiles:DomainExportingConfig"
+ },
+ "matchingRules": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:customerprofiles:DomainMatchingRule"
+ },
+ "description": "Configures how the rule-based matching process should match profiles. You can have up to 15 MatchingRule in the MatchingRules."
+ },
+ "maxAllowedRuleLevelForMatching": {
+ "type": "integer",
+ "description": "Indicates the maximum allowed rule level for matching."
+ },
+ "maxAllowedRuleLevelForMerging": {
+ "type": "integer",
+ "description": "Indicates the maximum allowed rule level for merging."
+ },
+ "status": {
+ "$ref": "#/types/aws-native:customerprofiles:DomainRuleBasedMatchingStatus"
+ }
+ },
+ "type": "object",
+ "required": [
+ "enabled"
+ ]
+ },
+ "aws-native:customerprofiles:DomainRuleBasedMatchingStatus": {
+ "type": "string",
+ "enum": [
+ {
+ "name": "Pending",
+ "value": "PENDING"
+ },
+ {
+ "name": "InProgress",
+ "value": "IN_PROGRESS"
+ },
+ {
+ "name": "Active",
+ "value": "ACTIVE"
+ }
+ ]
+ },
+ "aws-native:customerprofiles:DomainS3ExportingConfig": {
+ "description": "The S3 location where Identity Resolution Jobs write result files.",
+ "properties": {
+ "s3BucketName": {
+ "type": "string",
+ "description": "The name of the S3 bucket where Identity Resolution Jobs write result files."
+ },
+ "s3KeyName": {
+ "type": "string",
+ "description": "The S3 key name of the location where Identity Resolution Jobs write result files."
+ }
+ },
+ "type": "object",
+ "required": [
+ "s3BucketName"
+ ]
+ },
+ "aws-native:customerprofiles:DomainStats": {
+ "description": "Usage-specific statistics about the domain.",
+ "properties": {
+ "meteringProfileCount": {
+ "type": "number",
+ "description": "The number of profiles that you are currently paying for in the domain. If you have more than 100 objects associated with a single profile, that profile counts as two profiles. If you have more than 200 objects, that profile counts as three, and so on."
+ },
+ "objectCount": {
+ "type": "number",
+ "description": "The total number of objects in domain."
+ },
+ "profileCount": {
+ "type": "number",
+ "description": "The total number of profiles currently in the domain."
+ },
+ "totalSize": {
+ "type": "number",
+ "description": "The total size, in bytes, of all objects in the domain."
+ }
+ },
+ "type": "object"
+ },
"aws-native:customerprofiles:DomainTag": {
"properties": {
"key": {
@@ -31601,6 +32242,106 @@
"aws-native:emrserverless:ApplicationWorkerTypeSpecificationInputMap": {
"type": "object"
},
+ "aws-native:entityresolution:IdMappingWorkflowIdMappingTechniques": {
+ "properties": {
+ "idMappingType": {
+ "$ref": "#/types/aws-native:entityresolution:IdMappingWorkflowIdMappingTechniquesIdMappingType"
+ },
+ "providerProperties": {
+ "$ref": "#/types/aws-native:entityresolution:IdMappingWorkflowProviderProperties"
+ }
+ },
+ "type": "object"
+ },
+ "aws-native:entityresolution:IdMappingWorkflowIdMappingTechniquesIdMappingType": {
+ "type": "string",
+ "enum": [
+ {
+ "name": "Provider",
+ "value": "PROVIDER"
+ }
+ ]
+ },
+ "aws-native:entityresolution:IdMappingWorkflowInputSource": {
+ "properties": {
+ "inputSourceArn": {
+ "type": "string",
+ "description": "An Glue table ARN for the input source table"
+ },
+ "schemaArn": {
+ "type": "string"
+ }
+ },
+ "type": "object",
+ "required": [
+ "inputSourceArn",
+ "schemaArn"
+ ]
+ },
+ "aws-native:entityresolution:IdMappingWorkflowIntermediateSourceConfiguration": {
+ "properties": {
+ "intermediateS3Path": {
+ "type": "string",
+ "description": "The s3 path that would be used to stage the intermediate data being generated during workflow execution."
+ }
+ },
+ "type": "object",
+ "required": [
+ "intermediateS3Path"
+ ]
+ },
+ "aws-native:entityresolution:IdMappingWorkflowOutputSource": {
+ "properties": {
+ "kmsArn": {
+ "type": "string"
+ },
+ "outputS3Path": {
+ "type": "string",
+ "description": "The S3 path to which Entity Resolution will write the output table"
+ }
+ },
+ "type": "object",
+ "required": [
+ "outputS3Path"
+ ]
+ },
+ "aws-native:entityresolution:IdMappingWorkflowProviderProperties": {
+ "properties": {
+ "intermediateSourceConfiguration": {
+ "$ref": "#/types/aws-native:entityresolution:IdMappingWorkflowIntermediateSourceConfiguration"
+ },
+ "providerConfiguration": {
+ "$ref": "pulumi.json#/Any",
+ "description": "Additional Provider configuration that would be required for the provider service. The Configuration must be in JSON string format"
+ },
+ "providerServiceArn": {
+ "type": "string",
+ "description": "Arn of the Provider Service being used."
+ }
+ },
+ "type": "object",
+ "required": [
+ "providerServiceArn"
+ ]
+ },
+ "aws-native:entityresolution:IdMappingWorkflowTag": {
+ "description": "A key-value pair to associate with a resource",
+ "properties": {
+ "key": {
+ "type": "string",
+ "description": "The key name of the tag. You can specify a value that is 1 to 128 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -."
+ },
+ "value": {
+ "type": "string",
+ "description": "The value for the tag. You can specify a value that is 0 to 256 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -."
+ }
+ },
+ "type": "object",
+ "required": [
+ "key",
+ "value"
+ ]
+ },
"aws-native:entityresolution:MatchingWorkflowInputSource": {
"properties": {
"applyNormalization": {
@@ -32468,12 +33209,6 @@
"sql": {
"type": "string"
},
- "sqls": {
- "type": "array",
- "items": {
- "type": "string"
- }
- },
"statementName": {
"type": "string"
},
@@ -32566,20 +33301,6 @@
"messageGroupId"
]
},
- "aws-native:events:RuleState": {
- "description": "The state of the rule.",
- "type": "string",
- "enum": [
- {
- "name": "Disabled",
- "value": "DISABLED"
- },
- {
- "name": "Enabled",
- "value": "ENABLED"
- }
- ]
- },
"aws-native:events:RuleTag": {
"properties": {
"key": {
@@ -34869,6 +35590,16 @@
}
]
},
+ "aws-native:gamelift:FleetInstanceRoleCredentialsProvider": {
+ "description": "Credentials provider implementation that loads credentials from the Amazon EC2 Instance Metadata Service.",
+ "type": "string",
+ "enum": [
+ {
+ "name": "SharedCredentialFile",
+ "value": "SHARED_CREDENTIAL_FILE"
+ }
+ ]
+ },
"aws-native:gamelift:FleetIpPermission": {
"description": "A range of IP addresses and port settings that allow inbound traffic to connect to server processes on an Amazon GameLift hosting resource. New game sessions that are started on the fleet are assigned an IP address/port number combination, which must fall into the fleet's allowed ranges. For fleets created with a custom game server, the ranges reflect the server's game session assignments. For Realtime Servers fleets, Amazon GameLift automatically opens two port ranges, one for TCP messaging and one for UDP, for use by the Realtime servers.",
"properties": {
@@ -36985,6 +37716,23 @@
"value"
]
},
+ "aws-native:iam:GroupPolicy": {
+ "properties": {
+ "policyDocument": {
+ "type": "string",
+ "description": "The policy document."
+ },
+ "policyName": {
+ "type": "string",
+ "description": "The friendly name (not ARN) identifying the policy."
+ }
+ },
+ "type": "object",
+ "required": [
+ "policyDocument",
+ "policyName"
+ ]
+ },
"aws-native:iam:OidcProviderTag": {
"description": "A key-value pair to associate with a resource.",
"properties": {
@@ -40964,6 +41712,21 @@
}
]
},
+ "aws-native:iot:PolicyTag": {
+ "properties": {
+ "key": {
+ "type": "string"
+ },
+ "value": {
+ "type": "string"
+ }
+ },
+ "type": "object",
+ "required": [
+ "key",
+ "value"
+ ]
+ },
"aws-native:iot:PresignedUrlConfigProperties": {
"description": "Configuration for pre-signed S3 URLs.",
"properties": {
@@ -59590,6 +60353,199 @@
},
"type": "object"
},
+ "aws-native:msk:ReplicatorAmazonMskCluster": {
+ "description": "Details of an Amazon MSK cluster.",
+ "properties": {
+ "mskClusterArn": {
+ "type": "string",
+ "description": "The ARN of an Amazon MSK cluster."
+ }
+ },
+ "type": "object",
+ "required": [
+ "mskClusterArn"
+ ]
+ },
+ "aws-native:msk:ReplicatorConsumerGroupReplication": {
+ "description": "Configuration relating to consumer group replication.",
+ "properties": {
+ "consumerGroupsToExclude": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "List of regular expression patterns indicating the consumer groups that should not be replicated."
+ },
+ "consumerGroupsToReplicate": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "List of regular expression patterns indicating the consumer groups to copy."
+ },
+ "detectAndCopyNewConsumerGroups": {
+ "type": "boolean",
+ "description": "Whether to periodically check for new consumer groups."
+ },
+ "synchroniseConsumerGroupOffsets": {
+ "type": "boolean",
+ "description": "Whether to periodically write the translated offsets to __consumer_offsets topic in target cluster."
+ }
+ },
+ "type": "object",
+ "required": [
+ "consumerGroupsToReplicate"
+ ]
+ },
+ "aws-native:msk:ReplicatorKafkaCluster": {
+ "description": "Details of a Kafka cluster for replication.",
+ "properties": {
+ "amazonMskCluster": {
+ "$ref": "#/types/aws-native:msk:ReplicatorAmazonMskCluster",
+ "description": "Details of an Amazon MSK cluster. Exactly one of AmazonMskCluster is required."
+ },
+ "vpcConfig": {
+ "$ref": "#/types/aws-native:msk:ReplicatorKafkaClusterClientVpcConfig",
+ "description": "Details of an Amazon VPC which has network connectivity to the Apache Kafka cluster."
+ }
+ },
+ "type": "object",
+ "required": [
+ "amazonMskCluster",
+ "vpcConfig"
+ ]
+ },
+ "aws-native:msk:ReplicatorKafkaClusterClientVpcConfig": {
+ "description": "Details of an Amazon VPC which has network connectivity to the Kafka cluster.",
+ "properties": {
+ "securityGroupIds": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "The AWS security groups to associate with the elastic network interfaces in order to specify what the replicator has access to. If a security group is not specified, the default security group associated with the VPC is used."
+ },
+ "subnetIds": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "The list of subnets to connect to in the virtual private cloud (VPC). AWS creates elastic network interfaces inside these subnets."
+ }
+ },
+ "type": "object",
+ "required": [
+ "subnetIds"
+ ]
+ },
+ "aws-native:msk:ReplicatorReplicationInfo": {
+ "description": "Specifies configuration for replication between a source and target Kafka cluster.",
+ "properties": {
+ "consumerGroupReplication": {
+ "$ref": "#/types/aws-native:msk:ReplicatorConsumerGroupReplication",
+ "description": "Configuration relating to consumer group replication."
+ },
+ "sourceKafkaClusterArn": {
+ "type": "string",
+ "description": "Amazon Resource Name of the source Kafka cluster."
+ },
+ "targetCompressionType": {
+ "$ref": "#/types/aws-native:msk:ReplicatorReplicationInfoTargetCompressionType",
+ "description": "The type of compression to use writing records to target Kafka cluster."
+ },
+ "targetKafkaClusterArn": {
+ "type": "string",
+ "description": "Amazon Resource Name of the target Kafka cluster."
+ },
+ "topicReplication": {
+ "$ref": "#/types/aws-native:msk:ReplicatorTopicReplication",
+ "description": "Configuration relating to topic replication."
+ }
+ },
+ "type": "object",
+ "required": [
+ "consumerGroupReplication",
+ "sourceKafkaClusterArn",
+ "targetCompressionType",
+ "targetKafkaClusterArn",
+ "topicReplication"
+ ]
+ },
+ "aws-native:msk:ReplicatorReplicationInfoTargetCompressionType": {
+ "description": "The type of compression to use writing records to target Kafka cluster.",
+ "type": "string",
+ "enum": [
+ {
+ "name": "None",
+ "value": "NONE"
+ },
+ {
+ "name": "Gzip",
+ "value": "GZIP"
+ },
+ {
+ "name": "Snappy",
+ "value": "SNAPPY"
+ },
+ {
+ "name": "Lz4",
+ "value": "LZ4"
+ },
+ {
+ "name": "Zstd",
+ "value": "ZSTD"
+ }
+ ]
+ },
+ "aws-native:msk:ReplicatorTag": {
+ "properties": {
+ "key": {
+ "type": "string"
+ },
+ "value": {
+ "type": "string"
+ }
+ },
+ "type": "object",
+ "required": [
+ "key",
+ "value"
+ ]
+ },
+ "aws-native:msk:ReplicatorTopicReplication": {
+ "properties": {
+ "copyAccessControlListsForTopics": {
+ "type": "boolean",
+ "description": "Whether to periodically configure remote topic ACLs to match their corresponding upstream topics."
+ },
+ "copyTopicConfigurations": {
+ "type": "boolean",
+ "description": "Whether to periodically configure remote topics to match their corresponding upstream topics."
+ },
+ "detectAndCopyNewTopics": {
+ "type": "boolean",
+ "description": "Whether to periodically check for new topics and partitions."
+ },
+ "topicsToExclude": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "List of regular expression patterns indicating the topics that should not be replicated."
+ },
+ "topicsToReplicate": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "List of regular expression patterns indicating the topics to copy."
+ }
+ },
+ "type": "object",
+ "required": [
+ "topicsToReplicate"
+ ]
+ },
"aws-native:msk:ServerlessClusterClientAuthentication": {
"properties": {
"sasl": {
@@ -75547,6 +76503,30 @@
}
]
},
+ "aws-native:quicksight:AnalysisValidationStrategy": {
+ "properties": {
+ "mode": {
+ "$ref": "#/types/aws-native:quicksight:AnalysisValidationStrategyMode"
+ }
+ },
+ "type": "object",
+ "required": [
+ "mode"
+ ]
+ },
+ "aws-native:quicksight:AnalysisValidationStrategyMode": {
+ "type": "string",
+ "enum": [
+ {
+ "name": "Strict",
+ "value": "STRICT"
+ },
+ {
+ "name": "Lenient",
+ "value": "LENIENT"
+ }
+ ]
+ },
"aws-native:quicksight:AnalysisValueWhenUnsetOption": {
"type": "string",
"enum": [
@@ -85877,6 +86857,30 @@
}
]
},
+ "aws-native:quicksight:DashboardValidationStrategy": {
+ "properties": {
+ "mode": {
+ "$ref": "#/types/aws-native:quicksight:DashboardValidationStrategyMode"
+ }
+ },
+ "type": "object",
+ "required": [
+ "mode"
+ ]
+ },
+ "aws-native:quicksight:DashboardValidationStrategyMode": {
+ "type": "string",
+ "enum": [
+ {
+ "name": "Strict",
+ "value": "STRICT"
+ },
+ {
+ "name": "Lenient",
+ "value": "LENIENT"
+ }
+ ]
+ },
"aws-native:quicksight:DashboardValueWhenUnsetOption": {
"type": "string",
"enum": [
@@ -97575,6 +98579,30 @@
}
]
},
+ "aws-native:quicksight:TemplateValidationStrategy": {
+ "properties": {
+ "mode": {
+ "$ref": "#/types/aws-native:quicksight:TemplateValidationStrategyMode"
+ }
+ },
+ "type": "object",
+ "required": [
+ "mode"
+ ]
+ },
+ "aws-native:quicksight:TemplateValidationStrategyMode": {
+ "type": "string",
+ "enum": [
+ {
+ "name": "Strict",
+ "value": "STRICT"
+ },
+ {
+ "name": "Lenient",
+ "value": "LENIENT"
+ }
+ ]
+ },
"aws-native:quicksight:TemplateValueWhenUnsetOption": {
"type": "string",
"enum": [
@@ -103482,11 +104510,9 @@
"type": "object"
},
"aws-native:s3:BucketAbortIncompleteMultipartUpload": {
- "description": "Specifies the days since the initiation of an incomplete multipart upload that Amazon S3 will wait before permanently removing all parts of the upload.",
"properties": {
"daysAfterInitiation": {
- "type": "integer",
- "description": "Specifies the number of days after which Amazon S3 aborts an incomplete multipart upload."
+ "type": "integer"
}
},
"type": "object",
@@ -103497,8 +104523,7 @@
"aws-native:s3:BucketAccelerateConfiguration": {
"properties": {
"accelerationStatus": {
- "$ref": "#/types/aws-native:s3:BucketAccelerateConfigurationAccelerationStatus",
- "description": "Configures the transfer acceleration state for an Amazon S3 bucket."
+ "type": "string"
}
},
"type": "object",
@@ -103506,60 +104531,7 @@
"accelerationStatus"
]
},
- "aws-native:s3:BucketAccelerateConfigurationAccelerationStatus": {
- "description": "Configures the transfer acceleration state for an Amazon S3 bucket.",
- "type": "string",
- "enum": [
- {
- "name": "Enabled",
- "value": "Enabled"
- },
- {
- "name": "Suspended",
- "value": "Suspended"
- }
- ]
- },
- "aws-native:s3:BucketAccessControl": {
- "description": "A canned access control list (ACL) that grants predefined permissions to the bucket.",
- "type": "string",
- "enum": [
- {
- "name": "AuthenticatedRead",
- "value": "AuthenticatedRead"
- },
- {
- "name": "AwsExecRead",
- "value": "AwsExecRead"
- },
- {
- "name": "BucketOwnerFullControl",
- "value": "BucketOwnerFullControl"
- },
- {
- "name": "BucketOwnerRead",
- "value": "BucketOwnerRead"
- },
- {
- "name": "LogDeliveryWrite",
- "value": "LogDeliveryWrite"
- },
- {
- "name": "Private",
- "value": "Private"
- },
- {
- "name": "PublicRead",
- "value": "PublicRead"
- },
- {
- "name": "PublicReadWrite",
- "value": "PublicReadWrite"
- }
- ]
- },
"aws-native:s3:BucketAccessControlTranslation": {
- "description": "Specify this only in a cross-account scenario (where source and destination bucket owners are not the same), and you want to change replica ownership to the AWS account that owns the destination bucket. If this is not specified in the replication configuration, the replicas are owned by same AWS account that owns the source object.",
"properties": {
"owner": {
"type": "string"
@@ -103571,15 +104543,12 @@
]
},
"aws-native:s3:BucketAnalyticsConfiguration": {
- "description": "Specifies the configuration and any analyses for the analytics filter of an Amazon S3 bucket.",
"properties": {
"id": {
- "type": "string",
- "description": "The ID that identifies the analytics configuration."
+ "type": "string"
},
"prefix": {
- "type": "string",
- "description": "The prefix that an object must have to be included in the analytics results."
+ "type": "string"
},
"storageClassAnalysis": {
"$ref": "#/types/aws-native:s3:BucketStorageClassAnalysis"
@@ -103612,43 +104581,36 @@
]
},
"aws-native:s3:BucketCorsRule": {
- "description": "A set of origins and methods (cross-origin access that you want to allow). You can add up to 100 rules to the configuration.",
"properties": {
"allowedHeaders": {
"type": "array",
"items": {
"type": "string"
- },
- "description": "Headers that are specified in the Access-Control-Request-Headers header."
+ }
},
"allowedMethods": {
"type": "array",
"items": {
- "$ref": "#/types/aws-native:s3:BucketCorsRuleAllowedMethodsItem"
- },
- "description": "An HTTP method that you allow the origin to execute."
+ "type": "string"
+ }
},
"allowedOrigins": {
"type": "array",
"items": {
"type": "string"
- },
- "description": "One or more origins you want customers to be able to access the bucket from."
+ }
},
"exposedHeaders": {
"type": "array",
"items": {
"type": "string"
- },
- "description": "One or more headers in the response that you want customers to be able to access from their applications (for example, from a JavaScript XMLHttpRequest object)."
+ }
},
"id": {
- "type": "string",
- "description": "A unique identifier for this rule."
+ "type": "string"
},
"maxAge": {
- "type": "integer",
- "description": "The time in seconds that your browser is to cache the preflight response for the specified resource."
+ "type": "integer"
}
},
"type": "object",
@@ -103657,40 +104619,13 @@
"allowedOrigins"
]
},
- "aws-native:s3:BucketCorsRuleAllowedMethodsItem": {
- "type": "string",
- "enum": [
- {
- "name": "Get",
- "value": "GET"
- },
- {
- "name": "Put",
- "value": "PUT"
- },
- {
- "name": "Head",
- "value": "HEAD"
- },
- {
- "name": "Post",
- "value": "POST"
- },
- {
- "name": "Delete",
- "value": "DELETE"
- }
- ]
- },
"aws-native:s3:BucketDataExport": {
- "description": "Specifies how data related to the storage class analysis for an Amazon S3 bucket should be exported.",
"properties": {
"destination": {
"$ref": "#/types/aws-native:s3:BucketDestination"
},
"outputSchemaVersion": {
- "type": "string",
- "description": "The version of the output schema to use when exporting data."
+ "type": "string"
}
},
"type": "object",
@@ -103700,13 +104635,12 @@
]
},
"aws-native:s3:BucketDefaultRetention": {
- "description": "The default retention period that you want to apply to new objects placed in the specified bucket.",
"properties": {
"days": {
"type": "integer"
},
"mode": {
- "$ref": "#/types/aws-native:s3:BucketDefaultRetentionMode"
+ "type": "string"
},
"years": {
"type": "integer"
@@ -103714,58 +104648,27 @@
},
"type": "object"
},
- "aws-native:s3:BucketDefaultRetentionMode": {
- "type": "string",
- "enum": [
- {
- "name": "Compliance",
- "value": "COMPLIANCE"
- },
- {
- "name": "Governance",
- "value": "GOVERNANCE"
- }
- ]
- },
"aws-native:s3:BucketDeleteMarkerReplication": {
"properties": {
"status": {
- "$ref": "#/types/aws-native:s3:BucketDeleteMarkerReplicationStatus"
+ "type": "string"
}
},
"type": "object"
},
- "aws-native:s3:BucketDeleteMarkerReplicationStatus": {
- "type": "string",
- "enum": [
- {
- "name": "Disabled",
- "value": "Disabled"
- },
- {
- "name": "Enabled",
- "value": "Enabled"
- }
- ]
- },
"aws-native:s3:BucketDestination": {
- "description": "Specifies information about where to publish analysis or configuration results for an Amazon S3 bucket and S3 Replication Time Control (S3 RTC).",
"properties": {
"bucketAccountId": {
- "type": "string",
- "description": "The account ID that owns the destination S3 bucket. "
+ "type": "string"
},
"bucketArn": {
- "type": "string",
- "description": "The Amazon Resource Name (ARN) of the bucket to which data is exported."
+ "type": "string"
},
"format": {
- "$ref": "#/types/aws-native:s3:BucketDestinationFormat",
- "description": "Specifies the file format used when exporting data to Amazon S3."
+ "type": "string"
},
"prefix": {
- "type": "string",
- "description": "The prefix to use when exporting data. The prefix is prepended to all results."
+ "type": "string"
}
},
"type": "object",
@@ -103774,33 +104677,13 @@
"format"
]
},
- "aws-native:s3:BucketDestinationFormat": {
- "description": "Specifies the file format used when exporting data to Amazon S3.",
- "type": "string",
- "enum": [
- {
- "name": "Csv",
- "value": "CSV"
- },
- {
- "name": "Orc",
- "value": "ORC"
- },
- {
- "name": "Parquet",
- "value": "Parquet"
- }
- ]
- },
"aws-native:s3:BucketEncryption": {
- "description": "Specifies default encryption for a bucket using server-side encryption with either Amazon S3-managed keys (SSE-S3) or AWS KMS-managed keys (SSE-KMS).",
"properties": {
"serverSideEncryptionConfiguration": {
"type": "array",
"items": {
"$ref": "#/types/aws-native:s3:BucketServerSideEncryptionRule"
- },
- "description": "Specifies the default server-side-encryption configuration."
+ }
}
},
"type": "object",
@@ -103809,11 +104692,9 @@
]
},
"aws-native:s3:BucketEncryptionConfiguration": {
- "description": "Specifies encryption-related information for an Amazon S3 bucket that is a destination for replicated objects.",
"properties": {
"replicaKmsKeyId": {
- "type": "string",
- "description": "Specifies the ID (Key ARN or Alias ARN) of the customer managed customer master key (CMK) stored in AWS Key Management Service (KMS) for the destination bucket."
+ "type": "string"
}
},
"type": "object",
@@ -103822,20 +104703,14 @@
]
},
"aws-native:s3:BucketEventBridgeConfiguration": {
- "description": "Describes the Amazon EventBridge notification configuration for an Amazon S3 bucket.",
"properties": {
"eventBridgeEnabled": {
- "type": "boolean",
- "description": "Specifies whether to send notifications to Amazon EventBridge when events occur in an Amazon S3 bucket."
+ "type": "boolean"
}
},
- "type": "object",
- "required": [
- "eventBridgeEnabled"
- ]
+ "type": "object"
},
"aws-native:s3:BucketFilterRule": {
- "description": "Specifies the Amazon S3 object key name to filter on and whether to filter on the suffix or prefix of the key name.",
"properties": {
"name": {
"type": "string"
@@ -103853,30 +104728,25 @@
"aws-native:s3:BucketIntelligentTieringConfiguration": {
"properties": {
"id": {
- "type": "string",
- "description": "The ID used to identify the S3 Intelligent-Tiering configuration."
+ "type": "string"
},
"prefix": {
- "type": "string",
- "description": "An object key name prefix that identifies the subset of objects to which the rule applies."
+ "type": "string"
},
"status": {
- "$ref": "#/types/aws-native:s3:BucketIntelligentTieringConfigurationStatus",
- "description": "Specifies the status of the configuration."
+ "type": "string"
},
"tagFilters": {
"type": "array",
"items": {
"$ref": "#/types/aws-native:s3:BucketTagFilter"
- },
- "description": "A container for a key-value pair."
+ }
},
"tierings": {
"type": "array",
"items": {
"$ref": "#/types/aws-native:s3:BucketTiering"
- },
- "description": "Specifies a list of S3 Intelligent-Tiering storage class tiers in the configuration. At least one tier must be defined in the list. At most, you can specify two tiers in the list, one for each available AccessTier: ARCHIVE_ACCESS and DEEP_ARCHIVE_ACCESS."
+ }
}
},
"type": "object",
@@ -103886,51 +104756,31 @@
"tierings"
]
},
- "aws-native:s3:BucketIntelligentTieringConfigurationStatus": {
- "description": "Specifies the status of the configuration.",
- "type": "string",
- "enum": [
- {
- "name": "Disabled",
- "value": "Disabled"
- },
- {
- "name": "Enabled",
- "value": "Enabled"
- }
- ]
- },
"aws-native:s3:BucketInventoryConfiguration": {
"properties": {
"destination": {
"$ref": "#/types/aws-native:s3:BucketDestination"
},
"enabled": {
- "type": "boolean",
- "description": "Specifies whether the inventory is enabled or disabled."
+ "type": "boolean"
},
"id": {
- "type": "string",
- "description": "The ID used to identify the inventory configuration."
+ "type": "string"
},
"includedObjectVersions": {
- "$ref": "#/types/aws-native:s3:BucketInventoryConfigurationIncludedObjectVersions",
- "description": "Object versions to include in the inventory list."
+ "type": "string"
},
"optionalFields": {
"type": "array",
"items": {
- "$ref": "#/types/aws-native:s3:BucketInventoryConfigurationOptionalFieldsItem"
- },
- "description": "Contains the optional fields that are included in the inventory results."
+ "type": "string"
+ }
},
"prefix": {
- "type": "string",
- "description": "The prefix that is prepended to all inventory results."
+ "type": "string"
},
"scheduleFrequency": {
- "$ref": "#/types/aws-native:s3:BucketInventoryConfigurationScheduleFrequency",
- "description": "Specifies the schedule for generating inventory results."
+ "type": "string"
}
},
"type": "object",
@@ -103942,101 +104792,16 @@
"scheduleFrequency"
]
},
- "aws-native:s3:BucketInventoryConfigurationIncludedObjectVersions": {
- "description": "Object versions to include in the inventory list.",
- "type": "string",
- "enum": [
- {
- "name": "All",
- "value": "All"
- },
- {
- "name": "Current",
- "value": "Current"
- }
- ]
- },
- "aws-native:s3:BucketInventoryConfigurationOptionalFieldsItem": {
- "type": "string",
- "enum": [
- {
- "name": "Size",
- "value": "Size"
- },
- {
- "name": "LastModifiedDate",
- "value": "LastModifiedDate"
- },
- {
- "name": "StorageClass",
- "value": "StorageClass"
- },
- {
- "name": "ETag",
- "value": "ETag"
- },
- {
- "name": "IsMultipartUploaded",
- "value": "IsMultipartUploaded"
- },
- {
- "name": "ReplicationStatus",
- "value": "ReplicationStatus"
- },
- {
- "name": "EncryptionStatus",
- "value": "EncryptionStatus"
- },
- {
- "name": "ObjectLockRetainUntilDate",
- "value": "ObjectLockRetainUntilDate"
- },
- {
- "name": "ObjectLockMode",
- "value": "ObjectLockMode"
- },
- {
- "name": "ObjectLockLegalHoldStatus",
- "value": "ObjectLockLegalHoldStatus"
- },
- {
- "name": "IntelligentTieringAccessTier",
- "value": "IntelligentTieringAccessTier"
- },
- {
- "name": "BucketKeyStatus",
- "value": "BucketKeyStatus"
- }
- ]
- },
- "aws-native:s3:BucketInventoryConfigurationScheduleFrequency": {
- "description": "Specifies the schedule for generating inventory results.",
- "type": "string",
- "enum": [
- {
- "name": "Daily",
- "value": "Daily"
- },
- {
- "name": "Weekly",
- "value": "Weekly"
- }
- ]
- },
"aws-native:s3:BucketLambdaConfiguration": {
- "description": "Describes the AWS Lambda functions to invoke and the events for which to invoke them.",
"properties": {
"event": {
- "type": "string",
- "description": "The Amazon S3 bucket event for which to invoke the AWS Lambda function."
+ "type": "string"
},
"filter": {
- "$ref": "#/types/aws-native:s3:BucketNotificationFilter",
- "description": "The filtering rules that determine which objects invoke the AWS Lambda function."
+ "$ref": "#/types/aws-native:s3:BucketNotificationFilter"
},
"function": {
- "type": "string",
- "description": "The Amazon Resource Name (ARN) of the AWS Lambda function that Amazon S3 invokes when the specified event type occurs."
+ "type": "string"
}
},
"type": "object",
@@ -104051,8 +104816,7 @@
"type": "array",
"items": {
"$ref": "#/types/aws-native:s3:BucketRule"
- },
- "description": "A lifecycle rule for individual objects in an Amazon S3 bucket."
+ }
}
},
"type": "object",
@@ -104063,8 +104827,7 @@
"aws-native:s3:BucketLoggingConfiguration": {
"properties": {
"destinationBucketName": {
- "type": "string",
- "description": "The name of an Amazon S3 bucket where Amazon S3 store server access log files. You can store log files in any bucket that you own. By default, logs are stored in the bucket where the LoggingConfiguration property is defined."
+ "type": "string"
},
"logFilePrefix": {
"type": "string"
@@ -104078,7 +104841,7 @@
"$ref": "#/types/aws-native:s3:BucketReplicationTimeValue"
},
"status": {
- "$ref": "#/types/aws-native:s3:BucketMetricsStatus"
+ "type": "string"
}
},
"type": "object",
@@ -104109,29 +104872,13 @@
"id"
]
},
- "aws-native:s3:BucketMetricsStatus": {
- "type": "string",
- "enum": [
- {
- "name": "Disabled",
- "value": "Disabled"
- },
- {
- "name": "Enabled",
- "value": "Enabled"
- }
- ]
- },
"aws-native:s3:BucketNoncurrentVersionExpiration": {
- "description": "Container for the expiration rule that describes when noncurrent objects are expired. If your bucket is versioning-enabled (or versioning is suspended), you can set this action to request that Amazon S3 expire noncurrent object versions at a specific period in the object's lifetime",
"properties": {
"newerNoncurrentVersions": {
- "type": "integer",
- "description": "Specified the number of newer noncurrent and current versions that must exists before performing the associated action"
+ "type": "integer"
},
"noncurrentDays": {
- "type": "integer",
- "description": "Specified the number of days an object is noncurrent before Amazon S3 can perform the associated action"
+ "type": "integer"
}
},
"type": "object",
@@ -104140,19 +104887,15 @@
]
},
"aws-native:s3:BucketNoncurrentVersionTransition": {
- "description": "Container for the transition rule that describes when noncurrent objects transition to the STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER_IR, GLACIER, or DEEP_ARCHIVE storage class. If your bucket is versioning-enabled (or versioning is suspended), you can set this action to request that Amazon S3 transition noncurrent object versions to the STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER_IR, GLACIER, or DEEP_ARCHIVE storage class at a specific period in the object's lifetime.",
"properties": {
"newerNoncurrentVersions": {
- "type": "integer",
- "description": "Specified the number of newer noncurrent and current versions that must exists before performing the associated action"
+ "type": "integer"
},
"storageClass": {
- "$ref": "#/types/aws-native:s3:BucketNoncurrentVersionTransitionStorageClass",
- "description": "The class of storage used to store the object."
+ "type": "string"
},
"transitionInDays": {
- "type": "integer",
- "description": "Specifies the number of days an object is noncurrent before Amazon S3 can perform the associated action."
+ "type": "integer"
}
},
"type": "object",
@@ -104161,38 +104904,7 @@
"transitionInDays"
]
},
- "aws-native:s3:BucketNoncurrentVersionTransitionStorageClass": {
- "description": "The class of storage used to store the object.",
- "type": "string",
- "enum": [
- {
- "name": "DeepArchive",
- "value": "DEEP_ARCHIVE"
- },
- {
- "name": "Glacier",
- "value": "GLACIER"
- },
- {
- "name": "GlacierIr",
- "value": "GLACIER_IR"
- },
- {
- "name": "IntelligentTiering",
- "value": "INTELLIGENT_TIERING"
- },
- {
- "name": "OnezoneIa",
- "value": "ONEZONE_IA"
- },
- {
- "name": "StandardIa",
- "value": "STANDARD_IA"
- }
- ]
- },
"aws-native:s3:BucketNotificationConfiguration": {
- "description": "Describes the notification configuration for an Amazon S3 bucket.",
"properties": {
"eventBridgeConfiguration": {
"$ref": "#/types/aws-native:s3:BucketEventBridgeConfiguration"
@@ -104219,7 +104931,6 @@
"type": "object"
},
"aws-native:s3:BucketNotificationFilter": {
- "description": "Specifies object key name filtering rules.",
"properties": {
"s3Key": {
"$ref": "#/types/aws-native:s3:BucketS3KeyFilter"
@@ -104242,7 +104953,6 @@
"type": "object"
},
"aws-native:s3:BucketObjectLockRule": {
- "description": "The Object Lock rule in place for the specified object.",
"properties": {
"defaultRetention": {
"$ref": "#/types/aws-native:s3:BucketDefaultRetention"
@@ -104267,66 +104977,38 @@
"aws-native:s3:BucketOwnershipControlsRule": {
"properties": {
"objectOwnership": {
- "$ref": "#/types/aws-native:s3:BucketOwnershipControlsRuleObjectOwnership",
- "description": "Specifies an object ownership rule."
+ "type": "string"
}
},
"type": "object"
},
- "aws-native:s3:BucketOwnershipControlsRuleObjectOwnership": {
- "description": "Specifies an object ownership rule.",
- "type": "string",
- "enum": [
- {
- "name": "ObjectWriter",
- "value": "ObjectWriter"
- },
- {
- "name": "BucketOwnerPreferred",
- "value": "BucketOwnerPreferred"
- },
- {
- "name": "BucketOwnerEnforced",
- "value": "BucketOwnerEnforced"
- }
- ]
- },
"aws-native:s3:BucketPublicAccessBlockConfiguration": {
- "description": "Configuration that defines how Amazon S3 handles public access.",
"properties": {
"blockPublicAcls": {
- "type": "boolean",
- "description": "Specifies whether Amazon S3 should block public access control lists (ACLs) for this bucket and objects in this bucket. Setting this element to TRUE causes the following behavior:\n- PUT Bucket acl and PUT Object acl calls fail if the specified ACL is public.\n - PUT Object calls fail if the request includes a public ACL.\nEnabling this setting doesn't affect existing policies or ACLs."
+ "type": "boolean"
},
"blockPublicPolicy": {
- "type": "boolean",
- "description": "Specifies whether Amazon S3 should block public bucket policies for this bucket. Setting this element to TRUE causes Amazon S3 to reject calls to PUT Bucket policy if the specified bucket policy allows public access.\nEnabling this setting doesn't affect existing bucket policies."
+ "type": "boolean"
},
"ignorePublicAcls": {
- "type": "boolean",
- "description": "Specifies whether Amazon S3 should ignore public ACLs for this bucket and objects in this bucket. Setting this element to TRUE causes Amazon S3 to ignore all public ACLs on this bucket and objects in this bucket.\nEnabling this setting doesn't affect the persistence of any existing ACLs and doesn't prevent new public ACLs from being set."
+ "type": "boolean"
},
"restrictPublicBuckets": {
- "type": "boolean",
- "description": "Specifies whether Amazon S3 should restrict public bucket policies for this bucket. Setting this element to TRUE restricts access to this bucket to only AWS services and authorized users within this account if the bucket has a public policy.\nEnabling this setting doesn't affect previously stored bucket policies, except that public and cross-account access within any public bucket policy, including non-public delegation to specific accounts, is blocked."
+ "type": "boolean"
}
},
"type": "object"
},
"aws-native:s3:BucketQueueConfiguration": {
- "description": "The Amazon Simple Queue Service queues to publish messages to and the events for which to publish messages.",
"properties": {
"event": {
- "type": "string",
- "description": "The Amazon S3 bucket event about which you want to publish messages to Amazon SQS."
+ "type": "string"
},
"filter": {
- "$ref": "#/types/aws-native:s3:BucketNotificationFilter",
- "description": "The filtering rules that determine which objects trigger notifications."
+ "$ref": "#/types/aws-native:s3:BucketNotificationFilter"
},
"queue": {
- "type": "string",
- "description": "The Amazon Resource Name (ARN) of the Amazon SQS queue to which Amazon S3 publishes a message when it detects events of the specified type."
+ "type": "string"
}
},
"type": "object",
@@ -104336,15 +105018,12 @@
]
},
"aws-native:s3:BucketRedirectAllRequestsTo": {
- "description": "Specifies the redirect behavior of all requests to a website endpoint of an Amazon S3 bucket.",
"properties": {
"hostName": {
- "type": "string",
- "description": "Name of the host where requests are redirected."
+ "type": "string"
},
"protocol": {
- "$ref": "#/types/aws-native:s3:BucketRedirectAllRequestsToProtocol",
- "description": "Protocol to use when redirecting requests. The default is the protocol that is used in the original request."
+ "type": "string"
}
},
"type": "object",
@@ -104352,65 +105031,30 @@
"hostName"
]
},
- "aws-native:s3:BucketRedirectAllRequestsToProtocol": {
- "description": "Protocol to use when redirecting requests. The default is the protocol that is used in the original request.",
- "type": "string",
- "enum": [
- {
- "name": "Http",
- "value": "http"
- },
- {
- "name": "Https",
- "value": "https"
- }
- ]
- },
"aws-native:s3:BucketRedirectRule": {
- "description": "Specifies how requests are redirected. In the event of an error, you can specify a different error code to return.",
"properties": {
"hostName": {
- "type": "string",
- "description": "The host name to use in the redirect request."
+ "type": "string"
},
"httpRedirectCode": {
- "type": "string",
- "description": "The HTTP redirect code to use on the response. Not required if one of the siblings is present."
+ "type": "string"
},
"protocol": {
- "$ref": "#/types/aws-native:s3:BucketRedirectRuleProtocol",
- "description": "Protocol to use when redirecting requests. The default is the protocol that is used in the original request."
+ "type": "string"
},
"replaceKeyPrefixWith": {
- "type": "string",
- "description": "The object key prefix to use in the redirect request."
+ "type": "string"
},
"replaceKeyWith": {
- "type": "string",
- "description": "The specific object key to use in the redirect request.d"
+ "type": "string"
}
},
"type": "object"
},
- "aws-native:s3:BucketRedirectRuleProtocol": {
- "description": "Protocol to use when redirecting requests. The default is the protocol that is used in the original request.",
- "type": "string",
- "enum": [
- {
- "name": "Http",
- "value": "http"
- },
- {
- "name": "Https",
- "value": "https"
- }
- ]
- },
"aws-native:s3:BucketReplicaModifications": {
"properties": {
"status": {
- "$ref": "#/types/aws-native:s3:BucketReplicaModificationsStatus",
- "description": "Specifies whether Amazon S3 replicates modifications on replicas."
+ "type": "string"
}
},
"type": "object",
@@ -104418,33 +105062,16 @@
"status"
]
},
- "aws-native:s3:BucketReplicaModificationsStatus": {
- "description": "Specifies whether Amazon S3 replicates modifications on replicas.",
- "type": "string",
- "enum": [
- {
- "name": "Enabled",
- "value": "Enabled"
- },
- {
- "name": "Disabled",
- "value": "Disabled"
- }
- ]
- },
"aws-native:s3:BucketReplicationConfiguration": {
- "description": "A container for replication rules. You can add up to 1,000 rules. The maximum size of a replication configuration is 2 MB.",
"properties": {
"role": {
- "type": "string",
- "description": "The Amazon Resource Name (ARN) of the AWS Identity and Access Management (IAM) role that Amazon S3 assumes when replicating objects."
+ "type": "string"
},
"rules": {
"type": "array",
"items": {
"$ref": "#/types/aws-native:s3:BucketReplicationRule"
- },
- "description": "A container for one or more replication rules."
+ }
}
},
"type": "object",
@@ -104454,7 +105081,6 @@
]
},
"aws-native:s3:BucketReplicationDestination": {
- "description": "Specifies which Amazon S3 bucket to store replicated objects in and their storage class.",
"properties": {
"accessControlTranslation": {
"$ref": "#/types/aws-native:s3:BucketAccessControlTranslation"
@@ -104475,8 +105101,7 @@
"$ref": "#/types/aws-native:s3:BucketReplicationTime"
},
"storageClass": {
- "$ref": "#/types/aws-native:s3:BucketReplicationDestinationStorageClass",
- "description": "The storage class to use when replicating objects, such as S3 Standard or reduced redundancy."
+ "type": "string"
}
},
"type": "object",
@@ -104484,46 +105109,7 @@
"bucket"
]
},
- "aws-native:s3:BucketReplicationDestinationStorageClass": {
- "description": "The storage class to use when replicating objects, such as S3 Standard or reduced redundancy.",
- "type": "string",
- "enum": [
- {
- "name": "DeepArchive",
- "value": "DEEP_ARCHIVE"
- },
- {
- "name": "Glacier",
- "value": "GLACIER"
- },
- {
- "name": "GlacierIr",
- "value": "GLACIER_IR"
- },
- {
- "name": "IntelligentTiering",
- "value": "INTELLIGENT_TIERING"
- },
- {
- "name": "OnezoneIa",
- "value": "ONEZONE_IA"
- },
- {
- "name": "ReducedRedundancy",
- "value": "REDUCED_REDUNDANCY"
- },
- {
- "name": "Standard",
- "value": "STANDARD"
- },
- {
- "name": "StandardIa",
- "value": "STANDARD_IA"
- }
- ]
- },
"aws-native:s3:BucketReplicationRule": {
- "description": "Specifies which Amazon S3 objects to replicate and where to store the replicas.",
"properties": {
"deleteMarkerReplication": {
"$ref": "#/types/aws-native:s3:BucketDeleteMarkerReplication"
@@ -104535,12 +105121,10 @@
"$ref": "#/types/aws-native:s3:BucketReplicationRuleFilter"
},
"id": {
- "type": "string",
- "description": "A unique identifier for the rule."
+ "type": "string"
},
"prefix": {
- "type": "string",
- "description": "An object key name prefix that identifies the object or objects to which the rule applies."
+ "type": "string"
},
"priority": {
"type": "integer"
@@ -104549,8 +105133,7 @@
"$ref": "#/types/aws-native:s3:BucketSourceSelectionCriteria"
},
"status": {
- "$ref": "#/types/aws-native:s3:BucketReplicationRuleStatus",
- "description": "Specifies whether the rule is enabled."
+ "type": "string"
}
},
"type": "object",
@@ -104587,24 +105170,10 @@
},
"type": "object"
},
- "aws-native:s3:BucketReplicationRuleStatus": {
- "description": "Specifies whether the rule is enabled.",
- "type": "string",
- "enum": [
- {
- "name": "Disabled",
- "value": "Disabled"
- },
- {
- "name": "Enabled",
- "value": "Enabled"
- }
- ]
- },
"aws-native:s3:BucketReplicationTime": {
"properties": {
"status": {
- "$ref": "#/types/aws-native:s3:BucketReplicationTimeStatus"
+ "type": "string"
},
"time": {
"$ref": "#/types/aws-native:s3:BucketReplicationTimeValue"
@@ -104616,19 +105185,6 @@
"time"
]
},
- "aws-native:s3:BucketReplicationTimeStatus": {
- "type": "string",
- "enum": [
- {
- "name": "Disabled",
- "value": "Disabled"
- },
- {
- "name": "Enabled",
- "value": "Enabled"
- }
- ]
- },
"aws-native:s3:BucketReplicationTimeValue": {
"properties": {
"minutes": {
@@ -104641,11 +105197,9 @@
]
},
"aws-native:s3:BucketRoutingRule": {
- "description": "Specifies the redirect behavior and when a redirect is applied.",
"properties": {
"redirectRule": {
- "$ref": "#/types/aws-native:s3:BucketRedirectRule",
- "description": "Container for redirect information. You can redirect requests to another host, to another page, or with another protocol. In the event of an error, you can specify a different error code to return."
+ "$ref": "#/types/aws-native:s3:BucketRedirectRule"
},
"routingRuleCondition": {
"$ref": "#/types/aws-native:s3:BucketRoutingRuleCondition"
@@ -104657,21 +105211,17 @@
]
},
"aws-native:s3:BucketRoutingRuleCondition": {
- "description": "A container for describing a condition that must be met for the specified redirect to apply.You must specify at least one of HttpErrorCodeReturnedEquals and KeyPrefixEquals",
"properties": {
"httpErrorCodeReturnedEquals": {
- "type": "string",
- "description": "The HTTP error code when the redirect is applied. "
+ "type": "string"
},
"keyPrefixEquals": {
- "type": "string",
- "description": "The object key name prefix when the redirect is applied."
+ "type": "string"
}
},
"type": "object"
},
"aws-native:s3:BucketRule": {
- "description": "You must specify at least one of the following properties: AbortIncompleteMultipartUpload, ExpirationDate, ExpirationInDays, NoncurrentVersionExpirationInDays, NoncurrentVersionTransition, NoncurrentVersionTransitions, Transition, or Transitions.",
"properties": {
"abortIncompleteMultipartUpload": {
"$ref": "#/types/aws-native:s3:BucketAbortIncompleteMultipartUpload"
@@ -104704,16 +105254,16 @@
}
},
"objectSizeGreaterThan": {
- "type": "string"
+ "type": "integer"
},
"objectSizeLessThan": {
- "type": "string"
+ "type": "integer"
},
"prefix": {
"type": "string"
},
"status": {
- "$ref": "#/types/aws-native:s3:BucketRuleStatus"
+ "type": "string"
},
"tagFilters": {
"type": "array",
@@ -104736,21 +105286,7 @@
"status"
]
},
- "aws-native:s3:BucketRuleStatus": {
- "type": "string",
- "enum": [
- {
- "name": "Enabled",
- "value": "Enabled"
- },
- {
- "name": "Disabled",
- "value": "Disabled"
- }
- ]
- },
"aws-native:s3:BucketS3KeyFilter": {
- "description": "A container for object key name prefix and suffix filtering rules.",
"properties": {
"rules": {
"type": "array",
@@ -104765,14 +105301,12 @@
]
},
"aws-native:s3:BucketServerSideEncryptionByDefault": {
- "description": "Specifies the default server-side encryption to apply to new objects in the bucket. If a PUT Object request doesn't specify any server-side encryption, this default encryption will be applied.",
"properties": {
"kmsMasterKeyId": {
- "type": "string",
- "description": "\"KMSMasterKeyID\" can only be used when you set the value of SSEAlgorithm as aws:kms or aws:kms:dsse."
+ "type": "string"
},
"sseAlgorithm": {
- "$ref": "#/types/aws-native:s3:BucketServerSideEncryptionByDefaultSseAlgorithm"
+ "type": "string"
}
},
"type": "object",
@@ -104780,29 +105314,10 @@
"sseAlgorithm"
]
},
- "aws-native:s3:BucketServerSideEncryptionByDefaultSseAlgorithm": {
- "type": "string",
- "enum": [
- {
- "name": "Awskms",
- "value": "aws:kms"
- },
- {
- "name": "Aes256",
- "value": "AES256"
- },
- {
- "name": "Awskmsdsse",
- "value": "aws:kms:dsse"
- }
- ]
- },
"aws-native:s3:BucketServerSideEncryptionRule": {
- "description": "Specifies the default server-side encryption configuration.",
"properties": {
"bucketKeyEnabled": {
- "type": "boolean",
- "description": "Specifies whether Amazon S3 should use an S3 Bucket Key with server-side encryption using KMS (SSE-KMS) for new objects in the bucket. Existing objects are not affected. Setting the BucketKeyEnabled element to true causes Amazon S3 to use an S3 Bucket Key. By default, S3 Bucket Key is not enabled."
+ "type": "boolean"
},
"serverSideEncryptionByDefault": {
"$ref": "#/types/aws-native:s3:BucketServerSideEncryptionByDefault"
@@ -104811,25 +105326,20 @@
"type": "object"
},
"aws-native:s3:BucketSourceSelectionCriteria": {
- "description": "A container that describes additional filters for identifying the source objects that you want to replicate.",
"properties": {
"replicaModifications": {
- "$ref": "#/types/aws-native:s3:BucketReplicaModifications",
- "description": "A filter that you can specify for selection for modifications on replicas."
+ "$ref": "#/types/aws-native:s3:BucketReplicaModifications"
},
"sseKmsEncryptedObjects": {
- "$ref": "#/types/aws-native:s3:BucketSseKmsEncryptedObjects",
- "description": "A container for filter information for the selection of Amazon S3 objects encrypted with AWS KMS."
+ "$ref": "#/types/aws-native:s3:BucketSseKmsEncryptedObjects"
}
},
"type": "object"
},
"aws-native:s3:BucketSseKmsEncryptedObjects": {
- "description": "A container for filter information for the selection of S3 objects encrypted with AWS KMS.",
"properties": {
"status": {
- "$ref": "#/types/aws-native:s3:BucketSseKmsEncryptedObjectsStatus",
- "description": "Specifies whether Amazon S3 replicates objects created with server-side encryption using a customer master key (CMK) stored in AWS Key Management Service."
+ "type": "string"
}
},
"type": "object",
@@ -104837,22 +105347,7 @@
"status"
]
},
- "aws-native:s3:BucketSseKmsEncryptedObjectsStatus": {
- "description": "Specifies whether Amazon S3 replicates objects created with server-side encryption using a customer master key (CMK) stored in AWS Key Management Service.",
- "type": "string",
- "enum": [
- {
- "name": "Disabled",
- "value": "Disabled"
- },
- {
- "name": "Enabled",
- "value": "Enabled"
- }
- ]
- },
"aws-native:s3:BucketStorageClassAnalysis": {
- "description": "Specifies data related to access patterns to be collected and made available to analyze the tradeoffs between different storage classes for an Amazon S3 bucket.",
"properties": {
"dataExport": {
"$ref": "#/types/aws-native:s3:BucketDataExport"
@@ -104876,7 +105371,6 @@
]
},
"aws-native:s3:BucketTagFilter": {
- "description": "Tags to use to identify a subset of objects for an Amazon S3 bucket.",
"properties": {
"key": {
"type": "string"
@@ -104894,12 +105388,10 @@
"aws-native:s3:BucketTiering": {
"properties": {
"accessTier": {
- "$ref": "#/types/aws-native:s3:BucketTieringAccessTier",
- "description": "S3 Intelligent-Tiering access tier. See Storage class for automatically optimizing frequently and infrequently accessed objects for a list of access tiers in the S3 Intelligent-Tiering storage class."
+ "type": "string"
},
"days": {
- "type": "integer",
- "description": "The number of consecutive days of no access after which an object will be eligible to be transitioned to the corresponding tier. The minimum number of days specified for Archive Access tier must be at least 90 days and Deep Archive Access tier must be at least 180 days. The maximum can be up to 2 years (730 days)."
+ "type": "integer"
}
},
"type": "object",
@@ -104908,34 +105400,16 @@
"days"
]
},
- "aws-native:s3:BucketTieringAccessTier": {
- "description": "S3 Intelligent-Tiering access tier. See Storage class for automatically optimizing frequently and infrequently accessed objects for a list of access tiers in the S3 Intelligent-Tiering storage class.",
- "type": "string",
- "enum": [
- {
- "name": "ArchiveAccess",
- "value": "ARCHIVE_ACCESS"
- },
- {
- "name": "DeepArchiveAccess",
- "value": "DEEP_ARCHIVE_ACCESS"
- }
- ]
- },
"aws-native:s3:BucketTopicConfiguration": {
- "description": "The topic to which notifications are sent and the events for which notifications are generated.",
"properties": {
"event": {
- "type": "string",
- "description": "The Amazon S3 bucket event about which to send notifications."
+ "type": "string"
},
"filter": {
- "$ref": "#/types/aws-native:s3:BucketNotificationFilter",
- "description": "The filtering rules that determine for which objects to send notifications."
+ "$ref": "#/types/aws-native:s3:BucketNotificationFilter"
},
"topic": {
- "type": "string",
- "description": "The Amazon Resource Name (ARN) of the Amazon SNS topic to which Amazon S3 publishes a message when it detects events of the specified type."
+ "type": "string"
}
},
"type": "object",
@@ -104945,10 +105419,9 @@
]
},
"aws-native:s3:BucketTransition": {
- "description": "You must specify at least one of \"TransitionDate\" and \"TransitionInDays\"",
"properties": {
"storageClass": {
- "$ref": "#/types/aws-native:s3:BucketTransitionStorageClass"
+ "type": "string"
},
"transitionDate": {
"type": "string"
@@ -104962,41 +105435,10 @@
"storageClass"
]
},
- "aws-native:s3:BucketTransitionStorageClass": {
- "type": "string",
- "enum": [
- {
- "name": "DeepArchive",
- "value": "DEEP_ARCHIVE"
- },
- {
- "name": "Glacier",
- "value": "GLACIER"
- },
- {
- "name": "GlacierIr",
- "value": "GLACIER_IR"
- },
- {
- "name": "IntelligentTiering",
- "value": "INTELLIGENT_TIERING"
- },
- {
- "name": "OnezoneIa",
- "value": "ONEZONE_IA"
- },
- {
- "name": "StandardIa",
- "value": "STANDARD_IA"
- }
- ]
- },
"aws-native:s3:BucketVersioningConfiguration": {
- "description": "Describes the versioning state of an Amazon S3 bucket.",
"properties": {
"status": {
- "$ref": "#/types/aws-native:s3:BucketVersioningConfigurationStatus",
- "description": "The versioning state of the bucket."
+ "type": "string"
}
},
"type": "object",
@@ -105004,30 +105446,13 @@
"status"
]
},
- "aws-native:s3:BucketVersioningConfigurationStatus": {
- "description": "The versioning state of the bucket.",
- "type": "string",
- "enum": [
- {
- "name": "Enabled",
- "value": "Enabled"
- },
- {
- "name": "Suspended",
- "value": "Suspended"
- }
- ]
- },
"aws-native:s3:BucketWebsiteConfiguration": {
- "description": "Specifies website configuration parameters for an Amazon S3 bucket.",
"properties": {
"errorDocument": {
- "type": "string",
- "description": "The name of the error document for the website."
+ "type": "string"
},
"indexDocument": {
- "type": "string",
- "description": "The name of the index document for the website."
+ "type": "string"
},
"redirectAllRequestsTo": {
"$ref": "#/types/aws-native:s3:BucketRedirectAllRequestsTo"
@@ -106144,6 +106569,10 @@
"datasetFormat": {
"$ref": "#/types/aws-native:sagemaker:DataQualityJobDefinitionDatasetFormat"
},
+ "excludeFeaturesAttribute": {
+ "type": "string",
+ "description": "Indexes or names of the features to be excluded from analysis"
+ },
"localPath": {
"type": "string",
"description": "Path to the filesystem where the endpoint data is available to the container."
@@ -106326,6 +106755,10 @@
"endpointName": {
"type": "string"
},
+ "excludeFeaturesAttribute": {
+ "type": "string",
+ "description": "Indexes or names of the features to be excluded from analysis"
+ },
"localPath": {
"type": "string",
"description": "Path to the filesystem where the endpoint data is available to the container."
@@ -110687,6 +111120,10 @@
"datasetFormat": {
"$ref": "#/types/aws-native:sagemaker:MonitoringScheduleDatasetFormat"
},
+ "excludeFeaturesAttribute": {
+ "type": "string",
+ "description": "Indexes or names of the features to be excluded from analysis"
+ },
"localPath": {
"type": "string",
"description": "Path to the filesystem where the endpoint data is available to the container."
@@ -110822,6 +111259,10 @@
"endpointName": {
"type": "string"
},
+ "excludeFeaturesAttribute": {
+ "type": "string",
+ "description": "Indexes or names of the features to be excluded from analysis"
+ },
"localPath": {
"type": "string",
"description": "Path to the filesystem where the endpoint data is available to the container."
@@ -111170,9 +111611,17 @@
"aws-native:sagemaker:MonitoringScheduleScheduleConfig": {
"description": "Configuration details about the monitoring schedule.",
"properties": {
+ "dataAnalysisEndTime": {
+ "type": "string",
+ "description": "Data Analysis end time, e.g. PT0H"
+ },
+ "dataAnalysisStartTime": {
+ "type": "string",
+ "description": "Data Analysis start time, e.g. -PT1H"
+ },
"scheduleExpression": {
"type": "string",
- "description": "A cron expression that describes details about the monitoring schedule."
+ "description": "A cron expression or 'NOW' that describes details about the monitoring schedule."
}
},
"type": "object",
@@ -122799,18 +123248,18 @@
]
},
"aws-native:apigateway:Account": {
- "description": "Resource Type definition for AWS::ApiGateway::Account",
+ "description": "The ``AWS::ApiGateway::Account`` resource specifies the IAM role that Amazon API Gateway uses to write API logs to Amazon CloudWatch Logs. To avoid overwriting other roles, you should only have one ``AWS::ApiGateway::Account`` resource per region per account.",
"properties": {
"cloudWatchRoleArn": {
"type": "string",
- "description": "The Amazon Resource Name (ARN) of an IAM role that has write access to CloudWatch Logs in your account."
+ "description": "The ARN of an Amazon CloudWatch role for the current Account."
}
},
"type": "object",
"inputProperties": {
"cloudWatchRoleArn": {
"type": "string",
- "description": "The Amazon Resource Name (ARN) of an IAM role that has write access to CloudWatch Logs in your account."
+ "description": "The ARN of an Amazon CloudWatch role for the current Account."
}
}
},
@@ -122909,7 +123358,7 @@
}
},
"aws-native:apigateway:Authorizer": {
- "description": "Represents an authorization layer for methods. If enabled on a method, API Gateway will activate the authorizer when a client calls the method.",
+ "description": "The ``AWS::ApiGateway::Authorizer`` resource creates an authorization layer that API Gateway activates for methods that have authorization enabled. API Gateway activates the authorizer when a client calls those methods.",
"properties": {
"authType": {
"type": "string",
@@ -122917,26 +123366,26 @@
},
"authorizerCredentials": {
"type": "string",
- "description": "Specifies the required credentials as an IAM role for API Gateway to invoke the authorizer."
+ "description": "Specifies the required credentials as an IAM role for API Gateway to invoke the authorizer. To specify an IAM role for API Gateway to assume, use the role's Amazon Resource Name (ARN). To use resource-based permissions on the Lambda function, specify null."
},
"authorizerId": {
"type": "string"
},
"authorizerResultTtlInSeconds": {
"type": "integer",
- "description": "The TTL in seconds of cached authorizer results."
+ "description": "The TTL in seconds of cached authorizer results. If it equals 0, authorization caching is disabled. If it is greater than 0, API Gateway will cache authorizer responses. If this field is not set, the default value is 300. The maximum value is 3600, or 1 hour."
},
"authorizerUri": {
"type": "string",
- "description": "Specifies the authorizer's Uniform Resource Identifier (URI)."
+ "description": "Specifies the authorizer's Uniform Resource Identifier (URI). For ``TOKEN`` or ``REQUEST`` authorizers, this must be a well-formed Lambda function URI, for example, ``arn:aws:apigateway:us-west-2:lambda:path/2015-03-31/functions/arn:aws:lambda:us-west-2:{account_id}:function:{lambda_function_name}/invocations``. In general, the URI has this form ``arn:aws:apigateway:{region}:lambda:path/{service_api}``, where ``{region}`` is the same as the region hosting the Lambda function, ``path`` indicates that the remaining substring in the URI should be treated as the path to the resource, including the initial ``/``. For Lambda functions, this is usually of the form ``/2015-03-31/functions/[FunctionARN]/invocations``."
},
"identitySource": {
"type": "string",
- "description": "The identity source for which authorization is requested."
+ "description": "The identity source for which authorization is requested. For a ``TOKEN`` or ``COGNITO_USER_POOLS`` authorizer, this is required and specifies the request header mapping expression for the custom header holding the authorization token submitted by the client. For example, if the token header name is ``Auth``, the header mapping expression is ``method.request.header.Auth``. For the ``REQUEST`` authorizer, this is required when authorization caching is enabled. The value is a comma-separated string of one or more mapping expressions of the specified request parameters. For example, if an ``Auth`` header, a ``Name`` query string parameter are defined as identity sources, this value is ``method.request.header.Auth, method.request.querystring.Name``. These parameters will be used to derive the authorization caching key and to perform runtime validation of the ``REQUEST`` authorizer by verifying all of the identity-related request parameters are present, not null and non-empty. Only when this is true does the authorizer invoke the authorizer Lambda function, otherwise, it returns a 401 Unauthorized response without calling the Lambda function. The valid value is a string of comma-separated mapping expressions of the specified request parameters. When the authorization caching is not enabled, this property is optional."
},
"identityValidationExpression": {
"type": "string",
- "description": "A validation expression for the incoming identity token."
+ "description": "A validation expression for the incoming identity token. For ``TOKEN`` authorizers, this value is a regular expression. For ``COGNITO_USER_POOLS`` authorizers, API Gateway will match the ``aud`` field of the incoming token from the client against the specified regular expression. It will invoke the authorizer's Lambda function when there is a match. Otherwise, it will return a 401 Unauthorized response without calling the Lambda function. The validation expression does not apply to the ``REQUEST`` authorizer."
},
"name": {
"type": "string",
@@ -122947,16 +123396,16 @@
"items": {
"type": "string"
},
- "description": "A list of the Amazon Cognito user pool ARNs for the COGNITO_USER_POOLS authorizer."
+ "description": "A list of the Amazon Cognito user pool ARNs for the ``COGNITO_USER_POOLS`` authorizer. Each element is of this format: ``arn:aws:cognito-idp:{region}:{account_id}:userpool/{user_pool_id}``. For a ``TOKEN`` or ``REQUEST`` authorizer, this is not defined."
},
"restApiId": {
"type": "string",
- "description": "The identifier of the API.",
+ "description": "The string identifier of the associated RestApi.",
"replaceOnChanges": true
},
"type": {
"type": "string",
- "description": "The authorizer type."
+ "description": "The authorizer type. Valid values are ``TOKEN`` for a Lambda function using a single authorization token submitted in a custom header, ``REQUEST`` for a Lambda function using incoming request parameters, and ``COGNITO_USER_POOLS`` for using an Amazon Cognito user pool."
}
},
"type": "object",
@@ -122973,23 +123422,23 @@
},
"authorizerCredentials": {
"type": "string",
- "description": "Specifies the required credentials as an IAM role for API Gateway to invoke the authorizer."
+ "description": "Specifies the required credentials as an IAM role for API Gateway to invoke the authorizer. To specify an IAM role for API Gateway to assume, use the role's Amazon Resource Name (ARN). To use resource-based permissions on the Lambda function, specify null."
},
"authorizerResultTtlInSeconds": {
"type": "integer",
- "description": "The TTL in seconds of cached authorizer results."
+ "description": "The TTL in seconds of cached authorizer results. If it equals 0, authorization caching is disabled. If it is greater than 0, API Gateway will cache authorizer responses. If this field is not set, the default value is 300. The maximum value is 3600, or 1 hour."
},
"authorizerUri": {
"type": "string",
- "description": "Specifies the authorizer's Uniform Resource Identifier (URI)."
+ "description": "Specifies the authorizer's Uniform Resource Identifier (URI). For ``TOKEN`` or ``REQUEST`` authorizers, this must be a well-formed Lambda function URI, for example, ``arn:aws:apigateway:us-west-2:lambda:path/2015-03-31/functions/arn:aws:lambda:us-west-2:{account_id}:function:{lambda_function_name}/invocations``. In general, the URI has this form ``arn:aws:apigateway:{region}:lambda:path/{service_api}``, where ``{region}`` is the same as the region hosting the Lambda function, ``path`` indicates that the remaining substring in the URI should be treated as the path to the resource, including the initial ``/``. For Lambda functions, this is usually of the form ``/2015-03-31/functions/[FunctionARN]/invocations``."
},
"identitySource": {
"type": "string",
- "description": "The identity source for which authorization is requested."
+ "description": "The identity source for which authorization is requested. For a ``TOKEN`` or ``COGNITO_USER_POOLS`` authorizer, this is required and specifies the request header mapping expression for the custom header holding the authorization token submitted by the client. For example, if the token header name is ``Auth``, the header mapping expression is ``method.request.header.Auth``. For the ``REQUEST`` authorizer, this is required when authorization caching is enabled. The value is a comma-separated string of one or more mapping expressions of the specified request parameters. For example, if an ``Auth`` header, a ``Name`` query string parameter are defined as identity sources, this value is ``method.request.header.Auth, method.request.querystring.Name``. These parameters will be used to derive the authorization caching key and to perform runtime validation of the ``REQUEST`` authorizer by verifying all of the identity-related request parameters are present, not null and non-empty. Only when this is true does the authorizer invoke the authorizer Lambda function, otherwise, it returns a 401 Unauthorized response without calling the Lambda function. The valid value is a string of comma-separated mapping expressions of the specified request parameters. When the authorization caching is not enabled, this property is optional."
},
"identityValidationExpression": {
"type": "string",
- "description": "A validation expression for the incoming identity token."
+ "description": "A validation expression for the incoming identity token. For ``TOKEN`` authorizers, this value is a regular expression. For ``COGNITO_USER_POOLS`` authorizers, API Gateway will match the ``aud`` field of the incoming token from the client against the specified regular expression. It will invoke the authorizer's Lambda function when there is a match. Otherwise, it will return a 401 Unauthorized response without calling the Lambda function. The validation expression does not apply to the ``REQUEST`` authorizer."
},
"name": {
"type": "string",
@@ -123000,15 +123449,15 @@
"items": {
"type": "string"
},
- "description": "A list of the Amazon Cognito user pool ARNs for the COGNITO_USER_POOLS authorizer."
+ "description": "A list of the Amazon Cognito user pool ARNs for the ``COGNITO_USER_POOLS`` authorizer. Each element is of this format: ``arn:aws:cognito-idp:{region}:{account_id}:userpool/{user_pool_id}``. For a ``TOKEN`` or ``REQUEST`` authorizer, this is not defined."
},
"restApiId": {
"type": "string",
- "description": "The identifier of the API."
+ "description": "The string identifier of the associated RestApi."
},
"type": {
"type": "string",
- "description": "The authorizer type."
+ "description": "The authorizer type. Valid values are ``TOKEN`` for a Lambda function using a single authorization token submitted in a custom header, ``REQUEST`` for a Lambda function using incoming request parameters, and ``COGNITO_USER_POOLS`` for using an Amazon Cognito user pool."
}
},
"requiredInputs": [
@@ -123102,11 +123551,11 @@
}
},
"aws-native:apigateway:Deployment": {
- "description": "Resource Type definition for AWS::ApiGateway::Deployment",
+ "description": "The ``AWS::ApiGateway::Deployment`` resource deploys an API Gateway ``RestApi`` resource to a stage so that clients can call the API over the internet. The stage acts as an environment.",
"properties": {
"deploymentCanarySettings": {
"$ref": "#/types/aws-native:apigateway:DeploymentCanarySettings",
- "description": "Specifies settings for the canary deployment.",
+ "description": "The input configuration for a canary deployment.",
"replaceOnChanges": true
},
"deploymentId": {
@@ -123115,20 +123564,20 @@
},
"description": {
"type": "string",
- "description": "A description of the purpose of the API Gateway deployment."
+ "description": "The description for the Deployment resource to create."
},
"restApiId": {
"type": "string",
- "description": "The ID of the RestApi resource to deploy. ",
+ "description": "The string identifier of the associated RestApi.",
"replaceOnChanges": true
},
"stageDescription": {
"$ref": "#/types/aws-native:apigateway:DeploymentStageDescription",
- "description": "Configures the stage that API Gateway creates with this deployment."
+ "description": "The description of the Stage resource for the Deployment resource to create. To specify a stage description, you must also provide a stage name."
},
"stageName": {
"type": "string",
- "description": "A name for the stage that API Gateway creates with this deployment. Use only alphanumeric characters."
+ "description": "The name of the Stage resource for the Deployment resource to create."
}
},
"type": "object",
@@ -123139,23 +123588,23 @@
"inputProperties": {
"deploymentCanarySettings": {
"$ref": "#/types/aws-native:apigateway:DeploymentCanarySettings",
- "description": "Specifies settings for the canary deployment."
+ "description": "The input configuration for a canary deployment."
},
"description": {
"type": "string",
- "description": "A description of the purpose of the API Gateway deployment."
+ "description": "The description for the Deployment resource to create."
},
"restApiId": {
"type": "string",
- "description": "The ID of the RestApi resource to deploy. "
+ "description": "The string identifier of the associated RestApi."
},
"stageDescription": {
"$ref": "#/types/aws-native:apigateway:DeploymentStageDescription",
- "description": "Configures the stage that API Gateway creates with this deployment."
+ "description": "The description of the Stage resource for the Deployment resource to create. To specify a stage description, you must also provide a stage name."
},
"stageName": {
"type": "string",
- "description": "A name for the stage that API Gateway creates with this deployment. Use only alphanumeric characters."
+ "description": "The name of the Stage resource for the Deployment resource to create."
}
},
"requiredInputs": [
@@ -123163,7 +123612,7 @@
]
},
"aws-native:apigateway:DocumentationPart": {
- "description": "Resource Type definition for AWS::ApiGateway::DocumentationPart",
+ "description": "The ``AWS::ApiGateway::DocumentationPart`` resource creates a documentation part for an API. For more information, see [Representation of API Documentation in API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-documenting-api-content-representation.html) in the *API Gateway Developer Guide*.",
"properties": {
"documentationPartId": {
"type": "string",
@@ -123171,16 +123620,16 @@
},
"location": {
"$ref": "#/types/aws-native:apigateway:DocumentationPartLocation",
- "description": "The location of the API entity that the documentation applies to.",
+ "description": "The location of the targeted API entity of the to-be-created documentation part.",
"replaceOnChanges": true
},
"properties": {
"type": "string",
- "description": "The documentation content map of the targeted API entity."
+ "description": "The new documentation content map of the targeted API entity. Enclosed key-value pairs are API-specific, but only OpenAPI-compliant key-value pairs can be exported and, hence, published."
},
"restApiId": {
"type": "string",
- "description": "Identifier of the targeted API entity",
+ "description": "The string identifier of the associated RestApi.",
"replaceOnChanges": true
}
},
@@ -123194,15 +123643,15 @@
"inputProperties": {
"location": {
"$ref": "#/types/aws-native:apigateway:DocumentationPartLocation",
- "description": "The location of the API entity that the documentation applies to."
+ "description": "The location of the targeted API entity of the to-be-created documentation part."
},
"properties": {
"type": "string",
- "description": "The documentation content map of the targeted API entity."
+ "description": "The new documentation content map of the targeted API entity. Enclosed key-value pairs are API-specific, but only OpenAPI-compliant key-value pairs can be exported and, hence, published."
},
"restApiId": {
"type": "string",
- "description": "Identifier of the targeted API entity"
+ "description": "The string identifier of the associated RestApi."
}
},
"requiredInputs": [
@@ -123212,15 +123661,15 @@
]
},
"aws-native:apigateway:DocumentationVersion": {
- "description": "A snapshot of the documentation of an API.",
+ "description": "The ``AWS::ApiGateway::DocumentationVersion`` resource creates a snapshot of the documentation for an API. For more information, see [Representation of API Documentation in API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-documenting-api-content-representation.html) in the *API Gateway Developer Guide*.",
"properties": {
"description": {
"type": "string",
- "description": "The description of the API documentation snapshot."
+ "description": "A description about the new documentation snapshot."
},
"documentationVersion": {
"type": "string",
- "description": "The version identifier of the API documentation snapshot.",
+ "description": "The version identifier of the to-be-updated documentation version.",
"language": {
"csharp": {
"name": "DocumentationVersionValue"
@@ -123230,7 +123679,7 @@
},
"restApiId": {
"type": "string",
- "description": "The identifier of the API.",
+ "description": "The string identifier of the associated RestApi.",
"replaceOnChanges": true
}
},
@@ -123242,11 +123691,11 @@
"inputProperties": {
"description": {
"type": "string",
- "description": "The description of the API documentation snapshot."
+ "description": "A description about the new documentation snapshot."
},
"documentationVersion": {
"type": "string",
- "description": "The version identifier of the API documentation snapshot.",
+ "description": "The version identifier of the to-be-updated documentation version.",
"language": {
"csharp": {
"name": "DocumentationVersionValue"
@@ -123255,7 +123704,7 @@
},
"restApiId": {
"type": "string",
- "description": "The identifier of the API."
+ "description": "The string identifier of the associated RestApi."
}
},
"requiredInputs": [
@@ -123355,67 +123804,67 @@
}
},
"aws-native:apigateway:Method": {
- "description": "Resource Type definition for AWS::ApiGateway::Method",
+ "description": "The ``AWS::ApiGateway::Method`` resource creates API Gateway methods that define the parameters and body that clients must send in their requests.",
"properties": {
"apiKeyRequired": {
"type": "boolean",
- "description": "Indicates whether the method requires clients to submit a valid API key."
+ "description": "A boolean flag specifying whether a valid ApiKey is required to invoke this method."
},
"authorizationScopes": {
"type": "array",
"items": {
"type": "string"
},
- "description": "A list of authorization scopes configured on the method."
+ "description": "A list of authorization scopes configured on the method. The scopes are used with a ``COGNITO_USER_POOLS`` authorizer to authorize the method invocation. The authorization works by matching the method scopes against the scopes parsed from the access token in the incoming request. The method invocation is authorized if any method scopes matches a claimed scope in the access token. Otherwise, the invocation is not authorized. When the method scope is configured, the client must provide an access token instead of an identity token for authorization purposes."
},
"authorizationType": {
"$ref": "#/types/aws-native:apigateway:MethodAuthorizationType",
- "description": "The method's authorization type."
+ "description": "The method's authorization type. This parameter is required. For valid values, see [Method](https://docs.aws.amazon.com/apigateway/latest/api/API_Method.html) in the *API Gateway API Reference*.\n If you specify the ``AuthorizerId`` property, specify ``CUSTOM`` or ``COGNITO_USER_POOLS`` for this property."
},
"authorizerId": {
"type": "string",
- "description": "The identifier of the authorizer to use on this method."
+ "description": "The identifier of an authorizer to use on this method. The method's authorization type must be ``CUSTOM`` or ``COGNITO_USER_POOLS``."
},
"httpMethod": {
"type": "string",
- "description": "The backend system that the method calls when it receives a request.",
+ "description": "The method's HTTP verb.",
"replaceOnChanges": true
},
"integration": {
"$ref": "#/types/aws-native:apigateway:MethodIntegration",
- "description": "The backend system that the method calls when it receives a request."
+ "description": "Represents an ``HTTP``, ``HTTP_PROXY``, ``AWS``, ``AWS_PROXY``, or Mock integration."
},
"methodResponses": {
"type": "array",
"items": {
"$ref": "#/types/aws-native:apigateway:MethodResponse"
},
- "description": "The responses that can be sent to the client who calls the method."
+ "description": "Gets a method response associated with a given HTTP status code."
},
"operationName": {
"type": "string",
- "description": "A friendly operation name for the method."
+ "description": "A human-friendly operation identifier for the method. For example, you can assign the ``operationName`` of ``ListPets`` for the ``GET /pets`` method in the ``PetStore`` example."
},
"requestModels": {
"$ref": "pulumi.json#/Any",
- "description": "The resources that are used for the request's content type. Specify request models as key-value pairs (string-to-string mapping), with a content type as the key and a Model resource name as the value."
+ "description": "A key-value map specifying data schemas, represented by Model resources, (as the mapped value) of the request payloads of given content types (as the mapping key)."
},
"requestParameters": {
"$ref": "pulumi.json#/Any",
- "description": "The request parameters that API Gateway accepts. Specify request parameters as key-value pairs (string-to-Boolean mapping), with a source as the key and a Boolean as the value."
+ "description": "A key-value map defining required or optional method request parameters that can be accepted by API Gateway. A key is a method request parameter name matching the pattern of ``method.request.{location}.{name}``, where ``location`` is ``querystring``, ``path``, or ``header`` and ``name`` is a valid and unique parameter name. The value associated with the key is a Boolean flag indicating whether the parameter is required (``true``) or optional (``false``). The method request parameter names defined here are available in Integration to be mapped to integration request parameters or templates."
},
"requestValidatorId": {
"type": "string",
- "description": "The ID of the associated request validator."
+ "description": "The identifier of a RequestValidator for request validation."
},
"resourceId": {
"type": "string",
- "description": "The ID of an API Gateway resource.",
+ "description": "The Resource identifier for the MethodResponse resource.",
"replaceOnChanges": true
},
"restApiId": {
"type": "string",
- "description": "The ID of the RestApi resource in which API Gateway creates the method.",
+ "description": "The string identifier of the associated RestApi.",
"replaceOnChanges": true
}
},
@@ -123428,61 +123877,61 @@
"inputProperties": {
"apiKeyRequired": {
"type": "boolean",
- "description": "Indicates whether the method requires clients to submit a valid API key."
+ "description": "A boolean flag specifying whether a valid ApiKey is required to invoke this method."
},
"authorizationScopes": {
"type": "array",
"items": {
"type": "string"
},
- "description": "A list of authorization scopes configured on the method."
+ "description": "A list of authorization scopes configured on the method. The scopes are used with a ``COGNITO_USER_POOLS`` authorizer to authorize the method invocation. The authorization works by matching the method scopes against the scopes parsed from the access token in the incoming request. The method invocation is authorized if any method scopes matches a claimed scope in the access token. Otherwise, the invocation is not authorized. When the method scope is configured, the client must provide an access token instead of an identity token for authorization purposes."
},
"authorizationType": {
"$ref": "#/types/aws-native:apigateway:MethodAuthorizationType",
- "description": "The method's authorization type."
+ "description": "The method's authorization type. This parameter is required. For valid values, see [Method](https://docs.aws.amazon.com/apigateway/latest/api/API_Method.html) in the *API Gateway API Reference*.\n If you specify the ``AuthorizerId`` property, specify ``CUSTOM`` or ``COGNITO_USER_POOLS`` for this property."
},
"authorizerId": {
"type": "string",
- "description": "The identifier of the authorizer to use on this method."
+ "description": "The identifier of an authorizer to use on this method. The method's authorization type must be ``CUSTOM`` or ``COGNITO_USER_POOLS``."
},
"httpMethod": {
"type": "string",
- "description": "The backend system that the method calls when it receives a request."
+ "description": "The method's HTTP verb."
},
"integration": {
"$ref": "#/types/aws-native:apigateway:MethodIntegration",
- "description": "The backend system that the method calls when it receives a request."
+ "description": "Represents an ``HTTP``, ``HTTP_PROXY``, ``AWS``, ``AWS_PROXY``, or Mock integration."
},
"methodResponses": {
"type": "array",
"items": {
"$ref": "#/types/aws-native:apigateway:MethodResponse"
},
- "description": "The responses that can be sent to the client who calls the method."
+ "description": "Gets a method response associated with a given HTTP status code."
},
"operationName": {
"type": "string",
- "description": "A friendly operation name for the method."
+ "description": "A human-friendly operation identifier for the method. For example, you can assign the ``operationName`` of ``ListPets`` for the ``GET /pets`` method in the ``PetStore`` example."
},
"requestModels": {
"$ref": "pulumi.json#/Any",
- "description": "The resources that are used for the request's content type. Specify request models as key-value pairs (string-to-string mapping), with a content type as the key and a Model resource name as the value."
+ "description": "A key-value map specifying data schemas, represented by Model resources, (as the mapped value) of the request payloads of given content types (as the mapping key)."
},
"requestParameters": {
"$ref": "pulumi.json#/Any",
- "description": "The request parameters that API Gateway accepts. Specify request parameters as key-value pairs (string-to-Boolean mapping), with a source as the key and a Boolean as the value."
+ "description": "A key-value map defining required or optional method request parameters that can be accepted by API Gateway. A key is a method request parameter name matching the pattern of ``method.request.{location}.{name}``, where ``location`` is ``querystring``, ``path``, or ``header`` and ``name`` is a valid and unique parameter name. The value associated with the key is a Boolean flag indicating whether the parameter is required (``true``) or optional (``false``). The method request parameter names defined here are available in Integration to be mapped to integration request parameters or templates."
},
"requestValidatorId": {
"type": "string",
- "description": "The ID of the associated request validator."
+ "description": "The identifier of a RequestValidator for request validation."
},
"resourceId": {
"type": "string",
- "description": "The ID of an API Gateway resource."
+ "description": "The Resource identifier for the MethodResponse resource."
},
"restApiId": {
"type": "string",
- "description": "The ID of the RestApi resource in which API Gateway creates the method."
+ "description": "The string identifier of the associated RestApi."
}
},
"requiredInputs": [
@@ -123492,30 +123941,30 @@
]
},
"aws-native:apigateway:Model": {
- "description": "Resource Type definition for AWS::ApiGateway::Model",
+ "description": "The ``AWS::ApiGateway::Model`` resource defines the structure of a request or response payload for an API method.",
"properties": {
"contentType": {
"type": "string",
- "description": "The content type for the model.",
+ "description": "The content-type for the model.",
"replaceOnChanges": true
},
"description": {
"type": "string",
- "description": "A description that identifies this model."
+ "description": "The description of the model."
},
"name": {
"type": "string",
- "description": "A name for the model. If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the model name.",
+ "description": "A name for the model. If you don't specify a name, CFN generates a unique physical ID and uses that ID for the model name. For more information, see [Name Type](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-name.html).\n If you specify a name, you cannot perform updates that require replacement of this resource. You can perform updates that require no or some interruption. If you must replace the resource, specify a new name.",
"replaceOnChanges": true
},
"restApiId": {
"type": "string",
- "description": "The ID of a REST API with which to associate this model.",
+ "description": "The string identifier of the associated RestApi.",
"replaceOnChanges": true
},
"schema": {
"$ref": "pulumi.json#/Any",
- "description": "The schema to use to transform data to one or more output formats. Specify null ({}) if you don't want to specify a schema."
+ "description": "The schema for the model. For ``application/json`` models, this should be JSON schema draft 4 model. Do not include \"\\*/\" characters in the description of any properties because such \"\\*/\" characters may be interpreted as the closing marker for comments in some languages, such as Java or JavaScript, causing the installation of your API's SDK generated by API Gateway to fail."
}
},
"type": "object",
@@ -123525,23 +123974,23 @@
"inputProperties": {
"contentType": {
"type": "string",
- "description": "The content type for the model."
+ "description": "The content-type for the model."
},
"description": {
"type": "string",
- "description": "A description that identifies this model."
+ "description": "The description of the model."
},
"name": {
"type": "string",
- "description": "A name for the model. If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the model name."
+ "description": "A name for the model. If you don't specify a name, CFN generates a unique physical ID and uses that ID for the model name. For more information, see [Name Type](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-name.html).\n If you specify a name, you cannot perform updates that require replacement of this resource. You can perform updates that require no or some interruption. If you must replace the resource, specify a new name."
},
"restApiId": {
"type": "string",
- "description": "The ID of a REST API with which to associate this model."
+ "description": "The string identifier of the associated RestApi."
},
"schema": {
"$ref": "pulumi.json#/Any",
- "description": "The schema to use to transform data to one or more output formats. Specify null ({}) if you don't want to specify a schema."
+ "description": "The schema for the model. For ``application/json`` models, this should be JSON schema draft 4 model. Do not include \"\\*/\" characters in the description of any properties because such \"\\*/\" characters may be interpreted as the closing marker for comments in some languages, such as Java or JavaScript, causing the installation of your API's SDK generated by API Gateway to fail."
}
},
"requiredInputs": [
@@ -123602,7 +124051,7 @@
]
},
"aws-native:apigateway:Resource": {
- "description": "Resource Type definition for AWS::ApiGateway::Resource",
+ "description": "The ``AWS::ApiGateway::Resource`` resource creates a resource in an API.",
"properties": {
"parentId": {
"type": "string",
@@ -123620,7 +124069,7 @@
},
"restApiId": {
"type": "string",
- "description": "The ID of the RestApi resource in which you want to create this resource..",
+ "description": "The string identifier of the associated RestApi.",
"replaceOnChanges": true
}
},
@@ -123642,7 +124091,7 @@
},
"restApiId": {
"type": "string",
- "description": "The ID of the RestApi resource in which you want to create this resource.."
+ "description": "The string identifier of the associated RestApi."
}
},
"requiredInputs": [
@@ -123652,52 +124101,66 @@
]
},
"aws-native:apigateway:RestApi": {
- "description": "Resource Type definition for AWS::ApiGateway::RestApi.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n### Example\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AwsNative = Pulumi.AwsNative;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var apiName = config.Require(\"apiName\");\n var description = config.Require(\"description\");\n var version = config.Require(\"version\");\n var type = config.Require(\"type\");\n var property = config.Require(\"property\");\n var restApi = new AwsNative.ApiGateway.RestApi(\"restApi\", new()\n {\n Name = apiName,\n });\n\n var documentationPart = new AwsNative.ApiGateway.DocumentationPart(\"documentationPart\", new()\n {\n Location = new AwsNative.ApiGateway.Inputs.DocumentationPartLocationArgs\n {\n Type = System.Enum.Parse\u003cAwsNative.ApiGateway.DocumentationPartLocationType\u003e(type),\n },\n RestApiId = restApi.Id,\n Properties = property,\n });\n\n var documentationVersion = new AwsNative.ApiGateway.DocumentationVersion(\"documentationVersion\", new()\n {\n Description = description,\n DocumentationVersionValue = version,\n RestApiId = restApi.Id,\n }, new CustomResourceOptions\n {\n DependsOn = new[]\n {\n documentationPart,\n },\n });\n\n});\n\n\n```\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws_native from \"@pulumi/aws-native\";\n\nconst config = new pulumi.Config();\nconst apiName = config.require(\"apiName\");\nconst description = config.require(\"description\");\nconst version = config.require(\"version\");\nconst type = config.require(\"type\");\nconst property = config.require(\"property\");\nconst restApi = new aws_native.apigateway.RestApi(\"restApi\", {name: apiName});\nconst documentationPart = new aws_native.apigateway.DocumentationPart(\"documentationPart\", {\n location: {\n type: aws_native.apigateway.DocumentationPartLocationType[type],\n },\n restApiId: restApi.id,\n properties: property,\n});\nconst documentationVersion = new aws_native.apigateway.DocumentationVersion(\"documentationVersion\", {\n description: description,\n documentationVersion: version,\n restApiId: restApi.id,\n}, {\n dependsOn: [documentationPart],\n});\n\n```\n\n```python\nimport pulumi\nimport pulumi_aws_native as aws_native\n\nconfig = pulumi.Config()\napi_name = config.require(\"apiName\")\ndescription = config.require(\"description\")\nversion = config.require(\"version\")\ntype = config.require(\"type\")\nproperty = config.require(\"property\")\nrest_api = aws_native.apigateway.RestApi(\"restApi\", name=api_name)\ndocumentation_part = aws_native.apigateway.DocumentationPart(\"documentationPart\",\n location=aws_native.apigateway.DocumentationPartLocationArgs(\n type=aws_native.apigateway.DocumentationPartLocationType(type),\n ),\n rest_api_id=rest_api.id,\n properties=property)\ndocumentation_version = aws_native.apigateway.DocumentationVersion(\"documentationVersion\",\n description=description,\n documentation_version=version,\n rest_api_id=rest_api.id,\n opts=pulumi.ResourceOptions(depends_on=[documentation_part]))\n\n```\n\n{{% /example %}}\n{{% example %}}\n### Example\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AwsNative = Pulumi.AwsNative;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var apiName = config.Require(\"apiName\");\n var description = config.Require(\"description\");\n var version = config.Require(\"version\");\n var type = config.Require(\"type\");\n var property = config.Require(\"property\");\n var restApi = new AwsNative.ApiGateway.RestApi(\"restApi\", new()\n {\n Name = apiName,\n });\n\n var documentationPart = new AwsNative.ApiGateway.DocumentationPart(\"documentationPart\", new()\n {\n Location = new AwsNative.ApiGateway.Inputs.DocumentationPartLocationArgs\n {\n Type = System.Enum.Parse\u003cAwsNative.ApiGateway.DocumentationPartLocationType\u003e(type),\n },\n RestApiId = restApi.Id,\n Properties = property,\n });\n\n var documentationVersion = new AwsNative.ApiGateway.DocumentationVersion(\"documentationVersion\", new()\n {\n Description = description,\n DocumentationVersionValue = version,\n RestApiId = restApi.Id,\n }, new CustomResourceOptions\n {\n DependsOn = new[]\n {\n documentationPart,\n },\n });\n\n});\n\n\n```\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws_native from \"@pulumi/aws-native\";\n\nconst config = new pulumi.Config();\nconst apiName = config.require(\"apiName\");\nconst description = config.require(\"description\");\nconst version = config.require(\"version\");\nconst type = config.require(\"type\");\nconst property = config.require(\"property\");\nconst restApi = new aws_native.apigateway.RestApi(\"restApi\", {name: apiName});\nconst documentationPart = new aws_native.apigateway.DocumentationPart(\"documentationPart\", {\n location: {\n type: aws_native.apigateway.DocumentationPartLocationType[type],\n },\n restApiId: restApi.id,\n properties: property,\n});\nconst documentationVersion = new aws_native.apigateway.DocumentationVersion(\"documentationVersion\", {\n description: description,\n documentationVersion: version,\n restApiId: restApi.id,\n}, {\n dependsOn: [documentationPart],\n});\n\n```\n\n```python\nimport pulumi\nimport pulumi_aws_native as aws_native\n\nconfig = pulumi.Config()\napi_name = config.require(\"apiName\")\ndescription = config.require(\"description\")\nversion = config.require(\"version\")\ntype = config.require(\"type\")\nproperty = config.require(\"property\")\nrest_api = aws_native.apigateway.RestApi(\"restApi\", name=api_name)\ndocumentation_part = aws_native.apigateway.DocumentationPart(\"documentationPart\",\n location=aws_native.apigateway.DocumentationPartLocationArgs(\n type=aws_native.apigateway.DocumentationPartLocationType(type),\n ),\n rest_api_id=rest_api.id,\n properties=property)\ndocumentation_version = aws_native.apigateway.DocumentationVersion(\"documentationVersion\",\n description=description,\n documentation_version=version,\n rest_api_id=rest_api.id,\n opts=pulumi.ResourceOptions(depends_on=[documentation_part]))\n\n```\n\n{{% /example %}}\n{{% example %}}\n### Example\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AwsNative = Pulumi.AwsNative;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var contentHandling = config.Require(\"contentHandling\");\n var operationName = config.Get(\"operationName\") ?? \"testoperationName\";\n var restApiName = config.Get(\"restApiName\") ?? \"testrestApiName\";\n var validatorName = config.Get(\"validatorName\") ?? \"testvalidatorName\";\n var validateRequestBody = config.Get(\"validateRequestBody\") ?? \"testvalidateRequestBody\";\n var validateRequestParameters = config.Get(\"validateRequestParameters\") ?? true;\n var restApi = new AwsNative.ApiGateway.RestApi(\"restApi\", new()\n {\n Name = restApiName,\n });\n\n var requestValidator = new AwsNative.ApiGateway.RequestValidator(\"requestValidator\", new()\n {\n Name = validatorName,\n RestApiId = restApi.Id,\n ValidateRequestBody = validateRequestBody,\n ValidateRequestParameters = validateRequestParameters,\n });\n\n var method = new AwsNative.ApiGateway.Method(\"method\", new()\n {\n HttpMethod = \"POST\",\n ResourceId = restApi.RootResourceId,\n RestApiId = restApi.Id,\n AuthorizationType = AwsNative.ApiGateway.MethodAuthorizationType.None,\n Integration = new AwsNative.ApiGateway.Inputs.MethodIntegrationArgs\n {\n Type = AwsNative.ApiGateway.MethodIntegrationType.Mock,\n ContentHandling = System.Enum.Parse\u003cAwsNative.ApiGateway.MethodIntegrationContentHandling\u003e(contentHandling),\n IntegrationResponses = new[]\n {\n new AwsNative.ApiGateway.Inputs.MethodIntegrationResponseArgs\n {\n ContentHandling = System.Enum.Parse\u003cAwsNative.ApiGateway.MethodIntegrationResponseContentHandling\u003e(contentHandling),\n StatusCode = \"400\",\n },\n },\n },\n RequestValidatorId = requestValidator.Id,\n OperationName = operationName,\n });\n\n return new Dictionary\u003cstring, object?\u003e\n {\n [\"rootResourceId\"] = restApi.RootResourceId,\n };\n});\n\n\n```\n\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws-native/sdk/go/aws/apigateway\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\nfunc main() {\npulumi.Run(func(ctx *pulumi.Context) error {\ncfg := config.New(ctx, \"\")\ncontentHandling := cfg.Require(\"contentHandling\")\noperationName := \"testoperationName\";\nif param := cfg.Get(\"operationName\"); param != \"\"{\noperationName = param\n}\nrestApiName := \"testrestApiName\";\nif param := cfg.Get(\"restApiName\"); param != \"\"{\nrestApiName = param\n}\nvalidatorName := \"testvalidatorName\";\nif param := cfg.Get(\"validatorName\"); param != \"\"{\nvalidatorName = param\n}\nvalidateRequestBody := \"testvalidateRequestBody\";\nif param := cfg.Get(\"validateRequestBody\"); param != \"\"{\nvalidateRequestBody = param\n}\nvalidateRequestParameters := true;\nif param := cfg.Get(\"validateRequestParameters\"); param != \"\"{\nvalidateRequestParameters = param\n}\nrestApi, err := apigateway.NewRestApi(ctx, \"restApi\", \u0026apigateway.RestApiArgs{\nName: pulumi.String(restApiName),\n})\nif err != nil {\nreturn err\n}\nrequestValidator, err := apigateway.NewRequestValidator(ctx, \"requestValidator\", \u0026apigateway.RequestValidatorArgs{\nName: pulumi.String(validatorName),\nRestApiId: restApi.ID(),\nValidateRequestBody: pulumi.String(validateRequestBody),\nValidateRequestParameters: pulumi.String(validateRequestParameters),\n})\nif err != nil {\nreturn err\n}\n_, err = apigateway.NewMethod(ctx, \"method\", \u0026apigateway.MethodArgs{\nHttpMethod: pulumi.String(\"POST\"),\nResourceId: restApi.RootResourceId,\nRestApiId: restApi.ID(),\nAuthorizationType: apigateway.MethodAuthorizationTypeNone,\nIntegration: interface{}{\nType: apigateway.MethodIntegrationTypeMock,\nContentHandling: apigateway.MethodIntegrationContentHandling(contentHandling),\nIntegrationResponses: apigateway.MethodIntegrationResponseArray{\n\u0026apigateway.MethodIntegrationResponseArgs{\nContentHandling: apigateway.MethodIntegrationResponseContentHandling(contentHandling),\nStatusCode: pulumi.String(\"400\"),\n},\n},\n},\nRequestValidatorId: requestValidator.ID(),\nOperationName: pulumi.String(operationName),\n})\nif err != nil {\nreturn err\n}\nctx.Export(\"rootResourceId\", restApi.RootResourceId)\nreturn nil\n})\n}\n\n```\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws_native from \"@pulumi/aws-native\";\n\nconst config = new pulumi.Config();\nconst contentHandling = config.require(\"contentHandling\");\nconst operationName = config.get(\"operationName\") || \"testoperationName\";\nconst restApiName = config.get(\"restApiName\") || \"testrestApiName\";\nconst validatorName = config.get(\"validatorName\") || \"testvalidatorName\";\nconst validateRequestBody = config.get(\"validateRequestBody\") || \"testvalidateRequestBody\";\nconst validateRequestParameters = config.get(\"validateRequestParameters\") || true;\nconst restApi = new aws_native.apigateway.RestApi(\"restApi\", {name: restApiName});\nconst requestValidator = new aws_native.apigateway.RequestValidator(\"requestValidator\", {\n name: validatorName,\n restApiId: restApi.id,\n validateRequestBody: validateRequestBody,\n validateRequestParameters: validateRequestParameters,\n});\nconst method = new aws_native.apigateway.Method(\"method\", {\n httpMethod: \"POST\",\n resourceId: restApi.rootResourceId,\n restApiId: restApi.id,\n authorizationType: aws_native.apigateway.MethodAuthorizationType.None,\n integration: {\n type: aws_native.apigateway.MethodIntegrationType.Mock,\n contentHandling: aws_native.apigateway.MethodIntegrationContentHandling[contentHandling],\n integrationResponses: [{\n contentHandling: aws_native.apigateway.MethodIntegrationResponseContentHandling[contentHandling],\n statusCode: \"400\",\n }],\n },\n requestValidatorId: requestValidator.id,\n operationName: operationName,\n});\nexport const rootResourceId = restApi.rootResourceId;\n\n```\n\n```python\nimport pulumi\nimport pulumi_aws_native as aws_native\n\nconfig = pulumi.Config()\ncontent_handling = config.require(\"contentHandling\")\noperation_name = config.get(\"operationName\")\nif operation_name is None:\n operation_name = \"testoperationName\"\nrest_api_name = config.get(\"restApiName\")\nif rest_api_name is None:\n rest_api_name = \"testrestApiName\"\nvalidator_name = config.get(\"validatorName\")\nif validator_name is None:\n validator_name = \"testvalidatorName\"\nvalidate_request_body = config.get(\"validateRequestBody\")\nif validate_request_body is None:\n validate_request_body = \"testvalidateRequestBody\"\nvalidate_request_parameters = config.get(\"validateRequestParameters\")\nif validate_request_parameters is None:\n validate_request_parameters = True\nrest_api = aws_native.apigateway.RestApi(\"restApi\", name=rest_api_name)\nrequest_validator = aws_native.apigateway.RequestValidator(\"requestValidator\",\n name=validator_name,\n rest_api_id=rest_api.id,\n validate_request_body=validate_request_body,\n validate_request_parameters=validate_request_parameters)\nmethod = aws_native.apigateway.Method(\"method\",\n http_method=\"POST\",\n resource_id=rest_api.root_resource_id,\n rest_api_id=rest_api.id,\n authorization_type=aws_native.apigateway.MethodAuthorizationType.NONE,\n integration=aws_native.apigateway.MethodIntegrationArgs(\n type=aws_native.apigateway.MethodIntegrationType.MOCK,\n content_handling=aws_native.apigateway.MethodIntegrationContentHandling(content_handling),\n integration_responses=[aws_native.apigateway.MethodIntegrationResponseArgs(\n content_handling=aws_native.apigateway.MethodIntegrationResponseContentHandling(content_handling),\n status_code=\"400\",\n )],\n ),\n request_validator_id=request_validator.id,\n operation_name=operation_name)\npulumi.export(\"rootResourceId\", rest_api.root_resource_id)\n\n```\n\n{{% /example %}}\n{{% example %}}\n### Example\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AwsNative = Pulumi.AwsNative;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var contentHandling = config.Require(\"contentHandling\");\n var operationName = config.Get(\"operationName\") ?? \"testoperationName\";\n var restApiName = config.Get(\"restApiName\") ?? \"testrestApiName\";\n var validatorName = config.Get(\"validatorName\") ?? \"testvalidatorName\";\n var validateRequestBody = config.Get(\"validateRequestBody\") ?? \"testvalidateRequestBody\";\n var validateRequestParameters = config.Get(\"validateRequestParameters\") ?? true;\n var restApi = new AwsNative.ApiGateway.RestApi(\"restApi\", new()\n {\n Name = restApiName,\n });\n\n var requestValidator = new AwsNative.ApiGateway.RequestValidator(\"requestValidator\", new()\n {\n Name = validatorName,\n RestApiId = restApi.Id,\n ValidateRequestBody = validateRequestBody,\n ValidateRequestParameters = validateRequestParameters,\n });\n\n var method = new AwsNative.ApiGateway.Method(\"method\", new()\n {\n HttpMethod = \"POST\",\n ResourceId = restApi.RootResourceId,\n RestApiId = restApi.Id,\n AuthorizationType = AwsNative.ApiGateway.MethodAuthorizationType.None,\n Integration = new AwsNative.ApiGateway.Inputs.MethodIntegrationArgs\n {\n Type = AwsNative.ApiGateway.MethodIntegrationType.Mock,\n ContentHandling = System.Enum.Parse\u003cAwsNative.ApiGateway.MethodIntegrationContentHandling\u003e(contentHandling),\n IntegrationResponses = new[]\n {\n new AwsNative.ApiGateway.Inputs.MethodIntegrationResponseArgs\n {\n ContentHandling = System.Enum.Parse\u003cAwsNative.ApiGateway.MethodIntegrationResponseContentHandling\u003e(contentHandling),\n StatusCode = \"400\",\n },\n },\n },\n RequestValidatorId = requestValidator.Id,\n OperationName = operationName,\n });\n\n return new Dictionary\u003cstring, object?\u003e\n {\n [\"rootResourceId\"] = restApi.RootResourceId,\n };\n});\n\n\n```\n\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws-native/sdk/go/aws/apigateway\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\nfunc main() {\npulumi.Run(func(ctx *pulumi.Context) error {\ncfg := config.New(ctx, \"\")\ncontentHandling := cfg.Require(\"contentHandling\")\noperationName := \"testoperationName\";\nif param := cfg.Get(\"operationName\"); param != \"\"{\noperationName = param\n}\nrestApiName := \"testrestApiName\";\nif param := cfg.Get(\"restApiName\"); param != \"\"{\nrestApiName = param\n}\nvalidatorName := \"testvalidatorName\";\nif param := cfg.Get(\"validatorName\"); param != \"\"{\nvalidatorName = param\n}\nvalidateRequestBody := \"testvalidateRequestBody\";\nif param := cfg.Get(\"validateRequestBody\"); param != \"\"{\nvalidateRequestBody = param\n}\nvalidateRequestParameters := true;\nif param := cfg.Get(\"validateRequestParameters\"); param != \"\"{\nvalidateRequestParameters = param\n}\nrestApi, err := apigateway.NewRestApi(ctx, \"restApi\", \u0026apigateway.RestApiArgs{\nName: pulumi.String(restApiName),\n})\nif err != nil {\nreturn err\n}\nrequestValidator, err := apigateway.NewRequestValidator(ctx, \"requestValidator\", \u0026apigateway.RequestValidatorArgs{\nName: pulumi.String(validatorName),\nRestApiId: restApi.ID(),\nValidateRequestBody: pulumi.String(validateRequestBody),\nValidateRequestParameters: pulumi.String(validateRequestParameters),\n})\nif err != nil {\nreturn err\n}\n_, err = apigateway.NewMethod(ctx, \"method\", \u0026apigateway.MethodArgs{\nHttpMethod: pulumi.String(\"POST\"),\nResourceId: restApi.RootResourceId,\nRestApiId: restApi.ID(),\nAuthorizationType: apigateway.MethodAuthorizationTypeNone,\nIntegration: interface{}{\nType: apigateway.MethodIntegrationTypeMock,\nContentHandling: apigateway.MethodIntegrationContentHandling(contentHandling),\nIntegrationResponses: apigateway.MethodIntegrationResponseArray{\n\u0026apigateway.MethodIntegrationResponseArgs{\nContentHandling: apigateway.MethodIntegrationResponseContentHandling(contentHandling),\nStatusCode: pulumi.String(\"400\"),\n},\n},\n},\nRequestValidatorId: requestValidator.ID(),\nOperationName: pulumi.String(operationName),\n})\nif err != nil {\nreturn err\n}\nctx.Export(\"rootResourceId\", restApi.RootResourceId)\nreturn nil\n})\n}\n\n```\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws_native from \"@pulumi/aws-native\";\n\nconst config = new pulumi.Config();\nconst contentHandling = config.require(\"contentHandling\");\nconst operationName = config.get(\"operationName\") || \"testoperationName\";\nconst restApiName = config.get(\"restApiName\") || \"testrestApiName\";\nconst validatorName = config.get(\"validatorName\") || \"testvalidatorName\";\nconst validateRequestBody = config.get(\"validateRequestBody\") || \"testvalidateRequestBody\";\nconst validateRequestParameters = config.get(\"validateRequestParameters\") || true;\nconst restApi = new aws_native.apigateway.RestApi(\"restApi\", {name: restApiName});\nconst requestValidator = new aws_native.apigateway.RequestValidator(\"requestValidator\", {\n name: validatorName,\n restApiId: restApi.id,\n validateRequestBody: validateRequestBody,\n validateRequestParameters: validateRequestParameters,\n});\nconst method = new aws_native.apigateway.Method(\"method\", {\n httpMethod: \"POST\",\n resourceId: restApi.rootResourceId,\n restApiId: restApi.id,\n authorizationType: aws_native.apigateway.MethodAuthorizationType.None,\n integration: {\n type: aws_native.apigateway.MethodIntegrationType.Mock,\n contentHandling: aws_native.apigateway.MethodIntegrationContentHandling[contentHandling],\n integrationResponses: [{\n contentHandling: aws_native.apigateway.MethodIntegrationResponseContentHandling[contentHandling],\n statusCode: \"400\",\n }],\n },\n requestValidatorId: requestValidator.id,\n operationName: operationName,\n});\nexport const rootResourceId = restApi.rootResourceId;\n\n```\n\n```python\nimport pulumi\nimport pulumi_aws_native as aws_native\n\nconfig = pulumi.Config()\ncontent_handling = config.require(\"contentHandling\")\noperation_name = config.get(\"operationName\")\nif operation_name is None:\n operation_name = \"testoperationName\"\nrest_api_name = config.get(\"restApiName\")\nif rest_api_name is None:\n rest_api_name = \"testrestApiName\"\nvalidator_name = config.get(\"validatorName\")\nif validator_name is None:\n validator_name = \"testvalidatorName\"\nvalidate_request_body = config.get(\"validateRequestBody\")\nif validate_request_body is None:\n validate_request_body = \"testvalidateRequestBody\"\nvalidate_request_parameters = config.get(\"validateRequestParameters\")\nif validate_request_parameters is None:\n validate_request_parameters = True\nrest_api = aws_native.apigateway.RestApi(\"restApi\", name=rest_api_name)\nrequest_validator = aws_native.apigateway.RequestValidator(\"requestValidator\",\n name=validator_name,\n rest_api_id=rest_api.id,\n validate_request_body=validate_request_body,\n validate_request_parameters=validate_request_parameters)\nmethod = aws_native.apigateway.Method(\"method\",\n http_method=\"POST\",\n resource_id=rest_api.root_resource_id,\n rest_api_id=rest_api.id,\n authorization_type=aws_native.apigateway.MethodAuthorizationType.NONE,\n integration=aws_native.apigateway.MethodIntegrationArgs(\n type=aws_native.apigateway.MethodIntegrationType.MOCK,\n content_handling=aws_native.apigateway.MethodIntegrationContentHandling(content_handling),\n integration_responses=[aws_native.apigateway.MethodIntegrationResponseArgs(\n content_handling=aws_native.apigateway.MethodIntegrationResponseContentHandling(content_handling),\n status_code=\"400\",\n )],\n ),\n request_validator_id=request_validator.id,\n operation_name=operation_name)\npulumi.export(\"rootResourceId\", rest_api.root_resource_id)\n\n```\n\n{{% /example %}}\n{{% example %}}\n### Example\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AwsNative = Pulumi.AwsNative;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var apiName = config.Require(\"apiName\");\n var validatorName = config.Require(\"validatorName\");\n var validateRequestBody = config.Require(\"validateRequestBody\");\n var validateRequestParameters = config.Require(\"validateRequestParameters\");\n var restApi = new AwsNative.ApiGateway.RestApi(\"restApi\", new()\n {\n Name = apiName,\n });\n\n var requestValidator = new AwsNative.ApiGateway.RequestValidator(\"requestValidator\", new()\n {\n Name = validatorName,\n RestApiId = restApi.Id,\n ValidateRequestBody = validateRequestBody,\n ValidateRequestParameters = validateRequestParameters,\n });\n\n});\n\n\n```\n\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws-native/sdk/go/aws/apigateway\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tapiName := cfg.Require(\"apiName\")\n\t\tvalidatorName := cfg.Require(\"validatorName\")\n\t\tvalidateRequestBody := cfg.Require(\"validateRequestBody\")\n\t\tvalidateRequestParameters := cfg.Require(\"validateRequestParameters\")\n\t\trestApi, err := apigateway.NewRestApi(ctx, \"restApi\", \u0026apigateway.RestApiArgs{\n\t\t\tName: pulumi.String(apiName),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = apigateway.NewRequestValidator(ctx, \"requestValidator\", \u0026apigateway.RequestValidatorArgs{\n\t\t\tName: pulumi.String(validatorName),\n\t\t\tRestApiId: restApi.ID(),\n\t\t\tValidateRequestBody: pulumi.String(validateRequestBody),\n\t\t\tValidateRequestParameters: pulumi.String(validateRequestParameters),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n\n```\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws_native from \"@pulumi/aws-native\";\n\nconst config = new pulumi.Config();\nconst apiName = config.require(\"apiName\");\nconst validatorName = config.require(\"validatorName\");\nconst validateRequestBody = config.require(\"validateRequestBody\");\nconst validateRequestParameters = config.require(\"validateRequestParameters\");\nconst restApi = new aws_native.apigateway.RestApi(\"restApi\", {name: apiName});\nconst requestValidator = new aws_native.apigateway.RequestValidator(\"requestValidator\", {\n name: validatorName,\n restApiId: restApi.id,\n validateRequestBody: validateRequestBody,\n validateRequestParameters: validateRequestParameters,\n});\n\n```\n\n```python\nimport pulumi\nimport pulumi_aws_native as aws_native\n\nconfig = pulumi.Config()\napi_name = config.require(\"apiName\")\nvalidator_name = config.require(\"validatorName\")\nvalidate_request_body = config.require(\"validateRequestBody\")\nvalidate_request_parameters = config.require(\"validateRequestParameters\")\nrest_api = aws_native.apigateway.RestApi(\"restApi\", name=api_name)\nrequest_validator = aws_native.apigateway.RequestValidator(\"requestValidator\",\n name=validator_name,\n rest_api_id=rest_api.id,\n validate_request_body=validate_request_body,\n validate_request_parameters=validate_request_parameters)\n\n```\n\n{{% /example %}}\n{{% example %}}\n### Example\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AwsNative = Pulumi.AwsNative;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var apiName = config.Require(\"apiName\");\n var validatorName = config.Require(\"validatorName\");\n var validateRequestBody = config.Require(\"validateRequestBody\");\n var validateRequestParameters = config.Require(\"validateRequestParameters\");\n var restApi = new AwsNative.ApiGateway.RestApi(\"restApi\", new()\n {\n Name = apiName,\n });\n\n var requestValidator = new AwsNative.ApiGateway.RequestValidator(\"requestValidator\", new()\n {\n Name = validatorName,\n RestApiId = restApi.Id,\n ValidateRequestBody = validateRequestBody,\n ValidateRequestParameters = validateRequestParameters,\n });\n\n});\n\n\n```\n\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws-native/sdk/go/aws/apigateway\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tapiName := cfg.Require(\"apiName\")\n\t\tvalidatorName := cfg.Require(\"validatorName\")\n\t\tvalidateRequestBody := cfg.Require(\"validateRequestBody\")\n\t\tvalidateRequestParameters := cfg.Require(\"validateRequestParameters\")\n\t\trestApi, err := apigateway.NewRestApi(ctx, \"restApi\", \u0026apigateway.RestApiArgs{\n\t\t\tName: pulumi.String(apiName),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = apigateway.NewRequestValidator(ctx, \"requestValidator\", \u0026apigateway.RequestValidatorArgs{\n\t\t\tName: pulumi.String(validatorName),\n\t\t\tRestApiId: restApi.ID(),\n\t\t\tValidateRequestBody: pulumi.String(validateRequestBody),\n\t\t\tValidateRequestParameters: pulumi.String(validateRequestParameters),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n\n```\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws_native from \"@pulumi/aws-native\";\n\nconst config = new pulumi.Config();\nconst apiName = config.require(\"apiName\");\nconst validatorName = config.require(\"validatorName\");\nconst validateRequestBody = config.require(\"validateRequestBody\");\nconst validateRequestParameters = config.require(\"validateRequestParameters\");\nconst restApi = new aws_native.apigateway.RestApi(\"restApi\", {name: apiName});\nconst requestValidator = new aws_native.apigateway.RequestValidator(\"requestValidator\", {\n name: validatorName,\n restApiId: restApi.id,\n validateRequestBody: validateRequestBody,\n validateRequestParameters: validateRequestParameters,\n});\n\n```\n\n```python\nimport pulumi\nimport pulumi_aws_native as aws_native\n\nconfig = pulumi.Config()\napi_name = config.require(\"apiName\")\nvalidator_name = config.require(\"validatorName\")\nvalidate_request_body = config.require(\"validateRequestBody\")\nvalidate_request_parameters = config.require(\"validateRequestParameters\")\nrest_api = aws_native.apigateway.RestApi(\"restApi\", name=api_name)\nrequest_validator = aws_native.apigateway.RequestValidator(\"requestValidator\",\n name=validator_name,\n rest_api_id=rest_api.id,\n validate_request_body=validate_request_body,\n validate_request_parameters=validate_request_parameters)\n\n```\n\n{{% /example %}}\n{{% example %}}\n### Example\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AwsNative = Pulumi.AwsNative;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var apiName = config.Require(\"apiName\");\n var type = config.Require(\"type\");\n var myRestApi = new AwsNative.ApiGateway.RestApi(\"myRestApi\", new()\n {\n EndpointConfiguration = new AwsNative.ApiGateway.Inputs.RestApiEndpointConfigurationArgs\n {\n Types = new[]\n {\n type,\n },\n },\n Name = apiName,\n });\n\n});\n\n\n```\n\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws-native/sdk/go/aws/apigateway\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tapiName := cfg.Require(\"apiName\")\n\t\t_type := cfg.Require(\"type\")\n\t\t_, err := apigateway.NewRestApi(ctx, \"myRestApi\", \u0026apigateway.RestApiArgs{\n\t\t\tEndpointConfiguration: \u0026apigateway.RestApiEndpointConfigurationArgs{\n\t\t\t\tTypes: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(_type),\n\t\t\t\t},\n\t\t\t},\n\t\t\tName: pulumi.String(apiName),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n\n```\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws_native from \"@pulumi/aws-native\";\n\nconst config = new pulumi.Config();\nconst apiName = config.require(\"apiName\");\nconst type = config.require(\"type\");\nconst myRestApi = new aws_native.apigateway.RestApi(\"myRestApi\", {\n endpointConfiguration: {\n types: [type],\n },\n name: apiName,\n});\n\n```\n\n```python\nimport pulumi\nimport pulumi_aws_native as aws_native\n\nconfig = pulumi.Config()\napi_name = config.require(\"apiName\")\ntype = config.require(\"type\")\nmy_rest_api = aws_native.apigateway.RestApi(\"myRestApi\",\n endpoint_configuration=aws_native.apigateway.RestApiEndpointConfigurationArgs(\n types=[type],\n ),\n name=api_name)\n\n```\n\n{{% /example %}}\n{{% example %}}\n### Example\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AwsNative = Pulumi.AwsNative;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var apiName = config.Require(\"apiName\");\n var type = config.Require(\"type\");\n var myRestApi = new AwsNative.ApiGateway.RestApi(\"myRestApi\", new()\n {\n EndpointConfiguration = new AwsNative.ApiGateway.Inputs.RestApiEndpointConfigurationArgs\n {\n Types = new[]\n {\n type,\n },\n },\n Name = apiName,\n });\n\n});\n\n\n```\n\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws-native/sdk/go/aws/apigateway\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tapiName := cfg.Require(\"apiName\")\n\t\t_type := cfg.Require(\"type\")\n\t\t_, err := apigateway.NewRestApi(ctx, \"myRestApi\", \u0026apigateway.RestApiArgs{\n\t\t\tEndpointConfiguration: \u0026apigateway.RestApiEndpointConfigurationArgs{\n\t\t\t\tTypes: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(_type),\n\t\t\t\t},\n\t\t\t},\n\t\t\tName: pulumi.String(apiName),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n\n```\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws_native from \"@pulumi/aws-native\";\n\nconst config = new pulumi.Config();\nconst apiName = config.require(\"apiName\");\nconst type = config.require(\"type\");\nconst myRestApi = new aws_native.apigateway.RestApi(\"myRestApi\", {\n endpointConfiguration: {\n types: [type],\n },\n name: apiName,\n});\n\n```\n\n```python\nimport pulumi\nimport pulumi_aws_native as aws_native\n\nconfig = pulumi.Config()\napi_name = config.require(\"apiName\")\ntype = config.require(\"type\")\nmy_rest_api = aws_native.apigateway.RestApi(\"myRestApi\",\n endpoint_configuration=aws_native.apigateway.RestApiEndpointConfigurationArgs(\n types=[type],\n ),\n name=api_name)\n\n```\n\n{{% /example %}}\n{{% example %}}\n### Example\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AwsNative = Pulumi.AwsNative;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var restApi = new AwsNative.ApiGateway.RestApi(\"restApi\", new()\n {\n Body = \n {\n { \"swagger\", 2 },\n { \"info\", \n {\n { \"version\", \"0.0.1\" },\n { \"title\", \"test\" },\n } },\n { \"basePath\", \"/pete\" },\n { \"schemes\", new[]\n {\n \"https\",\n } },\n { \"definitions\", \n {\n { \"empty\", \n {\n { \"type\", \"object\" },\n } },\n } },\n },\n Name = \"myApi\",\n Parameters = \n {\n { \"endpointConfigurationTypes\", \"REGIONAL\" },\n },\n });\n\n});\n\n\n```\n\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws-native/sdk/go/aws/apigateway\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := apigateway.NewRestApi(ctx, \"restApi\", \u0026apigateway.RestApiArgs{\n\t\t\tBody: pulumi.Any{\n\t\t\t\tSwagger: 2,\n\t\t\t\tInfo: map[string]interface{}{\n\t\t\t\t\t\"version\": \"0.0.1\",\n\t\t\t\t\t\"title\": \"test\",\n\t\t\t\t},\n\t\t\t\tBasePath: \"/pete\",\n\t\t\t\tSchemes: []string{\n\t\t\t\t\t\"https\",\n\t\t\t\t},\n\t\t\t\tDefinitions: map[string]interface{}{\n\t\t\t\t\t\"empty\": map[string]interface{}{\n\t\t\t\t\t\t\"type\": \"object\",\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tName: pulumi.String(\"myApi\"),\n\t\t\tParameters: pulumi.Any{\n\t\t\t\tEndpointConfigurationTypes: \"REGIONAL\",\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n\n```\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws_native from \"@pulumi/aws-native\";\n\nconst restApi = new aws_native.apigateway.RestApi(\"restApi\", {\n body: {\n swagger: 2,\n info: {\n version: \"0.0.1\",\n title: \"test\",\n },\n basePath: \"/pete\",\n schemes: [\"https\"],\n definitions: {\n empty: {\n type: \"object\",\n },\n },\n },\n name: \"myApi\",\n parameters: {\n endpointConfigurationTypes: \"REGIONAL\",\n },\n});\n\n```\n\n```python\nimport pulumi\nimport pulumi_aws_native as aws_native\n\nrest_api = aws_native.apigateway.RestApi(\"restApi\",\n body={\n \"swagger\": 2,\n \"info\": {\n \"version\": \"0.0.1\",\n \"title\": \"test\",\n },\n \"basePath\": \"/pete\",\n \"schemes\": [\"https\"],\n \"definitions\": {\n \"empty\": {\n \"type\": \"object\",\n },\n },\n },\n name=\"myApi\",\n parameters={\n \"endpointConfigurationTypes\": \"REGIONAL\",\n })\n\n```\n\n{{% /example %}}\n{{% example %}}\n### Example\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AwsNative = Pulumi.AwsNative;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var restApi = new AwsNative.ApiGateway.RestApi(\"restApi\", new()\n {\n Body = \n {\n { \"swagger\", 2 },\n { \"info\", \n {\n { \"version\", \"0.0.1\" },\n { \"title\", \"test\" },\n } },\n { \"basePath\", \"/pete\" },\n { \"schemes\", new[]\n {\n \"https\",\n } },\n { \"definitions\", \n {\n { \"empty\", \n {\n { \"type\", \"object\" },\n } },\n } },\n },\n Name = \"myApi\",\n Parameters = \n {\n { \"endpointConfigurationTypes\", \"REGIONAL\" },\n },\n });\n\n});\n\n\n```\n\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws-native/sdk/go/aws/apigateway\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := apigateway.NewRestApi(ctx, \"restApi\", \u0026apigateway.RestApiArgs{\n\t\t\tBody: pulumi.Any{\n\t\t\t\tSwagger: 2,\n\t\t\t\tInfo: map[string]interface{}{\n\t\t\t\t\t\"version\": \"0.0.1\",\n\t\t\t\t\t\"title\": \"test\",\n\t\t\t\t},\n\t\t\t\tBasePath: \"/pete\",\n\t\t\t\tSchemes: []string{\n\t\t\t\t\t\"https\",\n\t\t\t\t},\n\t\t\t\tDefinitions: map[string]interface{}{\n\t\t\t\t\t\"empty\": map[string]interface{}{\n\t\t\t\t\t\t\"type\": \"object\",\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tName: pulumi.String(\"myApi\"),\n\t\t\tParameters: pulumi.Any{\n\t\t\t\tEndpointConfigurationTypes: \"REGIONAL\",\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n\n```\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws_native from \"@pulumi/aws-native\";\n\nconst restApi = new aws_native.apigateway.RestApi(\"restApi\", {\n body: {\n swagger: 2,\n info: {\n version: \"0.0.1\",\n title: \"test\",\n },\n basePath: \"/pete\",\n schemes: [\"https\"],\n definitions: {\n empty: {\n type: \"object\",\n },\n },\n },\n name: \"myApi\",\n parameters: {\n endpointConfigurationTypes: \"REGIONAL\",\n },\n});\n\n```\n\n```python\nimport pulumi\nimport pulumi_aws_native as aws_native\n\nrest_api = aws_native.apigateway.RestApi(\"restApi\",\n body={\n \"swagger\": 2,\n \"info\": {\n \"version\": \"0.0.1\",\n \"title\": \"test\",\n },\n \"basePath\": \"/pete\",\n \"schemes\": [\"https\"],\n \"definitions\": {\n \"empty\": {\n \"type\": \"object\",\n },\n },\n },\n name=\"myApi\",\n parameters={\n \"endpointConfigurationTypes\": \"REGIONAL\",\n })\n\n```\n\n{{% /example %}}\n{{% example %}}\n### Example\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AwsNative = Pulumi.AwsNative;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var apiKeySourceType = config.Require(\"apiKeySourceType\");\n var apiName = config.Require(\"apiName\");\n var binaryMediaType1 = config.Require(\"binaryMediaType1\");\n var binaryMediaType2 = config.Require(\"binaryMediaType2\");\n var minimumCompressionSize = config.Require(\"minimumCompressionSize\");\n var myRestApi = new AwsNative.ApiGateway.RestApi(\"myRestApi\", new()\n {\n ApiKeySourceType = apiKeySourceType,\n BinaryMediaTypes = new[]\n {\n binaryMediaType1,\n binaryMediaType2,\n },\n MinimumCompressionSize = minimumCompressionSize,\n Name = apiName,\n });\n\n});\n\n\n```\n\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws-native/sdk/go/aws/apigateway\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tapiKeySourceType := cfg.Require(\"apiKeySourceType\")\n\t\tapiName := cfg.Require(\"apiName\")\n\t\tbinaryMediaType1 := cfg.Require(\"binaryMediaType1\")\n\t\tbinaryMediaType2 := cfg.Require(\"binaryMediaType2\")\n\t\tminimumCompressionSize := cfg.Require(\"minimumCompressionSize\")\n\t\t_, err := apigateway.NewRestApi(ctx, \"myRestApi\", \u0026apigateway.RestApiArgs{\n\t\t\tApiKeySourceType: pulumi.String(apiKeySourceType),\n\t\t\tBinaryMediaTypes: pulumi.StringArray{\n\t\t\t\tpulumi.String(binaryMediaType1),\n\t\t\t\tpulumi.String(binaryMediaType2),\n\t\t\t},\n\t\t\tMinimumCompressionSize: pulumi.String(minimumCompressionSize),\n\t\t\tName: pulumi.String(apiName),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n\n```\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws_native from \"@pulumi/aws-native\";\n\nconst config = new pulumi.Config();\nconst apiKeySourceType = config.require(\"apiKeySourceType\");\nconst apiName = config.require(\"apiName\");\nconst binaryMediaType1 = config.require(\"binaryMediaType1\");\nconst binaryMediaType2 = config.require(\"binaryMediaType2\");\nconst minimumCompressionSize = config.require(\"minimumCompressionSize\");\nconst myRestApi = new aws_native.apigateway.RestApi(\"myRestApi\", {\n apiKeySourceType: apiKeySourceType,\n binaryMediaTypes: [\n binaryMediaType1,\n binaryMediaType2,\n ],\n minimumCompressionSize: minimumCompressionSize,\n name: apiName,\n});\n\n```\n\n```python\nimport pulumi\nimport pulumi_aws_native as aws_native\n\nconfig = pulumi.Config()\napi_key_source_type = config.require(\"apiKeySourceType\")\napi_name = config.require(\"apiName\")\nbinary_media_type1 = config.require(\"binaryMediaType1\")\nbinary_media_type2 = config.require(\"binaryMediaType2\")\nminimum_compression_size = config.require(\"minimumCompressionSize\")\nmy_rest_api = aws_native.apigateway.RestApi(\"myRestApi\",\n api_key_source_type=api_key_source_type,\n binary_media_types=[\n binary_media_type1,\n binary_media_type2,\n ],\n minimum_compression_size=minimum_compression_size,\n name=api_name)\n\n```\n\n{{% /example %}}\n{{% example %}}\n### Example\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AwsNative = Pulumi.AwsNative;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var apiKeySourceType = config.Require(\"apiKeySourceType\");\n var apiName = config.Require(\"apiName\");\n var binaryMediaType1 = config.Require(\"binaryMediaType1\");\n var binaryMediaType2 = config.Require(\"binaryMediaType2\");\n var minimumCompressionSize = config.Require(\"minimumCompressionSize\");\n var myRestApi = new AwsNative.ApiGateway.RestApi(\"myRestApi\", new()\n {\n ApiKeySourceType = apiKeySourceType,\n BinaryMediaTypes = new[]\n {\n binaryMediaType1,\n binaryMediaType2,\n },\n MinimumCompressionSize = minimumCompressionSize,\n Name = apiName,\n });\n\n});\n\n\n```\n\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws-native/sdk/go/aws/apigateway\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tapiKeySourceType := cfg.Require(\"apiKeySourceType\")\n\t\tapiName := cfg.Require(\"apiName\")\n\t\tbinaryMediaType1 := cfg.Require(\"binaryMediaType1\")\n\t\tbinaryMediaType2 := cfg.Require(\"binaryMediaType2\")\n\t\tminimumCompressionSize := cfg.Require(\"minimumCompressionSize\")\n\t\t_, err := apigateway.NewRestApi(ctx, \"myRestApi\", \u0026apigateway.RestApiArgs{\n\t\t\tApiKeySourceType: pulumi.String(apiKeySourceType),\n\t\t\tBinaryMediaTypes: pulumi.StringArray{\n\t\t\t\tpulumi.String(binaryMediaType1),\n\t\t\t\tpulumi.String(binaryMediaType2),\n\t\t\t},\n\t\t\tMinimumCompressionSize: pulumi.String(minimumCompressionSize),\n\t\t\tName: pulumi.String(apiName),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n\n```\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws_native from \"@pulumi/aws-native\";\n\nconst config = new pulumi.Config();\nconst apiKeySourceType = config.require(\"apiKeySourceType\");\nconst apiName = config.require(\"apiName\");\nconst binaryMediaType1 = config.require(\"binaryMediaType1\");\nconst binaryMediaType2 = config.require(\"binaryMediaType2\");\nconst minimumCompressionSize = config.require(\"minimumCompressionSize\");\nconst myRestApi = new aws_native.apigateway.RestApi(\"myRestApi\", {\n apiKeySourceType: apiKeySourceType,\n binaryMediaTypes: [\n binaryMediaType1,\n binaryMediaType2,\n ],\n minimumCompressionSize: minimumCompressionSize,\n name: apiName,\n});\n\n```\n\n```python\nimport pulumi\nimport pulumi_aws_native as aws_native\n\nconfig = pulumi.Config()\napi_key_source_type = config.require(\"apiKeySourceType\")\napi_name = config.require(\"apiName\")\nbinary_media_type1 = config.require(\"binaryMediaType1\")\nbinary_media_type2 = config.require(\"binaryMediaType2\")\nminimum_compression_size = config.require(\"minimumCompressionSize\")\nmy_rest_api = aws_native.apigateway.RestApi(\"myRestApi\",\n api_key_source_type=api_key_source_type,\n binary_media_types=[\n binary_media_type1,\n binary_media_type2,\n ],\n minimum_compression_size=minimum_compression_size,\n name=api_name)\n\n```\n\n{{% /example %}}\n{{% /examples %}}\n",
+ "description": "The ``AWS::ApiGateway::RestApi`` resource creates a REST API. For more information, see [restapi:create](https://docs.aws.amazon.com/apigateway/latest/api/API_CreateRestApi.html) in the *Amazon API Gateway REST API Reference*.\n On January 1, 2016, the Swagger Specification was donated to the [OpenAPI initiative](https://docs.aws.amazon.com/https://www.openapis.org/), becoming the foundation of the OpenAPI Specification.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n### Example\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AwsNative = Pulumi.AwsNative;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var apiName = config.Require(\"apiName\");\n var description = config.Require(\"description\");\n var version = config.Require(\"version\");\n var type = config.Require(\"type\");\n var property = config.Require(\"property\");\n var restApi = new AwsNative.ApiGateway.RestApi(\"restApi\", new()\n {\n Name = apiName,\n });\n\n var documentationPart = new AwsNative.ApiGateway.DocumentationPart(\"documentationPart\", new()\n {\n Location = new AwsNative.ApiGateway.Inputs.DocumentationPartLocationArgs\n {\n Type = System.Enum.Parse\u003cAwsNative.ApiGateway.DocumentationPartLocationType\u003e(type),\n },\n RestApiId = restApi.Id,\n Properties = property,\n });\n\n var documentationVersion = new AwsNative.ApiGateway.DocumentationVersion(\"documentationVersion\", new()\n {\n Description = description,\n DocumentationVersionValue = version,\n RestApiId = restApi.Id,\n }, new CustomResourceOptions\n {\n DependsOn = new[]\n {\n documentationPart,\n },\n });\n\n});\n\n\n```\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws_native from \"@pulumi/aws-native\";\n\nconst config = new pulumi.Config();\nconst apiName = config.require(\"apiName\");\nconst description = config.require(\"description\");\nconst version = config.require(\"version\");\nconst type = config.require(\"type\");\nconst property = config.require(\"property\");\nconst restApi = new aws_native.apigateway.RestApi(\"restApi\", {name: apiName});\nconst documentationPart = new aws_native.apigateway.DocumentationPart(\"documentationPart\", {\n location: {\n type: aws_native.apigateway.DocumentationPartLocationType[type],\n },\n restApiId: restApi.id,\n properties: property,\n});\nconst documentationVersion = new aws_native.apigateway.DocumentationVersion(\"documentationVersion\", {\n description: description,\n documentationVersion: version,\n restApiId: restApi.id,\n}, {\n dependsOn: [documentationPart],\n});\n\n```\n\n```python\nimport pulumi\nimport pulumi_aws_native as aws_native\n\nconfig = pulumi.Config()\napi_name = config.require(\"apiName\")\ndescription = config.require(\"description\")\nversion = config.require(\"version\")\ntype = config.require(\"type\")\nproperty = config.require(\"property\")\nrest_api = aws_native.apigateway.RestApi(\"restApi\", name=api_name)\ndocumentation_part = aws_native.apigateway.DocumentationPart(\"documentationPart\",\n location=aws_native.apigateway.DocumentationPartLocationArgs(\n type=aws_native.apigateway.DocumentationPartLocationType(type),\n ),\n rest_api_id=rest_api.id,\n properties=property)\ndocumentation_version = aws_native.apigateway.DocumentationVersion(\"documentationVersion\",\n description=description,\n documentation_version=version,\n rest_api_id=rest_api.id,\n opts=pulumi.ResourceOptions(depends_on=[documentation_part]))\n\n```\n\n{{% /example %}}\n{{% example %}}\n### Example\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AwsNative = Pulumi.AwsNative;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var apiName = config.Require(\"apiName\");\n var description = config.Require(\"description\");\n var version = config.Require(\"version\");\n var type = config.Require(\"type\");\n var property = config.Require(\"property\");\n var restApi = new AwsNative.ApiGateway.RestApi(\"restApi\", new()\n {\n Name = apiName,\n });\n\n var documentationPart = new AwsNative.ApiGateway.DocumentationPart(\"documentationPart\", new()\n {\n Location = new AwsNative.ApiGateway.Inputs.DocumentationPartLocationArgs\n {\n Type = System.Enum.Parse\u003cAwsNative.ApiGateway.DocumentationPartLocationType\u003e(type),\n },\n RestApiId = restApi.Id,\n Properties = property,\n });\n\n var documentationVersion = new AwsNative.ApiGateway.DocumentationVersion(\"documentationVersion\", new()\n {\n Description = description,\n DocumentationVersionValue = version,\n RestApiId = restApi.Id,\n }, new CustomResourceOptions\n {\n DependsOn = new[]\n {\n documentationPart,\n },\n });\n\n});\n\n\n```\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws_native from \"@pulumi/aws-native\";\n\nconst config = new pulumi.Config();\nconst apiName = config.require(\"apiName\");\nconst description = config.require(\"description\");\nconst version = config.require(\"version\");\nconst type = config.require(\"type\");\nconst property = config.require(\"property\");\nconst restApi = new aws_native.apigateway.RestApi(\"restApi\", {name: apiName});\nconst documentationPart = new aws_native.apigateway.DocumentationPart(\"documentationPart\", {\n location: {\n type: aws_native.apigateway.DocumentationPartLocationType[type],\n },\n restApiId: restApi.id,\n properties: property,\n});\nconst documentationVersion = new aws_native.apigateway.DocumentationVersion(\"documentationVersion\", {\n description: description,\n documentationVersion: version,\n restApiId: restApi.id,\n}, {\n dependsOn: [documentationPart],\n});\n\n```\n\n```python\nimport pulumi\nimport pulumi_aws_native as aws_native\n\nconfig = pulumi.Config()\napi_name = config.require(\"apiName\")\ndescription = config.require(\"description\")\nversion = config.require(\"version\")\ntype = config.require(\"type\")\nproperty = config.require(\"property\")\nrest_api = aws_native.apigateway.RestApi(\"restApi\", name=api_name)\ndocumentation_part = aws_native.apigateway.DocumentationPart(\"documentationPart\",\n location=aws_native.apigateway.DocumentationPartLocationArgs(\n type=aws_native.apigateway.DocumentationPartLocationType(type),\n ),\n rest_api_id=rest_api.id,\n properties=property)\ndocumentation_version = aws_native.apigateway.DocumentationVersion(\"documentationVersion\",\n description=description,\n documentation_version=version,\n rest_api_id=rest_api.id,\n opts=pulumi.ResourceOptions(depends_on=[documentation_part]))\n\n```\n\n{{% /example %}}\n{{% example %}}\n### Example\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AwsNative = Pulumi.AwsNative;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var contentHandling = config.Require(\"contentHandling\");\n var operationName = config.Get(\"operationName\") ?? \"testoperationName\";\n var restApiName = config.Get(\"restApiName\") ?? \"testrestApiName\";\n var validatorName = config.Get(\"validatorName\") ?? \"testvalidatorName\";\n var validateRequestBody = config.Get(\"validateRequestBody\") ?? \"testvalidateRequestBody\";\n var validateRequestParameters = config.Get(\"validateRequestParameters\") ?? true;\n var restApi = new AwsNative.ApiGateway.RestApi(\"restApi\", new()\n {\n Name = restApiName,\n });\n\n var requestValidator = new AwsNative.ApiGateway.RequestValidator(\"requestValidator\", new()\n {\n Name = validatorName,\n RestApiId = restApi.Id,\n ValidateRequestBody = validateRequestBody,\n ValidateRequestParameters = validateRequestParameters,\n });\n\n var method = new AwsNative.ApiGateway.Method(\"method\", new()\n {\n HttpMethod = \"POST\",\n ResourceId = restApi.RootResourceId,\n RestApiId = restApi.Id,\n AuthorizationType = AwsNative.ApiGateway.MethodAuthorizationType.None,\n Integration = new AwsNative.ApiGateway.Inputs.MethodIntegrationArgs\n {\n Type = AwsNative.ApiGateway.MethodIntegrationType.Mock,\n ContentHandling = System.Enum.Parse\u003cAwsNative.ApiGateway.MethodIntegrationContentHandling\u003e(contentHandling),\n IntegrationResponses = new[]\n {\n new AwsNative.ApiGateway.Inputs.MethodIntegrationResponseArgs\n {\n ContentHandling = System.Enum.Parse\u003cAwsNative.ApiGateway.MethodIntegrationResponseContentHandling\u003e(contentHandling),\n StatusCode = \"400\",\n },\n },\n },\n RequestValidatorId = requestValidator.Id,\n OperationName = operationName,\n });\n\n return new Dictionary\u003cstring, object?\u003e\n {\n [\"rootResourceId\"] = restApi.RootResourceId,\n };\n});\n\n\n```\n\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws-native/sdk/go/aws/apigateway\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\nfunc main() {\npulumi.Run(func(ctx *pulumi.Context) error {\ncfg := config.New(ctx, \"\")\ncontentHandling := cfg.Require(\"contentHandling\")\noperationName := \"testoperationName\";\nif param := cfg.Get(\"operationName\"); param != \"\"{\noperationName = param\n}\nrestApiName := \"testrestApiName\";\nif param := cfg.Get(\"restApiName\"); param != \"\"{\nrestApiName = param\n}\nvalidatorName := \"testvalidatorName\";\nif param := cfg.Get(\"validatorName\"); param != \"\"{\nvalidatorName = param\n}\nvalidateRequestBody := \"testvalidateRequestBody\";\nif param := cfg.Get(\"validateRequestBody\"); param != \"\"{\nvalidateRequestBody = param\n}\nvalidateRequestParameters := true;\nif param := cfg.Get(\"validateRequestParameters\"); param != \"\"{\nvalidateRequestParameters = param\n}\nrestApi, err := apigateway.NewRestApi(ctx, \"restApi\", \u0026apigateway.RestApiArgs{\nName: pulumi.String(restApiName),\n})\nif err != nil {\nreturn err\n}\nrequestValidator, err := apigateway.NewRequestValidator(ctx, \"requestValidator\", \u0026apigateway.RequestValidatorArgs{\nName: pulumi.String(validatorName),\nRestApiId: restApi.ID(),\nValidateRequestBody: pulumi.String(validateRequestBody),\nValidateRequestParameters: pulumi.String(validateRequestParameters),\n})\nif err != nil {\nreturn err\n}\n_, err = apigateway.NewMethod(ctx, \"method\", \u0026apigateway.MethodArgs{\nHttpMethod: pulumi.String(\"POST\"),\nResourceId: restApi.RootResourceId,\nRestApiId: restApi.ID(),\nAuthorizationType: apigateway.MethodAuthorizationTypeNone,\nIntegration: interface{}{\nType: apigateway.MethodIntegrationTypeMock,\nContentHandling: apigateway.MethodIntegrationContentHandling(contentHandling),\nIntegrationResponses: apigateway.MethodIntegrationResponseArray{\n\u0026apigateway.MethodIntegrationResponseArgs{\nContentHandling: apigateway.MethodIntegrationResponseContentHandling(contentHandling),\nStatusCode: pulumi.String(\"400\"),\n},\n},\n},\nRequestValidatorId: requestValidator.ID(),\nOperationName: pulumi.String(operationName),\n})\nif err != nil {\nreturn err\n}\nctx.Export(\"rootResourceId\", restApi.RootResourceId)\nreturn nil\n})\n}\n\n```\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws_native from \"@pulumi/aws-native\";\n\nconst config = new pulumi.Config();\nconst contentHandling = config.require(\"contentHandling\");\nconst operationName = config.get(\"operationName\") || \"testoperationName\";\nconst restApiName = config.get(\"restApiName\") || \"testrestApiName\";\nconst validatorName = config.get(\"validatorName\") || \"testvalidatorName\";\nconst validateRequestBody = config.get(\"validateRequestBody\") || \"testvalidateRequestBody\";\nconst validateRequestParameters = config.get(\"validateRequestParameters\") || true;\nconst restApi = new aws_native.apigateway.RestApi(\"restApi\", {name: restApiName});\nconst requestValidator = new aws_native.apigateway.RequestValidator(\"requestValidator\", {\n name: validatorName,\n restApiId: restApi.id,\n validateRequestBody: validateRequestBody,\n validateRequestParameters: validateRequestParameters,\n});\nconst method = new aws_native.apigateway.Method(\"method\", {\n httpMethod: \"POST\",\n resourceId: restApi.rootResourceId,\n restApiId: restApi.id,\n authorizationType: aws_native.apigateway.MethodAuthorizationType.None,\n integration: {\n type: aws_native.apigateway.MethodIntegrationType.Mock,\n contentHandling: aws_native.apigateway.MethodIntegrationContentHandling[contentHandling],\n integrationResponses: [{\n contentHandling: aws_native.apigateway.MethodIntegrationResponseContentHandling[contentHandling],\n statusCode: \"400\",\n }],\n },\n requestValidatorId: requestValidator.id,\n operationName: operationName,\n});\nexport const rootResourceId = restApi.rootResourceId;\n\n```\n\n```python\nimport pulumi\nimport pulumi_aws_native as aws_native\n\nconfig = pulumi.Config()\ncontent_handling = config.require(\"contentHandling\")\noperation_name = config.get(\"operationName\")\nif operation_name is None:\n operation_name = \"testoperationName\"\nrest_api_name = config.get(\"restApiName\")\nif rest_api_name is None:\n rest_api_name = \"testrestApiName\"\nvalidator_name = config.get(\"validatorName\")\nif validator_name is None:\n validator_name = \"testvalidatorName\"\nvalidate_request_body = config.get(\"validateRequestBody\")\nif validate_request_body is None:\n validate_request_body = \"testvalidateRequestBody\"\nvalidate_request_parameters = config.get(\"validateRequestParameters\")\nif validate_request_parameters is None:\n validate_request_parameters = True\nrest_api = aws_native.apigateway.RestApi(\"restApi\", name=rest_api_name)\nrequest_validator = aws_native.apigateway.RequestValidator(\"requestValidator\",\n name=validator_name,\n rest_api_id=rest_api.id,\n validate_request_body=validate_request_body,\n validate_request_parameters=validate_request_parameters)\nmethod = aws_native.apigateway.Method(\"method\",\n http_method=\"POST\",\n resource_id=rest_api.root_resource_id,\n rest_api_id=rest_api.id,\n authorization_type=aws_native.apigateway.MethodAuthorizationType.NONE,\n integration=aws_native.apigateway.MethodIntegrationArgs(\n type=aws_native.apigateway.MethodIntegrationType.MOCK,\n content_handling=aws_native.apigateway.MethodIntegrationContentHandling(content_handling),\n integration_responses=[aws_native.apigateway.MethodIntegrationResponseArgs(\n content_handling=aws_native.apigateway.MethodIntegrationResponseContentHandling(content_handling),\n status_code=\"400\",\n )],\n ),\n request_validator_id=request_validator.id,\n operation_name=operation_name)\npulumi.export(\"rootResourceId\", rest_api.root_resource_id)\n\n```\n\n{{% /example %}}\n{{% example %}}\n### Example\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AwsNative = Pulumi.AwsNative;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var contentHandling = config.Require(\"contentHandling\");\n var operationName = config.Get(\"operationName\") ?? \"testoperationName\";\n var restApiName = config.Get(\"restApiName\") ?? \"testrestApiName\";\n var validatorName = config.Get(\"validatorName\") ?? \"testvalidatorName\";\n var validateRequestBody = config.Get(\"validateRequestBody\") ?? \"testvalidateRequestBody\";\n var validateRequestParameters = config.Get(\"validateRequestParameters\") ?? true;\n var restApi = new AwsNative.ApiGateway.RestApi(\"restApi\", new()\n {\n Name = restApiName,\n });\n\n var requestValidator = new AwsNative.ApiGateway.RequestValidator(\"requestValidator\", new()\n {\n Name = validatorName,\n RestApiId = restApi.Id,\n ValidateRequestBody = validateRequestBody,\n ValidateRequestParameters = validateRequestParameters,\n });\n\n var method = new AwsNative.ApiGateway.Method(\"method\", new()\n {\n HttpMethod = \"POST\",\n ResourceId = restApi.RootResourceId,\n RestApiId = restApi.Id,\n AuthorizationType = AwsNative.ApiGateway.MethodAuthorizationType.None,\n Integration = new AwsNative.ApiGateway.Inputs.MethodIntegrationArgs\n {\n Type = AwsNative.ApiGateway.MethodIntegrationType.Mock,\n ContentHandling = System.Enum.Parse\u003cAwsNative.ApiGateway.MethodIntegrationContentHandling\u003e(contentHandling),\n IntegrationResponses = new[]\n {\n new AwsNative.ApiGateway.Inputs.MethodIntegrationResponseArgs\n {\n ContentHandling = System.Enum.Parse\u003cAwsNative.ApiGateway.MethodIntegrationResponseContentHandling\u003e(contentHandling),\n StatusCode = \"400\",\n },\n },\n },\n RequestValidatorId = requestValidator.Id,\n OperationName = operationName,\n });\n\n return new Dictionary\u003cstring, object?\u003e\n {\n [\"rootResourceId\"] = restApi.RootResourceId,\n };\n});\n\n\n```\n\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws-native/sdk/go/aws/apigateway\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\nfunc main() {\npulumi.Run(func(ctx *pulumi.Context) error {\ncfg := config.New(ctx, \"\")\ncontentHandling := cfg.Require(\"contentHandling\")\noperationName := \"testoperationName\";\nif param := cfg.Get(\"operationName\"); param != \"\"{\noperationName = param\n}\nrestApiName := \"testrestApiName\";\nif param := cfg.Get(\"restApiName\"); param != \"\"{\nrestApiName = param\n}\nvalidatorName := \"testvalidatorName\";\nif param := cfg.Get(\"validatorName\"); param != \"\"{\nvalidatorName = param\n}\nvalidateRequestBody := \"testvalidateRequestBody\";\nif param := cfg.Get(\"validateRequestBody\"); param != \"\"{\nvalidateRequestBody = param\n}\nvalidateRequestParameters := true;\nif param := cfg.Get(\"validateRequestParameters\"); param != \"\"{\nvalidateRequestParameters = param\n}\nrestApi, err := apigateway.NewRestApi(ctx, \"restApi\", \u0026apigateway.RestApiArgs{\nName: pulumi.String(restApiName),\n})\nif err != nil {\nreturn err\n}\nrequestValidator, err := apigateway.NewRequestValidator(ctx, \"requestValidator\", \u0026apigateway.RequestValidatorArgs{\nName: pulumi.String(validatorName),\nRestApiId: restApi.ID(),\nValidateRequestBody: pulumi.String(validateRequestBody),\nValidateRequestParameters: pulumi.String(validateRequestParameters),\n})\nif err != nil {\nreturn err\n}\n_, err = apigateway.NewMethod(ctx, \"method\", \u0026apigateway.MethodArgs{\nHttpMethod: pulumi.String(\"POST\"),\nResourceId: restApi.RootResourceId,\nRestApiId: restApi.ID(),\nAuthorizationType: apigateway.MethodAuthorizationTypeNone,\nIntegration: interface{}{\nType: apigateway.MethodIntegrationTypeMock,\nContentHandling: apigateway.MethodIntegrationContentHandling(contentHandling),\nIntegrationResponses: apigateway.MethodIntegrationResponseArray{\n\u0026apigateway.MethodIntegrationResponseArgs{\nContentHandling: apigateway.MethodIntegrationResponseContentHandling(contentHandling),\nStatusCode: pulumi.String(\"400\"),\n},\n},\n},\nRequestValidatorId: requestValidator.ID(),\nOperationName: pulumi.String(operationName),\n})\nif err != nil {\nreturn err\n}\nctx.Export(\"rootResourceId\", restApi.RootResourceId)\nreturn nil\n})\n}\n\n```\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws_native from \"@pulumi/aws-native\";\n\nconst config = new pulumi.Config();\nconst contentHandling = config.require(\"contentHandling\");\nconst operationName = config.get(\"operationName\") || \"testoperationName\";\nconst restApiName = config.get(\"restApiName\") || \"testrestApiName\";\nconst validatorName = config.get(\"validatorName\") || \"testvalidatorName\";\nconst validateRequestBody = config.get(\"validateRequestBody\") || \"testvalidateRequestBody\";\nconst validateRequestParameters = config.get(\"validateRequestParameters\") || true;\nconst restApi = new aws_native.apigateway.RestApi(\"restApi\", {name: restApiName});\nconst requestValidator = new aws_native.apigateway.RequestValidator(\"requestValidator\", {\n name: validatorName,\n restApiId: restApi.id,\n validateRequestBody: validateRequestBody,\n validateRequestParameters: validateRequestParameters,\n});\nconst method = new aws_native.apigateway.Method(\"method\", {\n httpMethod: \"POST\",\n resourceId: restApi.rootResourceId,\n restApiId: restApi.id,\n authorizationType: aws_native.apigateway.MethodAuthorizationType.None,\n integration: {\n type: aws_native.apigateway.MethodIntegrationType.Mock,\n contentHandling: aws_native.apigateway.MethodIntegrationContentHandling[contentHandling],\n integrationResponses: [{\n contentHandling: aws_native.apigateway.MethodIntegrationResponseContentHandling[contentHandling],\n statusCode: \"400\",\n }],\n },\n requestValidatorId: requestValidator.id,\n operationName: operationName,\n});\nexport const rootResourceId = restApi.rootResourceId;\n\n```\n\n```python\nimport pulumi\nimport pulumi_aws_native as aws_native\n\nconfig = pulumi.Config()\ncontent_handling = config.require(\"contentHandling\")\noperation_name = config.get(\"operationName\")\nif operation_name is None:\n operation_name = \"testoperationName\"\nrest_api_name = config.get(\"restApiName\")\nif rest_api_name is None:\n rest_api_name = \"testrestApiName\"\nvalidator_name = config.get(\"validatorName\")\nif validator_name is None:\n validator_name = \"testvalidatorName\"\nvalidate_request_body = config.get(\"validateRequestBody\")\nif validate_request_body is None:\n validate_request_body = \"testvalidateRequestBody\"\nvalidate_request_parameters = config.get(\"validateRequestParameters\")\nif validate_request_parameters is None:\n validate_request_parameters = True\nrest_api = aws_native.apigateway.RestApi(\"restApi\", name=rest_api_name)\nrequest_validator = aws_native.apigateway.RequestValidator(\"requestValidator\",\n name=validator_name,\n rest_api_id=rest_api.id,\n validate_request_body=validate_request_body,\n validate_request_parameters=validate_request_parameters)\nmethod = aws_native.apigateway.Method(\"method\",\n http_method=\"POST\",\n resource_id=rest_api.root_resource_id,\n rest_api_id=rest_api.id,\n authorization_type=aws_native.apigateway.MethodAuthorizationType.NONE,\n integration=aws_native.apigateway.MethodIntegrationArgs(\n type=aws_native.apigateway.MethodIntegrationType.MOCK,\n content_handling=aws_native.apigateway.MethodIntegrationContentHandling(content_handling),\n integration_responses=[aws_native.apigateway.MethodIntegrationResponseArgs(\n content_handling=aws_native.apigateway.MethodIntegrationResponseContentHandling(content_handling),\n status_code=\"400\",\n )],\n ),\n request_validator_id=request_validator.id,\n operation_name=operation_name)\npulumi.export(\"rootResourceId\", rest_api.root_resource_id)\n\n```\n\n{{% /example %}}\n{{% example %}}\n### Example\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AwsNative = Pulumi.AwsNative;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var apiName = config.Require(\"apiName\");\n var validatorName = config.Require(\"validatorName\");\n var validateRequestBody = config.Require(\"validateRequestBody\");\n var validateRequestParameters = config.Require(\"validateRequestParameters\");\n var restApi = new AwsNative.ApiGateway.RestApi(\"restApi\", new()\n {\n Name = apiName,\n });\n\n var requestValidator = new AwsNative.ApiGateway.RequestValidator(\"requestValidator\", new()\n {\n Name = validatorName,\n RestApiId = restApi.Id,\n ValidateRequestBody = validateRequestBody,\n ValidateRequestParameters = validateRequestParameters,\n });\n\n});\n\n\n```\n\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws-native/sdk/go/aws/apigateway\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tapiName := cfg.Require(\"apiName\")\n\t\tvalidatorName := cfg.Require(\"validatorName\")\n\t\tvalidateRequestBody := cfg.Require(\"validateRequestBody\")\n\t\tvalidateRequestParameters := cfg.Require(\"validateRequestParameters\")\n\t\trestApi, err := apigateway.NewRestApi(ctx, \"restApi\", \u0026apigateway.RestApiArgs{\n\t\t\tName: pulumi.String(apiName),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = apigateway.NewRequestValidator(ctx, \"requestValidator\", \u0026apigateway.RequestValidatorArgs{\n\t\t\tName: pulumi.String(validatorName),\n\t\t\tRestApiId: restApi.ID(),\n\t\t\tValidateRequestBody: pulumi.String(validateRequestBody),\n\t\t\tValidateRequestParameters: pulumi.String(validateRequestParameters),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n\n```\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws_native from \"@pulumi/aws-native\";\n\nconst config = new pulumi.Config();\nconst apiName = config.require(\"apiName\");\nconst validatorName = config.require(\"validatorName\");\nconst validateRequestBody = config.require(\"validateRequestBody\");\nconst validateRequestParameters = config.require(\"validateRequestParameters\");\nconst restApi = new aws_native.apigateway.RestApi(\"restApi\", {name: apiName});\nconst requestValidator = new aws_native.apigateway.RequestValidator(\"requestValidator\", {\n name: validatorName,\n restApiId: restApi.id,\n validateRequestBody: validateRequestBody,\n validateRequestParameters: validateRequestParameters,\n});\n\n```\n\n```python\nimport pulumi\nimport pulumi_aws_native as aws_native\n\nconfig = pulumi.Config()\napi_name = config.require(\"apiName\")\nvalidator_name = config.require(\"validatorName\")\nvalidate_request_body = config.require(\"validateRequestBody\")\nvalidate_request_parameters = config.require(\"validateRequestParameters\")\nrest_api = aws_native.apigateway.RestApi(\"restApi\", name=api_name)\nrequest_validator = aws_native.apigateway.RequestValidator(\"requestValidator\",\n name=validator_name,\n rest_api_id=rest_api.id,\n validate_request_body=validate_request_body,\n validate_request_parameters=validate_request_parameters)\n\n```\n\n{{% /example %}}\n{{% example %}}\n### Example\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AwsNative = Pulumi.AwsNative;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var apiName = config.Require(\"apiName\");\n var validatorName = config.Require(\"validatorName\");\n var validateRequestBody = config.Require(\"validateRequestBody\");\n var validateRequestParameters = config.Require(\"validateRequestParameters\");\n var restApi = new AwsNative.ApiGateway.RestApi(\"restApi\", new()\n {\n Name = apiName,\n });\n\n var requestValidator = new AwsNative.ApiGateway.RequestValidator(\"requestValidator\", new()\n {\n Name = validatorName,\n RestApiId = restApi.Id,\n ValidateRequestBody = validateRequestBody,\n ValidateRequestParameters = validateRequestParameters,\n });\n\n});\n\n\n```\n\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws-native/sdk/go/aws/apigateway\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tapiName := cfg.Require(\"apiName\")\n\t\tvalidatorName := cfg.Require(\"validatorName\")\n\t\tvalidateRequestBody := cfg.Require(\"validateRequestBody\")\n\t\tvalidateRequestParameters := cfg.Require(\"validateRequestParameters\")\n\t\trestApi, err := apigateway.NewRestApi(ctx, \"restApi\", \u0026apigateway.RestApiArgs{\n\t\t\tName: pulumi.String(apiName),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = apigateway.NewRequestValidator(ctx, \"requestValidator\", \u0026apigateway.RequestValidatorArgs{\n\t\t\tName: pulumi.String(validatorName),\n\t\t\tRestApiId: restApi.ID(),\n\t\t\tValidateRequestBody: pulumi.String(validateRequestBody),\n\t\t\tValidateRequestParameters: pulumi.String(validateRequestParameters),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n\n```\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws_native from \"@pulumi/aws-native\";\n\nconst config = new pulumi.Config();\nconst apiName = config.require(\"apiName\");\nconst validatorName = config.require(\"validatorName\");\nconst validateRequestBody = config.require(\"validateRequestBody\");\nconst validateRequestParameters = config.require(\"validateRequestParameters\");\nconst restApi = new aws_native.apigateway.RestApi(\"restApi\", {name: apiName});\nconst requestValidator = new aws_native.apigateway.RequestValidator(\"requestValidator\", {\n name: validatorName,\n restApiId: restApi.id,\n validateRequestBody: validateRequestBody,\n validateRequestParameters: validateRequestParameters,\n});\n\n```\n\n```python\nimport pulumi\nimport pulumi_aws_native as aws_native\n\nconfig = pulumi.Config()\napi_name = config.require(\"apiName\")\nvalidator_name = config.require(\"validatorName\")\nvalidate_request_body = config.require(\"validateRequestBody\")\nvalidate_request_parameters = config.require(\"validateRequestParameters\")\nrest_api = aws_native.apigateway.RestApi(\"restApi\", name=api_name)\nrequest_validator = aws_native.apigateway.RequestValidator(\"requestValidator\",\n name=validator_name,\n rest_api_id=rest_api.id,\n validate_request_body=validate_request_body,\n validate_request_parameters=validate_request_parameters)\n\n```\n\n{{% /example %}}\n{{% example %}}\n### Example\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AwsNative = Pulumi.AwsNative;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var apiName = config.Require(\"apiName\");\n var type = config.Require(\"type\");\n var myRestApi = new AwsNative.ApiGateway.RestApi(\"myRestApi\", new()\n {\n EndpointConfiguration = new AwsNative.ApiGateway.Inputs.RestApiEndpointConfigurationArgs\n {\n Types = new[]\n {\n type,\n },\n },\n Name = apiName,\n });\n\n});\n\n\n```\n\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws-native/sdk/go/aws/apigateway\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tapiName := cfg.Require(\"apiName\")\n\t\t_type := cfg.Require(\"type\")\n\t\t_, err := apigateway.NewRestApi(ctx, \"myRestApi\", \u0026apigateway.RestApiArgs{\n\t\t\tEndpointConfiguration: \u0026apigateway.RestApiEndpointConfigurationArgs{\n\t\t\t\tTypes: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(_type),\n\t\t\t\t},\n\t\t\t},\n\t\t\tName: pulumi.String(apiName),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n\n```\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws_native from \"@pulumi/aws-native\";\n\nconst config = new pulumi.Config();\nconst apiName = config.require(\"apiName\");\nconst type = config.require(\"type\");\nconst myRestApi = new aws_native.apigateway.RestApi(\"myRestApi\", {\n endpointConfiguration: {\n types: [type],\n },\n name: apiName,\n});\n\n```\n\n```python\nimport pulumi\nimport pulumi_aws_native as aws_native\n\nconfig = pulumi.Config()\napi_name = config.require(\"apiName\")\ntype = config.require(\"type\")\nmy_rest_api = aws_native.apigateway.RestApi(\"myRestApi\",\n endpoint_configuration=aws_native.apigateway.RestApiEndpointConfigurationArgs(\n types=[type],\n ),\n name=api_name)\n\n```\n\n{{% /example %}}\n{{% example %}}\n### Example\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AwsNative = Pulumi.AwsNative;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var apiName = config.Require(\"apiName\");\n var type = config.Require(\"type\");\n var myRestApi = new AwsNative.ApiGateway.RestApi(\"myRestApi\", new()\n {\n EndpointConfiguration = new AwsNative.ApiGateway.Inputs.RestApiEndpointConfigurationArgs\n {\n Types = new[]\n {\n type,\n },\n },\n Name = apiName,\n });\n\n});\n\n\n```\n\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws-native/sdk/go/aws/apigateway\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tapiName := cfg.Require(\"apiName\")\n\t\t_type := cfg.Require(\"type\")\n\t\t_, err := apigateway.NewRestApi(ctx, \"myRestApi\", \u0026apigateway.RestApiArgs{\n\t\t\tEndpointConfiguration: \u0026apigateway.RestApiEndpointConfigurationArgs{\n\t\t\t\tTypes: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(_type),\n\t\t\t\t},\n\t\t\t},\n\t\t\tName: pulumi.String(apiName),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n\n```\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws_native from \"@pulumi/aws-native\";\n\nconst config = new pulumi.Config();\nconst apiName = config.require(\"apiName\");\nconst type = config.require(\"type\");\nconst myRestApi = new aws_native.apigateway.RestApi(\"myRestApi\", {\n endpointConfiguration: {\n types: [type],\n },\n name: apiName,\n});\n\n```\n\n```python\nimport pulumi\nimport pulumi_aws_native as aws_native\n\nconfig = pulumi.Config()\napi_name = config.require(\"apiName\")\ntype = config.require(\"type\")\nmy_rest_api = aws_native.apigateway.RestApi(\"myRestApi\",\n endpoint_configuration=aws_native.apigateway.RestApiEndpointConfigurationArgs(\n types=[type],\n ),\n name=api_name)\n\n```\n\n{{% /example %}}\n{{% example %}}\n### Example\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AwsNative = Pulumi.AwsNative;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var restApi = new AwsNative.ApiGateway.RestApi(\"restApi\", new()\n {\n Body = \n {\n { \"swagger\", 2 },\n { \"info\", \n {\n { \"version\", \"0.0.1\" },\n { \"title\", \"test\" },\n } },\n { \"basePath\", \"/pete\" },\n { \"schemes\", new[]\n {\n \"https\",\n } },\n { \"definitions\", \n {\n { \"empty\", \n {\n { \"type\", \"object\" },\n } },\n } },\n },\n Name = \"myApi\",\n Parameters = \n {\n { \"endpointConfigurationTypes\", \"REGIONAL\" },\n },\n });\n\n});\n\n\n```\n\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws-native/sdk/go/aws/apigateway\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := apigateway.NewRestApi(ctx, \"restApi\", \u0026apigateway.RestApiArgs{\n\t\t\tBody: pulumi.Any{\n\t\t\t\tSwagger: 2,\n\t\t\t\tInfo: map[string]interface{}{\n\t\t\t\t\t\"version\": \"0.0.1\",\n\t\t\t\t\t\"title\": \"test\",\n\t\t\t\t},\n\t\t\t\tBasePath: \"/pete\",\n\t\t\t\tSchemes: []string{\n\t\t\t\t\t\"https\",\n\t\t\t\t},\n\t\t\t\tDefinitions: map[string]interface{}{\n\t\t\t\t\t\"empty\": map[string]interface{}{\n\t\t\t\t\t\t\"type\": \"object\",\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tName: pulumi.String(\"myApi\"),\n\t\t\tParameters: pulumi.Any{\n\t\t\t\tEndpointConfigurationTypes: \"REGIONAL\",\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n\n```\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws_native from \"@pulumi/aws-native\";\n\nconst restApi = new aws_native.apigateway.RestApi(\"restApi\", {\n body: {\n swagger: 2,\n info: {\n version: \"0.0.1\",\n title: \"test\",\n },\n basePath: \"/pete\",\n schemes: [\"https\"],\n definitions: {\n empty: {\n type: \"object\",\n },\n },\n },\n name: \"myApi\",\n parameters: {\n endpointConfigurationTypes: \"REGIONAL\",\n },\n});\n\n```\n\n```python\nimport pulumi\nimport pulumi_aws_native as aws_native\n\nrest_api = aws_native.apigateway.RestApi(\"restApi\",\n body={\n \"swagger\": 2,\n \"info\": {\n \"version\": \"0.0.1\",\n \"title\": \"test\",\n },\n \"basePath\": \"/pete\",\n \"schemes\": [\"https\"],\n \"definitions\": {\n \"empty\": {\n \"type\": \"object\",\n },\n },\n },\n name=\"myApi\",\n parameters={\n \"endpointConfigurationTypes\": \"REGIONAL\",\n })\n\n```\n\n{{% /example %}}\n{{% example %}}\n### Example\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AwsNative = Pulumi.AwsNative;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var restApi = new AwsNative.ApiGateway.RestApi(\"restApi\", new()\n {\n Body = \n {\n { \"swagger\", 2 },\n { \"info\", \n {\n { \"version\", \"0.0.1\" },\n { \"title\", \"test\" },\n } },\n { \"basePath\", \"/pete\" },\n { \"schemes\", new[]\n {\n \"https\",\n } },\n { \"definitions\", \n {\n { \"empty\", \n {\n { \"type\", \"object\" },\n } },\n } },\n },\n Name = \"myApi\",\n Parameters = \n {\n { \"endpointConfigurationTypes\", \"REGIONAL\" },\n },\n });\n\n});\n\n\n```\n\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws-native/sdk/go/aws/apigateway\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := apigateway.NewRestApi(ctx, \"restApi\", \u0026apigateway.RestApiArgs{\n\t\t\tBody: pulumi.Any{\n\t\t\t\tSwagger: 2,\n\t\t\t\tInfo: map[string]interface{}{\n\t\t\t\t\t\"version\": \"0.0.1\",\n\t\t\t\t\t\"title\": \"test\",\n\t\t\t\t},\n\t\t\t\tBasePath: \"/pete\",\n\t\t\t\tSchemes: []string{\n\t\t\t\t\t\"https\",\n\t\t\t\t},\n\t\t\t\tDefinitions: map[string]interface{}{\n\t\t\t\t\t\"empty\": map[string]interface{}{\n\t\t\t\t\t\t\"type\": \"object\",\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tName: pulumi.String(\"myApi\"),\n\t\t\tParameters: pulumi.Any{\n\t\t\t\tEndpointConfigurationTypes: \"REGIONAL\",\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n\n```\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws_native from \"@pulumi/aws-native\";\n\nconst restApi = new aws_native.apigateway.RestApi(\"restApi\", {\n body: {\n swagger: 2,\n info: {\n version: \"0.0.1\",\n title: \"test\",\n },\n basePath: \"/pete\",\n schemes: [\"https\"],\n definitions: {\n empty: {\n type: \"object\",\n },\n },\n },\n name: \"myApi\",\n parameters: {\n endpointConfigurationTypes: \"REGIONAL\",\n },\n});\n\n```\n\n```python\nimport pulumi\nimport pulumi_aws_native as aws_native\n\nrest_api = aws_native.apigateway.RestApi(\"restApi\",\n body={\n \"swagger\": 2,\n \"info\": {\n \"version\": \"0.0.1\",\n \"title\": \"test\",\n },\n \"basePath\": \"/pete\",\n \"schemes\": [\"https\"],\n \"definitions\": {\n \"empty\": {\n \"type\": \"object\",\n },\n },\n },\n name=\"myApi\",\n parameters={\n \"endpointConfigurationTypes\": \"REGIONAL\",\n })\n\n```\n\n{{% /example %}}\n{{% example %}}\n### Example\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AwsNative = Pulumi.AwsNative;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var apiKeySourceType = config.Require(\"apiKeySourceType\");\n var apiName = config.Require(\"apiName\");\n var binaryMediaType1 = config.Require(\"binaryMediaType1\");\n var binaryMediaType2 = config.Require(\"binaryMediaType2\");\n var minimumCompressionSize = config.Require(\"minimumCompressionSize\");\n var myRestApi = new AwsNative.ApiGateway.RestApi(\"myRestApi\", new()\n {\n ApiKeySourceType = apiKeySourceType,\n BinaryMediaTypes = new[]\n {\n binaryMediaType1,\n binaryMediaType2,\n },\n MinimumCompressionSize = minimumCompressionSize,\n Name = apiName,\n });\n\n});\n\n\n```\n\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws-native/sdk/go/aws/apigateway\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tapiKeySourceType := cfg.Require(\"apiKeySourceType\")\n\t\tapiName := cfg.Require(\"apiName\")\n\t\tbinaryMediaType1 := cfg.Require(\"binaryMediaType1\")\n\t\tbinaryMediaType2 := cfg.Require(\"binaryMediaType2\")\n\t\tminimumCompressionSize := cfg.Require(\"minimumCompressionSize\")\n\t\t_, err := apigateway.NewRestApi(ctx, \"myRestApi\", \u0026apigateway.RestApiArgs{\n\t\t\tApiKeySourceType: pulumi.String(apiKeySourceType),\n\t\t\tBinaryMediaTypes: pulumi.StringArray{\n\t\t\t\tpulumi.String(binaryMediaType1),\n\t\t\t\tpulumi.String(binaryMediaType2),\n\t\t\t},\n\t\t\tMinimumCompressionSize: pulumi.String(minimumCompressionSize),\n\t\t\tName: pulumi.String(apiName),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n\n```\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws_native from \"@pulumi/aws-native\";\n\nconst config = new pulumi.Config();\nconst apiKeySourceType = config.require(\"apiKeySourceType\");\nconst apiName = config.require(\"apiName\");\nconst binaryMediaType1 = config.require(\"binaryMediaType1\");\nconst binaryMediaType2 = config.require(\"binaryMediaType2\");\nconst minimumCompressionSize = config.require(\"minimumCompressionSize\");\nconst myRestApi = new aws_native.apigateway.RestApi(\"myRestApi\", {\n apiKeySourceType: apiKeySourceType,\n binaryMediaTypes: [\n binaryMediaType1,\n binaryMediaType2,\n ],\n minimumCompressionSize: minimumCompressionSize,\n name: apiName,\n});\n\n```\n\n```python\nimport pulumi\nimport pulumi_aws_native as aws_native\n\nconfig = pulumi.Config()\napi_key_source_type = config.require(\"apiKeySourceType\")\napi_name = config.require(\"apiName\")\nbinary_media_type1 = config.require(\"binaryMediaType1\")\nbinary_media_type2 = config.require(\"binaryMediaType2\")\nminimum_compression_size = config.require(\"minimumCompressionSize\")\nmy_rest_api = aws_native.apigateway.RestApi(\"myRestApi\",\n api_key_source_type=api_key_source_type,\n binary_media_types=[\n binary_media_type1,\n binary_media_type2,\n ],\n minimum_compression_size=minimum_compression_size,\n name=api_name)\n\n```\n\n{{% /example %}}\n{{% example %}}\n### Example\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AwsNative = Pulumi.AwsNative;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var apiKeySourceType = config.Require(\"apiKeySourceType\");\n var apiName = config.Require(\"apiName\");\n var binaryMediaType1 = config.Require(\"binaryMediaType1\");\n var binaryMediaType2 = config.Require(\"binaryMediaType2\");\n var minimumCompressionSize = config.Require(\"minimumCompressionSize\");\n var myRestApi = new AwsNative.ApiGateway.RestApi(\"myRestApi\", new()\n {\n ApiKeySourceType = apiKeySourceType,\n BinaryMediaTypes = new[]\n {\n binaryMediaType1,\n binaryMediaType2,\n },\n MinimumCompressionSize = minimumCompressionSize,\n Name = apiName,\n });\n\n});\n\n\n```\n\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws-native/sdk/go/aws/apigateway\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tapiKeySourceType := cfg.Require(\"apiKeySourceType\")\n\t\tapiName := cfg.Require(\"apiName\")\n\t\tbinaryMediaType1 := cfg.Require(\"binaryMediaType1\")\n\t\tbinaryMediaType2 := cfg.Require(\"binaryMediaType2\")\n\t\tminimumCompressionSize := cfg.Require(\"minimumCompressionSize\")\n\t\t_, err := apigateway.NewRestApi(ctx, \"myRestApi\", \u0026apigateway.RestApiArgs{\n\t\t\tApiKeySourceType: pulumi.String(apiKeySourceType),\n\t\t\tBinaryMediaTypes: pulumi.StringArray{\n\t\t\t\tpulumi.String(binaryMediaType1),\n\t\t\t\tpulumi.String(binaryMediaType2),\n\t\t\t},\n\t\t\tMinimumCompressionSize: pulumi.String(minimumCompressionSize),\n\t\t\tName: pulumi.String(apiName),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n\n```\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws_native from \"@pulumi/aws-native\";\n\nconst config = new pulumi.Config();\nconst apiKeySourceType = config.require(\"apiKeySourceType\");\nconst apiName = config.require(\"apiName\");\nconst binaryMediaType1 = config.require(\"binaryMediaType1\");\nconst binaryMediaType2 = config.require(\"binaryMediaType2\");\nconst minimumCompressionSize = config.require(\"minimumCompressionSize\");\nconst myRestApi = new aws_native.apigateway.RestApi(\"myRestApi\", {\n apiKeySourceType: apiKeySourceType,\n binaryMediaTypes: [\n binaryMediaType1,\n binaryMediaType2,\n ],\n minimumCompressionSize: minimumCompressionSize,\n name: apiName,\n});\n\n```\n\n```python\nimport pulumi\nimport pulumi_aws_native as aws_native\n\nconfig = pulumi.Config()\napi_key_source_type = config.require(\"apiKeySourceType\")\napi_name = config.require(\"apiName\")\nbinary_media_type1 = config.require(\"binaryMediaType1\")\nbinary_media_type2 = config.require(\"binaryMediaType2\")\nminimum_compression_size = config.require(\"minimumCompressionSize\")\nmy_rest_api = aws_native.apigateway.RestApi(\"myRestApi\",\n api_key_source_type=api_key_source_type,\n binary_media_types=[\n binary_media_type1,\n binary_media_type2,\n ],\n minimum_compression_size=minimum_compression_size,\n name=api_name)\n\n```\n\n{{% /example %}}\n{{% /examples %}}\n",
"properties": {
"apiKeySourceType": {
- "type": "string"
+ "type": "string",
+ "description": "The source of the API key for metering requests according to a usage plan. Valid values are: ``HEADER`` to read the API key from the ``X-API-Key`` header of a request. ``AUTHORIZER`` to read the API key from the ``UsageIdentifierKey`` from a custom authorizer."
},
"binaryMediaTypes": {
"type": "array",
"items": {
"type": "string"
- }
+ },
+ "description": "The list of binary media types supported by the RestApi. By default, the RestApi supports only UTF-8-encoded text payloads."
},
"body": {
- "$ref": "pulumi.json#/Any"
+ "$ref": "pulumi.json#/Any",
+ "description": "An OpenAPI specification that defines a set of RESTful APIs in JSON format. For YAML templates, you can also provide the specification in YAML format."
},
"bodyS3Location": {
- "$ref": "#/types/aws-native:apigateway:RestApiS3Location"
+ "$ref": "#/types/aws-native:apigateway:RestApiS3Location",
+ "description": "The Amazon Simple Storage Service (Amazon S3) location that points to an OpenAPI file, which defines a set of RESTful APIs in JSON or YAML format."
},
"cloneFrom": {
- "type": "string"
+ "type": "string",
+ "description": "The ID of the RestApi that you want to clone from."
},
"description": {
- "type": "string"
+ "type": "string",
+ "description": "The description of the RestApi."
},
"disableExecuteApiEndpoint": {
- "type": "boolean"
+ "type": "boolean",
+ "description": "Specifies whether clients can invoke your API by using the default ``execute-api`` endpoint. By default, clients can invoke your API with the default ``https://{api_id}.execute-api.{region}.amazonaws.com`` endpoint. To require that clients use a custom domain name to invoke your API, disable the default endpoint"
},
"endpointConfiguration": {
- "$ref": "#/types/aws-native:apigateway:RestApiEndpointConfiguration"
+ "$ref": "#/types/aws-native:apigateway:RestApiEndpointConfiguration",
+ "description": "A list of the endpoint types of the API. Use this property when creating an API. When importing an existing API, specify the endpoint configuration types using the ``Parameters`` property."
},
"failOnWarnings": {
- "type": "boolean"
+ "type": "boolean",
+ "description": "A query parameter to indicate whether to rollback the API update (``true``) or not (``false``) when a warning is encountered. The default value is ``false``."
},
"minimumCompressionSize": {
- "type": "integer"
+ "type": "integer",
+ "description": "A nullable integer that is used to enable compression (with non-negative between 0 and 10485760 (10M) bytes, inclusive) or disable compression (with a null value) on an API. When compression is enabled, compression or decompression is not applied on the payload if the payload size is smaller than this value. Setting it to zero allows compression for any payload size."
},
"mode": {
- "type": "string"
+ "type": "string",
+ "description": "This property applies only when you use OpenAPI to define your REST API. The ``Mode`` determines how API Gateway handles resource updates.\n Valid values are ``overwrite`` or ``merge``. \n For ``overwrite``, the new API definition replaces the existing one. The existing API identifier remains unchanged.\n For ``merge``, the new API definition is merged with the existing API.\n If you don't specify this property, a default value is chosen. For REST APIs created before March 29, 2021, the default is ``overwrite``. For REST APIs created after March 29, 2021, the new API definition takes precedence, but any container types such as endpoint configurations and binary media types are merged with the existing API. \n Use the default mode to define top-level ``RestApi`` properties in addition to using OpenAPI. Generally, it's preferred to use API Gateway's OpenAPI extensions to model these properties."
},
"name": {
- "type": "string"
+ "type": "string",
+ "description": "The name of the RestApi. A name is required if the REST API is not based on an OpenAPI specification."
},
"parameters": {
- "$ref": "pulumi.json#/Any"
+ "$ref": "pulumi.json#/Any",
+ "description": "Custom header parameters as part of the request. For example, to exclude DocumentationParts from an imported API, set ``ignore=documentation`` as a ``parameters`` value, as in the AWS CLI command of ``aws apigateway import-rest-api --parameters ignore=documentation --body 'file:///path/to/imported-api-body.json'``."
},
"policy": {
- "$ref": "pulumi.json#/Any"
+ "$ref": "pulumi.json#/Any",
+ "description": "A policy document that contains the permissions for the ``RestApi`` resource. To set the ARN for the policy, use the ``!Join`` intrinsic function with ``\"\"`` as delimiter and values of ``\"execute-api:/\"`` and ``\"*\"``."
},
"restApiId": {
"type": "string"
@@ -123709,7 +124172,8 @@
"type": "array",
"items": {
"$ref": "#/types/aws-native:apigateway:RestApiTag"
- }
+ },
+ "description": "The key-value map of strings. The valid character set is [a-zA-Z+-=._:/]. The tag key can be up to 128 characters and must not start with ``aws:``. The tag value can be up to 256 characters."
}
},
"type": "object",
@@ -123719,108 +124183,123 @@
],
"inputProperties": {
"apiKeySourceType": {
- "type": "string"
+ "type": "string",
+ "description": "The source of the API key for metering requests according to a usage plan. Valid values are: ``HEADER`` to read the API key from the ``X-API-Key`` header of a request. ``AUTHORIZER`` to read the API key from the ``UsageIdentifierKey`` from a custom authorizer."
},
"binaryMediaTypes": {
"type": "array",
"items": {
"type": "string"
- }
+ },
+ "description": "The list of binary media types supported by the RestApi. By default, the RestApi supports only UTF-8-encoded text payloads."
},
"body": {
- "$ref": "pulumi.json#/Any"
+ "$ref": "pulumi.json#/Any",
+ "description": "An OpenAPI specification that defines a set of RESTful APIs in JSON format. For YAML templates, you can also provide the specification in YAML format."
},
"bodyS3Location": {
- "$ref": "#/types/aws-native:apigateway:RestApiS3Location"
+ "$ref": "#/types/aws-native:apigateway:RestApiS3Location",
+ "description": "The Amazon Simple Storage Service (Amazon S3) location that points to an OpenAPI file, which defines a set of RESTful APIs in JSON or YAML format."
},
"cloneFrom": {
- "type": "string"
+ "type": "string",
+ "description": "The ID of the RestApi that you want to clone from."
},
"description": {
- "type": "string"
+ "type": "string",
+ "description": "The description of the RestApi."
},
"disableExecuteApiEndpoint": {
- "type": "boolean"
+ "type": "boolean",
+ "description": "Specifies whether clients can invoke your API by using the default ``execute-api`` endpoint. By default, clients can invoke your API with the default ``https://{api_id}.execute-api.{region}.amazonaws.com`` endpoint. To require that clients use a custom domain name to invoke your API, disable the default endpoint"
},
"endpointConfiguration": {
- "$ref": "#/types/aws-native:apigateway:RestApiEndpointConfiguration"
+ "$ref": "#/types/aws-native:apigateway:RestApiEndpointConfiguration",
+ "description": "A list of the endpoint types of the API. Use this property when creating an API. When importing an existing API, specify the endpoint configuration types using the ``Parameters`` property."
},
"failOnWarnings": {
- "type": "boolean"
+ "type": "boolean",
+ "description": "A query parameter to indicate whether to rollback the API update (``true``) or not (``false``) when a warning is encountered. The default value is ``false``."
},
"minimumCompressionSize": {
- "type": "integer"
+ "type": "integer",
+ "description": "A nullable integer that is used to enable compression (with non-negative between 0 and 10485760 (10M) bytes, inclusive) or disable compression (with a null value) on an API. When compression is enabled, compression or decompression is not applied on the payload if the payload size is smaller than this value. Setting it to zero allows compression for any payload size."
},
"mode": {
- "type": "string"
+ "type": "string",
+ "description": "This property applies only when you use OpenAPI to define your REST API. The ``Mode`` determines how API Gateway handles resource updates.\n Valid values are ``overwrite`` or ``merge``. \n For ``overwrite``, the new API definition replaces the existing one. The existing API identifier remains unchanged.\n For ``merge``, the new API definition is merged with the existing API.\n If you don't specify this property, a default value is chosen. For REST APIs created before March 29, 2021, the default is ``overwrite``. For REST APIs created after March 29, 2021, the new API definition takes precedence, but any container types such as endpoint configurations and binary media types are merged with the existing API. \n Use the default mode to define top-level ``RestApi`` properties in addition to using OpenAPI. Generally, it's preferred to use API Gateway's OpenAPI extensions to model these properties."
},
"name": {
- "type": "string"
+ "type": "string",
+ "description": "The name of the RestApi. A name is required if the REST API is not based on an OpenAPI specification."
},
"parameters": {
- "$ref": "pulumi.json#/Any"
+ "$ref": "pulumi.json#/Any",
+ "description": "Custom header parameters as part of the request. For example, to exclude DocumentationParts from an imported API, set ``ignore=documentation`` as a ``parameters`` value, as in the AWS CLI command of ``aws apigateway import-rest-api --parameters ignore=documentation --body 'file:///path/to/imported-api-body.json'``."
},
"policy": {
- "$ref": "pulumi.json#/Any"
+ "$ref": "pulumi.json#/Any",
+ "description": "A policy document that contains the permissions for the ``RestApi`` resource. To set the ARN for the policy, use the ``!Join`` intrinsic function with ``\"\"`` as delimiter and values of ``\"execute-api:/\"`` and ``\"*\"``."
},
"tags": {
"type": "array",
"items": {
"$ref": "#/types/aws-native:apigateway:RestApiTag"
- }
+ },
+ "description": "The key-value map of strings. The valid character set is [a-zA-Z+-=._:/]. The tag key can be up to 128 characters and must not start with ``aws:``. The tag value can be up to 256 characters."
}
}
},
"aws-native:apigateway:Stage": {
- "description": "Resource Type definition for AWS::ApiGateway::Stage",
+ "description": "The ``AWS::ApiGateway::Stage`` resource creates a stage for a deployment.",
"properties": {
"accessLogSetting": {
"$ref": "#/types/aws-native:apigateway:StageAccessLogSetting",
- "description": "Specifies settings for logging access in this stage."
+ "description": "Access log settings, including the access log format and access log destination ARN."
},
"cacheClusterEnabled": {
"type": "boolean",
- "description": "Indicates whether cache clustering is enabled for the stage."
+ "description": "Specifies whether a cache cluster is enabled for the stage."
},
"cacheClusterSize": {
"type": "string",
- "description": "The stage's cache cluster size."
+ "description": "The stage's cache capacity in GB. For more information about choosing a cache size, see [Enabling API caching to enhance responsiveness](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-caching.html)."
},
"canarySetting": {
"$ref": "#/types/aws-native:apigateway:StageCanarySetting",
- "description": "Specifies settings for the canary deployment in this stage."
+ "description": "Settings for the canary deployment in this stage."
},
"clientCertificateId": {
"type": "string",
- "description": "The ID of the client certificate that API Gateway uses to call your integration endpoints in the stage. "
+ "description": "The identifier of a client certificate for an API stage."
},
"deploymentId": {
"type": "string",
- "description": "The ID of the deployment that the stage is associated with. This parameter is required to create a stage. "
+ "description": "The identifier of the Deployment that the stage points to."
},
"description": {
"type": "string",
- "description": "A description of the stage."
+ "description": "The stage's description."
},
"documentationVersion": {
"type": "string",
- "description": "The version ID of the API documentation snapshot."
+ "description": "The version of the associated API documentation."
},
"methodSettings": {
"type": "array",
"items": {
"$ref": "#/types/aws-native:apigateway:StageMethodSetting"
},
- "description": "Settings for all methods in the stage."
+ "description": "A map that defines the method settings for a Stage resource. Keys (designated as ``/{method_setting_key`` below) are method paths defined as ``{resource_path}/{http_method}`` for an individual method override, or ``/\\*/\\*`` for overriding all methods in the stage."
},
"restApiId": {
"type": "string",
- "description": "The ID of the RestApi resource that you're deploying with this stage.",
+ "description": "The string identifier of the associated RestApi.",
"replaceOnChanges": true
},
"stageName": {
"type": "string",
- "description": "The name of the stage, which API Gateway uses as the first path segment in the invoked Uniform Resource Identifier (URI).",
+ "description": "The name of the stage is the first path segment in the Uniform Resource Identifier (URI) of a call to API Gateway. Stage names can only contain alphanumeric characters, hyphens, and underscores. Maximum length is 128 characters.",
"replaceOnChanges": true
},
"tags": {
@@ -123828,15 +124307,15 @@
"items": {
"$ref": "#/types/aws-native:apigateway:StageTag"
},
- "description": "An array of arbitrary tags (key-value pairs) to associate with the stage."
+ "description": "The collection of tags. Each tag element is associated with a given resource."
},
"tracingEnabled": {
"type": "boolean",
- "description": "Specifies whether active X-Ray tracing is enabled for this stage."
+ "description": "Specifies whether active tracing with X-ray is enabled for the Stage."
},
"variables": {
"$ref": "pulumi.json#/Any",
- "description": "A map (string-to-string map) that defines the stage variables, where the variable name is the key and the variable value is the value."
+ "description": "A map (string-to-string map) that defines the stage variables, where the variable name is the key and the variable value is the value. Variable names are limited to alphanumeric characters. Values must match the following regular expression: ``[A-Za-z0-9-._~:/?#\u0026=,]+``."
}
},
"type": "object",
@@ -123846,65 +124325,65 @@
"inputProperties": {
"accessLogSetting": {
"$ref": "#/types/aws-native:apigateway:StageAccessLogSetting",
- "description": "Specifies settings for logging access in this stage."
+ "description": "Access log settings, including the access log format and access log destination ARN."
},
"cacheClusterEnabled": {
"type": "boolean",
- "description": "Indicates whether cache clustering is enabled for the stage."
+ "description": "Specifies whether a cache cluster is enabled for the stage."
},
"cacheClusterSize": {
"type": "string",
- "description": "The stage's cache cluster size."
+ "description": "The stage's cache capacity in GB. For more information about choosing a cache size, see [Enabling API caching to enhance responsiveness](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-caching.html)."
},
"canarySetting": {
"$ref": "#/types/aws-native:apigateway:StageCanarySetting",
- "description": "Specifies settings for the canary deployment in this stage."
+ "description": "Settings for the canary deployment in this stage."
},
"clientCertificateId": {
"type": "string",
- "description": "The ID of the client certificate that API Gateway uses to call your integration endpoints in the stage. "
+ "description": "The identifier of a client certificate for an API stage."
},
"deploymentId": {
"type": "string",
- "description": "The ID of the deployment that the stage is associated with. This parameter is required to create a stage. "
+ "description": "The identifier of the Deployment that the stage points to."
},
"description": {
"type": "string",
- "description": "A description of the stage."
+ "description": "The stage's description."
},
"documentationVersion": {
"type": "string",
- "description": "The version ID of the API documentation snapshot."
+ "description": "The version of the associated API documentation."
},
"methodSettings": {
"type": "array",
"items": {
"$ref": "#/types/aws-native:apigateway:StageMethodSetting"
},
- "description": "Settings for all methods in the stage."
+ "description": "A map that defines the method settings for a Stage resource. Keys (designated as ``/{method_setting_key`` below) are method paths defined as ``{resource_path}/{http_method}`` for an individual method override, or ``/\\*/\\*`` for overriding all methods in the stage."
},
"restApiId": {
"type": "string",
- "description": "The ID of the RestApi resource that you're deploying with this stage."
+ "description": "The string identifier of the associated RestApi."
},
"stageName": {
"type": "string",
- "description": "The name of the stage, which API Gateway uses as the first path segment in the invoked Uniform Resource Identifier (URI)."
+ "description": "The name of the stage is the first path segment in the Uniform Resource Identifier (URI) of a call to API Gateway. Stage names can only contain alphanumeric characters, hyphens, and underscores. Maximum length is 128 characters."
},
"tags": {
"type": "array",
"items": {
"$ref": "#/types/aws-native:apigateway:StageTag"
},
- "description": "An array of arbitrary tags (key-value pairs) to associate with the stage."
+ "description": "The collection of tags. Each tag element is associated with a given resource."
},
"tracingEnabled": {
"type": "boolean",
- "description": "Specifies whether active X-Ray tracing is enabled for this stage."
+ "description": "Specifies whether active tracing with X-ray is enabled for the Stage."
},
"variables": {
"$ref": "pulumi.json#/Any",
- "description": "A map (string-to-string map) that defines the stage variables, where the variable name is the key and the variable value is the value."
+ "description": "A map (string-to-string map) that defines the stage variables, where the variable name is the key and the variable value is the value. Variable names are limited to alphanumeric characters. Values must match the following regular expression: ``[A-Za-z0-9-._~:/?#\u0026=,]+``."
}
},
"requiredInputs": [
@@ -123980,21 +124459,21 @@
}
},
"aws-native:apigateway:UsagePlanKey": {
- "description": "Resource Type definition for AWS::ApiGateway::UsagePlanKey",
+ "description": "The ``AWS::ApiGateway::UsagePlanKey`` resource associates an API key with a usage plan. This association determines which users the usage plan is applied to.",
"properties": {
"keyId": {
"type": "string",
- "description": "The ID of the usage plan key.",
+ "description": "The Id of the UsagePlanKey resource.",
"replaceOnChanges": true
},
"keyType": {
"$ref": "#/types/aws-native:apigateway:UsagePlanKeyKeyType",
- "description": "The type of usage plan key. Currently, the only valid key type is API_KEY.",
+ "description": "The type of a UsagePlanKey resource for a plan customer.",
"replaceOnChanges": true
},
"usagePlanId": {
"type": "string",
- "description": "The ID of the usage plan.",
+ "description": "The Id of the UsagePlan resource representing the usage plan containing the UsagePlanKey resource representing a plan customer.",
"replaceOnChanges": true
}
},
@@ -124007,15 +124486,15 @@
"inputProperties": {
"keyId": {
"type": "string",
- "description": "The ID of the usage plan key."
+ "description": "The Id of the UsagePlanKey resource."
},
"keyType": {
"$ref": "#/types/aws-native:apigateway:UsagePlanKeyKeyType",
- "description": "The type of usage plan key. Currently, the only valid key type is API_KEY."
+ "description": "The type of a UsagePlanKey resource for a plan customer."
},
"usagePlanId": {
"type": "string",
- "description": "The ID of the usage plan."
+ "description": "The Id of the UsagePlan resource representing the usage plan containing the UsagePlanKey resource representing a plan customer."
}
},
"requiredInputs": [
@@ -124907,6 +125386,52 @@
"subnetIds"
]
},
+ "aws-native:appconfig:Application": {
+ "description": "Resource Type definition for AWS::AppConfig::Application",
+ "properties": {
+ "applicationId": {
+ "type": "string",
+ "description": "The application Id"
+ },
+ "description": {
+ "type": "string",
+ "description": "A description of the application."
+ },
+ "name": {
+ "type": "string",
+ "description": "A name for the application."
+ },
+ "tags": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:appconfig:ApplicationTags"
+ },
+ "description": "Metadata to assign to the application. Tags help organize and categorize your AWS AppConfig resources. Each tag consists of a key and an optional value, both of which you define."
+ }
+ },
+ "type": "object",
+ "required": [
+ "applicationId",
+ "name"
+ ],
+ "inputProperties": {
+ "description": {
+ "type": "string",
+ "description": "A description of the application."
+ },
+ "name": {
+ "type": "string",
+ "description": "A name for the application."
+ },
+ "tags": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:appconfig:ApplicationTags"
+ },
+ "description": "Metadata to assign to the application. Tags help organize and categorize your AWS AppConfig resources. Each tag consists of a key and an optional value, both of which you define."
+ }
+ }
+ },
"aws-native:appconfig:Extension": {
"description": "Resource Type definition for AWS::AppConfig::Extension\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n### Example\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AwsNative = Pulumi.AwsNative;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var basicExtension = new AwsNative.AppConfig.Extension(\"basicExtension\", new()\n {\n Name = \"My Test Extension\",\n Description = \"My test extension\",\n LatestVersionNumber = 0,\n Actions = \n {\n { \"pre_create_hosted_configuration_version\", new[]\n {\n \n {\n { \"name\", \"My Test Action\" },\n { \"uri\", \"DependentLambda.Arn\" },\n { \"roleArn\", \"DependentRole.Arn\" },\n { \"description\", \"My test action point\" },\n },\n } },\n },\n Parameters = \n {\n { \"myTestParam\", \n {\n { \"required\", false },\n { \"description\", \"My test parameter\" },\n } },\n },\n Tags = new[]\n {\n new AwsNative.AppConfig.Inputs.ExtensionTagArgs\n {\n Key = \"Ext\",\n Value = \"Test\",\n },\n },\n });\n\n});\n\n\n```\n\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws-native/sdk/go/aws/appconfig\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := appconfig.NewExtension(ctx, \"basicExtension\", \u0026appconfig.ExtensionArgs{\n\t\t\tName: pulumi.String(\"My Test Extension\"),\n\t\t\tDescription: pulumi.String(\"My test extension\"),\n\t\t\tLatestVersionNumber: pulumi.Int(0),\n\t\t\tActions: pulumi.Any{\n\t\t\t\tPre_create_hosted_configuration_version: []map[string]interface{}{\n\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\"name\": \"My Test Action\",\n\t\t\t\t\t\t\"uri\": \"DependentLambda.Arn\",\n\t\t\t\t\t\t\"roleArn\": \"DependentRole.Arn\",\n\t\t\t\t\t\t\"description\": \"My test action point\",\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tParameters: pulumi.Any{\n\t\t\t\tMyTestParam: map[string]interface{}{\n\t\t\t\t\t\"required\": false,\n\t\t\t\t\t\"description\": \"My test parameter\",\n\t\t\t\t},\n\t\t\t},\n\t\t\tTags: []appconfig.ExtensionTagArgs{\n\t\t\t\t{\n\t\t\t\t\tKey: pulumi.String(\"Ext\"),\n\t\t\t\t\tValue: pulumi.String(\"Test\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n\n```\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws_native from \"@pulumi/aws-native\";\n\nconst basicExtension = new aws_native.appconfig.Extension(\"basicExtension\", {\n name: \"My Test Extension\",\n description: \"My test extension\",\n latestVersionNumber: 0,\n actions: {\n pre_create_hosted_configuration_version: [{\n name: \"My Test Action\",\n uri: \"DependentLambda.Arn\",\n roleArn: \"DependentRole.Arn\",\n description: \"My test action point\",\n }],\n },\n parameters: {\n myTestParam: {\n required: false,\n description: \"My test parameter\",\n },\n },\n tags: [{\n key: \"Ext\",\n value: \"Test\",\n }],\n});\n\n```\n\n```python\nimport pulumi\nimport pulumi_aws_native as aws_native\n\nbasic_extension = aws_native.appconfig.Extension(\"basicExtension\",\n name=\"My Test Extension\",\n description=\"My test extension\",\n latest_version_number=0,\n actions={\n \"pre_create_hosted_configuration_version\": [{\n \"name\": \"My Test Action\",\n \"uri\": \"DependentLambda.Arn\",\n \"roleArn\": \"DependentRole.Arn\",\n \"description\": \"My test action point\",\n }],\n },\n parameters={\n \"myTestParam\": {\n \"required\": False,\n \"description\": \"My test parameter\",\n },\n },\n tags=[aws_native.appconfig.ExtensionTagArgs(\n key=\"Ext\",\n value=\"Test\",\n )])\n\n```\n\n{{% /example %}}\n{{% /examples %}}\n",
"properties": {
@@ -126802,6 +127327,146 @@
"domainName"
]
},
+ "aws-native:appsync:FunctionConfiguration": {
+ "description": "An example resource schema demonstrating some basic constructs and validation rules.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n### Example\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AwsNative = Pulumi.AwsNative;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var graphQlApiId = config.Require(\"graphQlApiId\");\n var name = config.Require(\"name\");\n var description = config.Require(\"description\");\n var dataSourceName = config.Require(\"dataSourceName\");\n var functionVersion = config.Require(\"functionVersion\");\n var requestMappingTemplateS3LocationInput = config.Require(\"requestMappingTemplateS3LocationInput\");\n var responseMappingTemplateS3LocationInput = config.Require(\"responseMappingTemplateS3LocationInput\");\n var functionConfiguration = new AwsNative.AppSync.FunctionConfiguration(\"functionConfiguration\", new()\n {\n ApiId = graphQlApiId,\n Name = name,\n Description = description,\n FunctionVersion = functionVersion,\n DataSourceName = dataSourceName,\n RequestMappingTemplateS3Location = requestMappingTemplateS3LocationInput,\n ResponseMappingTemplateS3Location = responseMappingTemplateS3LocationInput,\n });\n\n});\n\n\n```\n\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws-native/sdk/go/aws/appsync\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tgraphQlApiId := cfg.Require(\"graphQlApiId\")\n\t\tname := cfg.Require(\"name\")\n\t\tdescription := cfg.Require(\"description\")\n\t\tdataSourceName := cfg.Require(\"dataSourceName\")\n\t\tfunctionVersion := cfg.Require(\"functionVersion\")\n\t\trequestMappingTemplateS3LocationInput := cfg.Require(\"requestMappingTemplateS3LocationInput\")\n\t\tresponseMappingTemplateS3LocationInput := cfg.Require(\"responseMappingTemplateS3LocationInput\")\n\t\t_, err := appsync.NewFunctionConfiguration(ctx, \"functionConfiguration\", \u0026appsync.FunctionConfigurationArgs{\n\t\t\tApiId: pulumi.String(graphQlApiId),\n\t\t\tName: pulumi.String(name),\n\t\t\tDescription: pulumi.String(description),\n\t\t\tFunctionVersion: pulumi.String(functionVersion),\n\t\t\tDataSourceName: pulumi.String(dataSourceName),\n\t\t\tRequestMappingTemplateS3Location: pulumi.String(requestMappingTemplateS3LocationInput),\n\t\t\tResponseMappingTemplateS3Location: pulumi.String(responseMappingTemplateS3LocationInput),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n\n```\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws_native from \"@pulumi/aws-native\";\n\nconst config = new pulumi.Config();\nconst graphQlApiId = config.require(\"graphQlApiId\");\nconst name = config.require(\"name\");\nconst description = config.require(\"description\");\nconst dataSourceName = config.require(\"dataSourceName\");\nconst functionVersion = config.require(\"functionVersion\");\nconst requestMappingTemplateS3LocationInput = config.require(\"requestMappingTemplateS3LocationInput\");\nconst responseMappingTemplateS3LocationInput = config.require(\"responseMappingTemplateS3LocationInput\");\nconst functionConfiguration = new aws_native.appsync.FunctionConfiguration(\"functionConfiguration\", {\n apiId: graphQlApiId,\n name: name,\n description: description,\n functionVersion: functionVersion,\n dataSourceName: dataSourceName,\n requestMappingTemplateS3Location: requestMappingTemplateS3LocationInput,\n responseMappingTemplateS3Location: responseMappingTemplateS3LocationInput,\n});\n\n```\n\n```python\nimport pulumi\nimport pulumi_aws_native as aws_native\n\nconfig = pulumi.Config()\ngraph_ql_api_id = config.require(\"graphQlApiId\")\nname = config.require(\"name\")\ndescription = config.require(\"description\")\ndata_source_name = config.require(\"dataSourceName\")\nfunction_version = config.require(\"functionVersion\")\nrequest_mapping_template_s3_location_input = config.require(\"requestMappingTemplateS3LocationInput\")\nresponse_mapping_template_s3_location_input = config.require(\"responseMappingTemplateS3LocationInput\")\nfunction_configuration = aws_native.appsync.FunctionConfiguration(\"functionConfiguration\",\n api_id=graph_ql_api_id,\n name=name,\n description=description,\n function_version=function_version,\n data_source_name=data_source_name,\n request_mapping_template_s3_location=request_mapping_template_s3_location_input,\n response_mapping_template_s3_location=response_mapping_template_s3_location_input)\n\n```\n\n{{% /example %}}\n{{% /examples %}}\n",
+ "properties": {
+ "apiId": {
+ "type": "string",
+ "description": "The AWS AppSync GraphQL API that you want to attach using this function.",
+ "replaceOnChanges": true
+ },
+ "code": {
+ "type": "string",
+ "description": "The resolver code that contains the request and response functions. When code is used, the runtime is required. The runtime value must be APPSYNC_JS."
+ },
+ "codeS3Location": {
+ "type": "string",
+ "description": "The Amazon S3 endpoint (where the code is located??)."
+ },
+ "dataSourceName": {
+ "type": "string",
+ "description": "The name of data source this function will attach."
+ },
+ "description": {
+ "type": "string",
+ "description": "The function description."
+ },
+ "functionArn": {
+ "type": "string",
+ "description": "The ARN for the function generated by the service"
+ },
+ "functionId": {
+ "type": "string",
+ "description": "The unique identifier for the function generated by the service"
+ },
+ "functionVersion": {
+ "type": "string",
+ "description": "The version of the request mapping template. Currently, only the 2018-05-29 version of the template is supported."
+ },
+ "maxBatchSize": {
+ "type": "integer",
+ "description": "The maximum number of resolver request inputs that will be sent to a single AWS Lambda function in a BatchInvoke operation."
+ },
+ "name": {
+ "type": "string",
+ "description": "The name of the function."
+ },
+ "requestMappingTemplate": {
+ "type": "string",
+ "description": "The Function request mapping template. Functions support only the 2018-05-29 version of the request mapping template."
+ },
+ "requestMappingTemplateS3Location": {
+ "type": "string",
+ "description": "Describes a Sync configuration for a resolver. Contains information on which Conflict Detection, as well as Resolution strategy, should be performed when the resolver is invoked."
+ },
+ "responseMappingTemplate": {
+ "type": "string",
+ "description": "The Function response mapping template."
+ },
+ "responseMappingTemplateS3Location": {
+ "type": "string",
+ "description": "The location of a response mapping template in an Amazon S3 bucket. Use this if you want to provision with a template file in Amazon S3 rather than embedding it in your CloudFormation template."
+ },
+ "runtime": {
+ "$ref": "#/types/aws-native:appsync:FunctionConfigurationAppSyncRuntime",
+ "description": "Describes a runtime used by an AWS AppSync pipeline resolver or AWS AppSync function. Specifies the name and version of the runtime to use. Note that if a runtime is specified, code must also be specified."
+ },
+ "syncConfig": {
+ "$ref": "#/types/aws-native:appsync:FunctionConfigurationSyncConfig",
+ "description": "Describes a Sync configuration for a resolver. Specifies which Conflict Detection strategy and Resolution strategy to use when the resolver is invoked."
+ }
+ },
+ "type": "object",
+ "required": [
+ "apiId",
+ "dataSourceName",
+ "functionArn",
+ "functionId",
+ "name"
+ ],
+ "inputProperties": {
+ "apiId": {
+ "type": "string",
+ "description": "The AWS AppSync GraphQL API that you want to attach using this function."
+ },
+ "code": {
+ "type": "string",
+ "description": "The resolver code that contains the request and response functions. When code is used, the runtime is required. The runtime value must be APPSYNC_JS."
+ },
+ "codeS3Location": {
+ "type": "string",
+ "description": "The Amazon S3 endpoint (where the code is located??)."
+ },
+ "dataSourceName": {
+ "type": "string",
+ "description": "The name of data source this function will attach."
+ },
+ "description": {
+ "type": "string",
+ "description": "The function description."
+ },
+ "functionVersion": {
+ "type": "string",
+ "description": "The version of the request mapping template. Currently, only the 2018-05-29 version of the template is supported."
+ },
+ "maxBatchSize": {
+ "type": "integer",
+ "description": "The maximum number of resolver request inputs that will be sent to a single AWS Lambda function in a BatchInvoke operation."
+ },
+ "name": {
+ "type": "string",
+ "description": "The name of the function."
+ },
+ "requestMappingTemplate": {
+ "type": "string",
+ "description": "The Function request mapping template. Functions support only the 2018-05-29 version of the request mapping template."
+ },
+ "requestMappingTemplateS3Location": {
+ "type": "string",
+ "description": "Describes a Sync configuration for a resolver. Contains information on which Conflict Detection, as well as Resolution strategy, should be performed when the resolver is invoked."
+ },
+ "responseMappingTemplate": {
+ "type": "string",
+ "description": "The Function response mapping template."
+ },
+ "responseMappingTemplateS3Location": {
+ "type": "string",
+ "description": "The location of a response mapping template in an Amazon S3 bucket. Use this if you want to provision with a template file in Amazon S3 rather than embedding it in your CloudFormation template."
+ },
+ "runtime": {
+ "$ref": "#/types/aws-native:appsync:FunctionConfigurationAppSyncRuntime",
+ "description": "Describes a runtime used by an AWS AppSync pipeline resolver or AWS AppSync function. Specifies the name and version of the runtime to use. Note that if a runtime is specified, code must also be specified."
+ },
+ "syncConfig": {
+ "$ref": "#/types/aws-native:appsync:FunctionConfigurationSyncConfig",
+ "description": "Describes a Sync configuration for a resolver. Specifies which Conflict Detection strategy and Resolution strategy to use when the resolver is invoked."
+ }
+ },
+ "requiredInputs": [
+ "apiId",
+ "dataSourceName"
+ ]
+ },
"aws-native:appsync:SourceApiAssociation": {
"description": "Resource Type definition for AWS::AppSync::SourceApiAssociation",
"properties": {
@@ -132652,13 +133317,6 @@
"identityPoolName": {
"type": "string"
},
- "identityPoolTags": {
- "type": "array",
- "items": {
- "$ref": "#/types/aws-native:cognito:IdentityPoolTag"
- },
- "description": "An array of key-value pairs to apply to this resource."
- },
"name": {
"type": "string"
},
@@ -132711,13 +133369,6 @@
"identityPoolName": {
"type": "string"
},
- "identityPoolTags": {
- "type": "array",
- "items": {
- "$ref": "#/types/aws-native:cognito:IdentityPoolTag"
- },
- "description": "An array of key-value pairs to apply to this resource."
- },
"openIdConnectProviderArns": {
"type": "array",
"items": {
@@ -132816,6 +133467,252 @@
"userPoolId"
]
},
+ "aws-native:cognito:UserPool": {
+ "description": "Resource Type definition for AWS::Cognito::UserPool",
+ "properties": {
+ "accountRecoverySetting": {
+ "$ref": "#/types/aws-native:cognito:UserPoolAccountRecoverySetting"
+ },
+ "adminCreateUserConfig": {
+ "$ref": "#/types/aws-native:cognito:UserPoolAdminCreateUserConfig"
+ },
+ "aliasAttributes": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "arn": {
+ "type": "string"
+ },
+ "autoVerifiedAttributes": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "deletionProtection": {
+ "type": "string"
+ },
+ "deviceConfiguration": {
+ "$ref": "#/types/aws-native:cognito:UserPoolDeviceConfiguration"
+ },
+ "emailConfiguration": {
+ "$ref": "#/types/aws-native:cognito:UserPoolEmailConfiguration"
+ },
+ "emailVerificationMessage": {
+ "type": "string"
+ },
+ "emailVerificationSubject": {
+ "type": "string"
+ },
+ "enabledMfas": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "lambdaConfig": {
+ "$ref": "#/types/aws-native:cognito:UserPoolLambdaConfig"
+ },
+ "mfaConfiguration": {
+ "type": "string"
+ },
+ "policies": {
+ "$ref": "#/types/aws-native:cognito:UserPoolPolicies"
+ },
+ "providerName": {
+ "type": "string"
+ },
+ "providerUrl": {
+ "type": "string"
+ },
+ "schema": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:cognito:UserPoolSchemaAttribute"
+ }
+ },
+ "smsAuthenticationMessage": {
+ "type": "string"
+ },
+ "smsConfiguration": {
+ "$ref": "#/types/aws-native:cognito:UserPoolSmsConfiguration"
+ },
+ "smsVerificationMessage": {
+ "type": "string"
+ },
+ "userAttributeUpdateSettings": {
+ "$ref": "#/types/aws-native:cognito:UserPoolUserAttributeUpdateSettings"
+ },
+ "userPoolAddOns": {
+ "$ref": "#/types/aws-native:cognito:UserPoolAddOns"
+ },
+ "userPoolId": {
+ "type": "string"
+ },
+ "userPoolName": {
+ "type": "string"
+ },
+ "userPoolTags": {
+ "$ref": "pulumi.json#/Any"
+ },
+ "usernameAttributes": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "usernameConfiguration": {
+ "$ref": "#/types/aws-native:cognito:UserPoolUsernameConfiguration"
+ },
+ "verificationMessageTemplate": {
+ "$ref": "#/types/aws-native:cognito:UserPoolVerificationMessageTemplate"
+ }
+ },
+ "type": "object",
+ "required": [
+ "arn",
+ "providerName",
+ "providerUrl",
+ "userPoolId"
+ ],
+ "inputProperties": {
+ "accountRecoverySetting": {
+ "$ref": "#/types/aws-native:cognito:UserPoolAccountRecoverySetting"
+ },
+ "adminCreateUserConfig": {
+ "$ref": "#/types/aws-native:cognito:UserPoolAdminCreateUserConfig"
+ },
+ "aliasAttributes": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "autoVerifiedAttributes": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "deletionProtection": {
+ "type": "string"
+ },
+ "deviceConfiguration": {
+ "$ref": "#/types/aws-native:cognito:UserPoolDeviceConfiguration"
+ },
+ "emailConfiguration": {
+ "$ref": "#/types/aws-native:cognito:UserPoolEmailConfiguration"
+ },
+ "emailVerificationMessage": {
+ "type": "string"
+ },
+ "emailVerificationSubject": {
+ "type": "string"
+ },
+ "enabledMfas": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "lambdaConfig": {
+ "$ref": "#/types/aws-native:cognito:UserPoolLambdaConfig"
+ },
+ "mfaConfiguration": {
+ "type": "string"
+ },
+ "policies": {
+ "$ref": "#/types/aws-native:cognito:UserPoolPolicies"
+ },
+ "schema": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:cognito:UserPoolSchemaAttribute"
+ }
+ },
+ "smsAuthenticationMessage": {
+ "type": "string"
+ },
+ "smsConfiguration": {
+ "$ref": "#/types/aws-native:cognito:UserPoolSmsConfiguration"
+ },
+ "smsVerificationMessage": {
+ "type": "string"
+ },
+ "userAttributeUpdateSettings": {
+ "$ref": "#/types/aws-native:cognito:UserPoolUserAttributeUpdateSettings"
+ },
+ "userPoolAddOns": {
+ "$ref": "#/types/aws-native:cognito:UserPoolAddOns"
+ },
+ "userPoolName": {
+ "type": "string"
+ },
+ "userPoolTags": {
+ "$ref": "pulumi.json#/Any"
+ },
+ "usernameAttributes": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "usernameConfiguration": {
+ "$ref": "#/types/aws-native:cognito:UserPoolUsernameConfiguration"
+ },
+ "verificationMessageTemplate": {
+ "$ref": "#/types/aws-native:cognito:UserPoolVerificationMessageTemplate"
+ }
+ }
+ },
+ "aws-native:cognito:UserPoolGroup": {
+ "description": "Resource Type definition for AWS::Cognito::UserPoolGroup",
+ "properties": {
+ "description": {
+ "type": "string"
+ },
+ "groupName": {
+ "type": "string",
+ "replaceOnChanges": true
+ },
+ "precedence": {
+ "type": "integer"
+ },
+ "roleArn": {
+ "type": "string"
+ },
+ "userPoolId": {
+ "type": "string",
+ "replaceOnChanges": true
+ }
+ },
+ "type": "object",
+ "required": [
+ "userPoolId"
+ ],
+ "inputProperties": {
+ "description": {
+ "type": "string"
+ },
+ "groupName": {
+ "type": "string"
+ },
+ "precedence": {
+ "type": "integer"
+ },
+ "roleArn": {
+ "type": "string"
+ },
+ "userPoolId": {
+ "type": "string"
+ }
+ },
+ "requiredInputs": [
+ "userPoolId"
+ ]
+ },
"aws-native:cognito:UserPoolUser": {
"description": "Resource Type definition for AWS::Cognito::UserPoolUser",
"properties": {
@@ -133650,11 +134547,11 @@
"description": "The name of the contact flow module."
},
"state": {
- "$ref": "#/types/aws-native:connect:ContactFlowModuleState",
+ "type": "string",
"description": "The state of the contact flow module."
},
"status": {
- "$ref": "#/types/aws-native:connect:ContactFlowModuleStatus",
+ "type": "string",
"description": "The status of the contact flow module."
},
"tags": {
@@ -133691,7 +134588,7 @@
"description": "The name of the contact flow module."
},
"state": {
- "$ref": "#/types/aws-native:connect:ContactFlowModuleState",
+ "type": "string",
"description": "The state of the contact flow module."
},
"tags": {
@@ -135457,6 +136354,15 @@
"type": "string",
"description": "The time of this integration got last updated at"
},
+ "matching": {
+ "$ref": "#/types/aws-native:customerprofiles:DomainMatching"
+ },
+ "ruleBasedMatching": {
+ "$ref": "#/types/aws-native:customerprofiles:DomainRuleBasedMatching"
+ },
+ "stats": {
+ "$ref": "#/types/aws-native:customerprofiles:DomainStats"
+ },
"tags": {
"type": "array",
"items": {
@@ -135469,7 +136375,8 @@
"required": [
"createdAt",
"domainName",
- "lastUpdatedAt"
+ "lastUpdatedAt",
+ "stats"
],
"inputProperties": {
"deadLetterQueueUrl": {
@@ -135488,6 +136395,12 @@
"type": "string",
"description": "The unique name of the domain."
},
+ "matching": {
+ "$ref": "#/types/aws-native:customerprofiles:DomainMatching"
+ },
+ "ruleBasedMatching": {
+ "$ref": "#/types/aws-native:customerprofiles:DomainRuleBasedMatching"
+ },
"tags": {
"type": "array",
"items": {
@@ -142200,6 +143113,10 @@
"enableDns64": {
"type": "boolean"
},
+ "ipv4NetmaskLength": {
+ "type": "integer",
+ "description": "The netmask length of the IPv4 CIDR you want to allocate to this subnet from an Amazon VPC IP Address Manager (IPAM) pool"
+ },
"ipv6CidrBlock": {
"type": "string"
},
@@ -142213,6 +143130,10 @@
"type": "boolean",
"replaceOnChanges": true
},
+ "ipv6NetmaskLength": {
+ "type": "integer",
+ "description": "The netmask length of the IPv6 CIDR you want to allocate to this subnet from an Amazon VPC IP Address Manager (IPAM) pool"
+ },
"mapPublicIpOnLaunch": {
"type": "boolean"
},
@@ -142263,12 +143184,20 @@
"enableDns64": {
"type": "boolean"
},
+ "ipv4NetmaskLength": {
+ "type": "integer",
+ "description": "The netmask length of the IPv4 CIDR you want to allocate to this subnet from an Amazon VPC IP Address Manager (IPAM) pool"
+ },
"ipv6CidrBlock": {
"type": "string"
},
"ipv6Native": {
"type": "boolean"
},
+ "ipv6NetmaskLength": {
+ "type": "integer",
+ "description": "The netmask length of the IPv6 CIDR you want to allocate to this subnet from an Amazon VPC IP Address Manager (IPAM) pool"
+ },
"mapPublicIpOnLaunch": {
"type": "boolean"
},
@@ -147714,6 +148643,105 @@
"type"
]
},
+ "aws-native:entityresolution:IdMappingWorkflow": {
+ "description": "IdMappingWorkflow defined in AWS Entity Resolution service",
+ "properties": {
+ "createdAt": {
+ "type": "string"
+ },
+ "description": {
+ "type": "string",
+ "description": "The description of the IdMappingWorkflow"
+ },
+ "idMappingTechniques": {
+ "$ref": "#/types/aws-native:entityresolution:IdMappingWorkflowIdMappingTechniques"
+ },
+ "inputSourceConfig": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:entityresolution:IdMappingWorkflowInputSource"
+ }
+ },
+ "outputSourceConfig": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:entityresolution:IdMappingWorkflowOutputSource"
+ }
+ },
+ "roleArn": {
+ "type": "string"
+ },
+ "tags": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:entityresolution:IdMappingWorkflowTag"
+ }
+ },
+ "updatedAt": {
+ "type": "string"
+ },
+ "workflowArn": {
+ "type": "string"
+ },
+ "workflowName": {
+ "type": "string",
+ "description": "The name of the IdMappingWorkflow",
+ "replaceOnChanges": true
+ }
+ },
+ "type": "object",
+ "required": [
+ "createdAt",
+ "idMappingTechniques",
+ "inputSourceConfig",
+ "outputSourceConfig",
+ "roleArn",
+ "updatedAt",
+ "workflowArn",
+ "workflowName"
+ ],
+ "inputProperties": {
+ "description": {
+ "type": "string",
+ "description": "The description of the IdMappingWorkflow"
+ },
+ "idMappingTechniques": {
+ "$ref": "#/types/aws-native:entityresolution:IdMappingWorkflowIdMappingTechniques"
+ },
+ "inputSourceConfig": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:entityresolution:IdMappingWorkflowInputSource"
+ }
+ },
+ "outputSourceConfig": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:entityresolution:IdMappingWorkflowOutputSource"
+ }
+ },
+ "roleArn": {
+ "type": "string"
+ },
+ "tags": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:entityresolution:IdMappingWorkflowTag"
+ }
+ },
+ "workflowName": {
+ "type": "string",
+ "description": "The name of the IdMappingWorkflow"
+ }
+ },
+ "requiredInputs": [
+ "idMappingTechniques",
+ "inputSourceConfig",
+ "outputSourceConfig",
+ "roleArn",
+ "workflowName"
+ ]
+ },
"aws-native:entityresolution:MatchingWorkflow": {
"description": "MatchingWorkflow defined in AWS Entity Resolution service",
"properties": {
@@ -148195,44 +149223,36 @@
"description": "Resource Type definition for AWS::Events::Rule",
"properties": {
"arn": {
- "type": "string",
- "description": "The ARN of the rule, such as arn:aws:events:us-east-2:123456789012:rule/example."
+ "type": "string"
},
"description": {
- "type": "string",
- "description": "The description of the rule."
+ "type": "string"
},
"eventBusName": {
"type": "string",
- "description": "The name or ARN of the event bus associated with the rule. If you omit this, the default event bus is used."
+ "replaceOnChanges": true
},
"eventPattern": {
- "type": "string",
- "description": "The event pattern of the rule. For more information, see Events and Event Patterns in the Amazon EventBridge User Guide."
+ "$ref": "pulumi.json#/Any"
},
"name": {
"type": "string",
- "description": "The name of the rule.",
"replaceOnChanges": true
},
"roleArn": {
- "type": "string",
- "description": "The Amazon Resource Name (ARN) of the role that is used for target invocation."
+ "type": "string"
},
"scheduleExpression": {
- "type": "string",
- "description": "The scheduling expression. For example, \"cron(0 20 * * ? *)\", \"rate(5 minutes)\". For more information, see Creating an Amazon EventBridge rule that runs on a schedule."
+ "type": "string"
},
"state": {
- "$ref": "#/types/aws-native:events:RuleState",
- "description": "The state of the rule."
+ "type": "string"
},
"targets": {
"type": "array",
"items": {
"$ref": "#/types/aws-native:events:RuleTarget"
- },
- "description": "Adds the specified targets to the specified rule, or updates the targets if they are already associated with the rule.\nTargets are the resources that are invoked when a rule is triggered."
+ }
}
},
"type": "object",
@@ -148241,39 +149261,31 @@
],
"inputProperties": {
"description": {
- "type": "string",
- "description": "The description of the rule."
+ "type": "string"
},
"eventBusName": {
- "type": "string",
- "description": "The name or ARN of the event bus associated with the rule. If you omit this, the default event bus is used."
+ "type": "string"
},
"eventPattern": {
- "type": "string",
- "description": "The event pattern of the rule. For more information, see Events and Event Patterns in the Amazon EventBridge User Guide."
+ "$ref": "pulumi.json#/Any"
},
"name": {
- "type": "string",
- "description": "The name of the rule."
+ "type": "string"
},
"roleArn": {
- "type": "string",
- "description": "The Amazon Resource Name (ARN) of the role that is used for target invocation."
+ "type": "string"
},
"scheduleExpression": {
- "type": "string",
- "description": "The scheduling expression. For example, \"cron(0 20 * * ? *)\", \"rate(5 minutes)\". For more information, see Creating an Amazon EventBridge rule that runs on a schedule."
+ "type": "string"
},
"state": {
- "$ref": "#/types/aws-native:events:RuleState",
- "description": "The state of the rule."
+ "type": "string"
},
"targets": {
"type": "array",
"items": {
"$ref": "#/types/aws-native:events:RuleTarget"
- },
- "description": "Adds the specified targets to the specified rule, or updates the targets if they are already associated with the rule.\nTargets are the resources that are invoked when a rule is triggered."
+ }
}
}
},
@@ -150109,6 +151121,11 @@
"description": "A unique identifier for an AWS IAM role that manages access to your AWS services. With an instance role ARN set, any application that runs on an instance in this fleet can assume the role, including install scripts, server processes, and daemons (background processes). Create a role or look up a role's ARN from the IAM dashboard in the AWS Management Console.",
"replaceOnChanges": true
},
+ "instanceRoleCredentialsProvider": {
+ "$ref": "#/types/aws-native:gamelift:FleetInstanceRoleCredentialsProvider",
+ "description": "Credentials provider implementation that loads credentials from the Amazon EC2 Instance Metadata Service.",
+ "replaceOnChanges": true
+ },
"locations": {
"type": "array",
"items": {
@@ -150229,6 +151246,10 @@
"type": "string",
"description": "A unique identifier for an AWS IAM role that manages access to your AWS services. With an instance role ARN set, any application that runs on an instance in this fleet can assume the role, including install scripts, server processes, and daemons (background processes). Create a role or look up a role's ARN from the IAM dashboard in the AWS Management Console."
},
+ "instanceRoleCredentialsProvider": {
+ "$ref": "#/types/aws-native:gamelift:FleetInstanceRoleCredentialsProvider",
+ "description": "Credentials provider implementation that loads credentials from the Amazon EC2 Instance Metadata Service."
+ },
"locations": {
"type": "array",
"items": {
@@ -151663,6 +152684,66 @@
"datastoreTypeVersion"
]
},
+ "aws-native:iam:Group": {
+ "description": "Resource Type definition for AWS::IAM::Group",
+ "properties": {
+ "arn": {
+ "type": "string",
+ "description": "The Arn of the group to create"
+ },
+ "groupName": {
+ "type": "string",
+ "description": "The name of the group to create",
+ "replaceOnChanges": true
+ },
+ "managedPolicyArns": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "A list of Amazon Resource Names (ARNs) of the IAM managed policies that you want to attach to the role. "
+ },
+ "path": {
+ "type": "string",
+ "description": "The path to the group"
+ },
+ "policies": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:iam:GroupPolicy"
+ },
+ "description": "Adds or updates an inline policy document that is embedded in the specified IAM group"
+ }
+ },
+ "type": "object",
+ "required": [
+ "arn"
+ ],
+ "inputProperties": {
+ "groupName": {
+ "type": "string",
+ "description": "The name of the group to create"
+ },
+ "managedPolicyArns": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "A list of Amazon Resource Names (ARNs) of the IAM managed policies that you want to attach to the role. "
+ },
+ "path": {
+ "type": "string",
+ "description": "The path to the group"
+ },
+ "policies": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:iam:GroupPolicy"
+ },
+ "description": "Adds or updates an inline policy document that is embedded in the specified IAM group"
+ }
+ }
+ },
"aws-native:iam:GroupPolicy": {
"description": "Schema for IAM Group Policy",
"properties": {
@@ -154240,7 +155321,8 @@
"type": "array",
"items": {
"type": "string"
- }
+ },
+ "replaceOnChanges": true
},
"document": {
"type": "string",
@@ -154258,7 +155340,8 @@
"replaceOnChanges": true
},
"jobExecutionsRetryConfig": {
- "$ref": "#/types/aws-native:iot:JobExecutionsRetryConfigProperties"
+ "$ref": "#/types/aws-native:iot:JobExecutionsRetryConfigProperties",
+ "replaceOnChanges": true
},
"jobExecutionsRolloutConfig": {
"$ref": "#/types/aws-native:iot:JobExecutionsRolloutConfigProperties",
@@ -154273,7 +155356,8 @@
"type": "array",
"items": {
"$ref": "#/types/aws-native:iot:JobTemplateMaintenanceWindow"
- }
+ },
+ "replaceOnChanges": true
},
"presignedUrlConfig": {
"$ref": "#/types/aws-native:iot:PresignedUrlConfigProperties",
@@ -154478,6 +155562,12 @@
"policyName": {
"type": "string",
"replaceOnChanges": true
+ },
+ "tags": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:iot:PolicyTag"
+ }
}
},
"type": "object",
@@ -154491,6 +155581,12 @@
},
"policyName": {
"type": "string"
+ },
+ "tags": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:iot:PolicyTag"
+ }
}
},
"requiredInputs": [
@@ -159654,6 +160750,10 @@
"$ref": "#/types/aws-native:lambda:FunctionPackageType",
"description": "PackageType."
},
+ "policy": {
+ "$ref": "pulumi.json#/Any",
+ "description": "The resource policy of your function"
+ },
"reservedConcurrentExecutions": {
"type": "integer",
"description": "The number of simultaneous executions to reserve for the function."
@@ -159774,6 +160874,10 @@
"$ref": "#/types/aws-native:lambda:FunctionPackageType",
"description": "PackageType."
},
+ "policy": {
+ "$ref": "pulumi.json#/Any",
+ "description": "The resource policy of your function"
+ },
"reservedConcurrentExecutions": {
"type": "integer",
"description": "The number of simultaneous executions to reserve for the function."
@@ -165910,6 +167014,108 @@
"serverProperties"
]
},
+ "aws-native:msk:Replicator": {
+ "description": "Resource Type definition for AWS::MSK::Replicator",
+ "properties": {
+ "currentVersion": {
+ "type": "string",
+ "description": "The current version of the MSK replicator."
+ },
+ "description": {
+ "type": "string",
+ "description": "A summary description of the replicator.",
+ "replaceOnChanges": true
+ },
+ "kafkaClusters": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:msk:ReplicatorKafkaCluster"
+ },
+ "description": "Specifies a list of Kafka clusters which are targets of the replicator.",
+ "replaceOnChanges": true
+ },
+ "replicationInfoList": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:msk:ReplicatorReplicationInfo"
+ },
+ "description": "A list of replication configurations, where each configuration targets a given source cluster to target cluster replication flow."
+ },
+ "replicatorArn": {
+ "type": "string",
+ "description": "Amazon Resource Name for the created replicator."
+ },
+ "replicatorName": {
+ "type": "string",
+ "description": "The name of the replicator.",
+ "replaceOnChanges": true
+ },
+ "serviceExecutionRoleArn": {
+ "type": "string",
+ "description": "The Amazon Resource Name (ARN) of the IAM role used by the replicator to access external resources.",
+ "replaceOnChanges": true
+ },
+ "tags": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:msk:ReplicatorTag"
+ },
+ "description": "A collection of tags associated with a resource"
+ }
+ },
+ "type": "object",
+ "required": [
+ "kafkaClusters",
+ "replicationInfoList",
+ "replicatorArn",
+ "replicatorName",
+ "serviceExecutionRoleArn"
+ ],
+ "inputProperties": {
+ "currentVersion": {
+ "type": "string",
+ "description": "The current version of the MSK replicator."
+ },
+ "description": {
+ "type": "string",
+ "description": "A summary description of the replicator."
+ },
+ "kafkaClusters": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:msk:ReplicatorKafkaCluster"
+ },
+ "description": "Specifies a list of Kafka clusters which are targets of the replicator."
+ },
+ "replicationInfoList": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:msk:ReplicatorReplicationInfo"
+ },
+ "description": "A list of replication configurations, where each configuration targets a given source cluster to target cluster replication flow."
+ },
+ "replicatorName": {
+ "type": "string",
+ "description": "The name of the replicator."
+ },
+ "serviceExecutionRoleArn": {
+ "type": "string",
+ "description": "The Amazon Resource Name (ARN) of the IAM role used by the replicator to access external resources."
+ },
+ "tags": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:msk:ReplicatorTag"
+ },
+ "description": "A collection of tags associated with a resource"
+ }
+ },
+ "requiredInputs": [
+ "kafkaClusters",
+ "replicationInfoList",
+ "serviceExecutionRoleArn"
+ ]
+ },
"aws-native:msk:ServerlessCluster": {
"description": "Resource Type definition for AWS::MSK::ServerlessCluster",
"properties": {
@@ -171253,6 +172459,9 @@
},
"themeArn": {
"type": "string"
+ },
+ "validationStrategy": {
+ "$ref": "#/types/aws-native:quicksight:AnalysisValidationStrategy"
}
},
"type": "object",
@@ -171303,6 +172512,9 @@
},
"themeArn": {
"type": "string"
+ },
+ "validationStrategy": {
+ "$ref": "#/types/aws-native:quicksight:AnalysisValidationStrategy"
}
},
"requiredInputs": [
@@ -171363,6 +172575,9 @@
"themeArn": {
"type": "string"
},
+ "validationStrategy": {
+ "$ref": "#/types/aws-native:quicksight:DashboardValidationStrategy"
+ },
"version": {
"$ref": "#/types/aws-native:quicksight:DashboardVersion"
},
@@ -171418,6 +172633,9 @@
"themeArn": {
"type": "string"
},
+ "validationStrategy": {
+ "$ref": "#/types/aws-native:quicksight:DashboardValidationStrategy"
+ },
"versionDescription": {
"type": "string"
}
@@ -171815,6 +173033,9 @@
"type": "string",
"replaceOnChanges": true
},
+ "validationStrategy": {
+ "$ref": "#/types/aws-native:quicksight:TemplateValidationStrategy"
+ },
"version": {
"$ref": "#/types/aws-native:quicksight:TemplateVersion"
},
@@ -171859,6 +173080,9 @@
"templateId": {
"type": "string"
},
+ "validationStrategy": {
+ "$ref": "#/types/aws-native:quicksight:TemplateValidationStrategy"
+ },
"versionDescription": {
"type": "string"
}
@@ -178443,107 +179667,87 @@
"description": "Resource Type definition for AWS::S3::Bucket\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n### Example\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AwsNative = Pulumi.AwsNative;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var s3Bucket = new AwsNative.S3.Bucket(\"s3Bucket\");\n\n var recordingConfiguration = new AwsNative.Ivs.RecordingConfiguration(\"recordingConfiguration\", new()\n {\n Name = \"“MyRecordingConfiguration”\",\n DestinationConfiguration = new AwsNative.Ivs.Inputs.RecordingConfigurationDestinationConfigurationArgs\n {\n S3 = new AwsNative.Ivs.Inputs.RecordingConfigurationS3DestinationConfigurationArgs\n {\n BucketName = s3Bucket.Id,\n },\n },\n ThumbnailConfiguration = new AwsNative.Ivs.Inputs.RecordingConfigurationThumbnailConfigurationArgs\n {\n RecordingMode = AwsNative.Ivs.RecordingConfigurationThumbnailConfigurationRecordingMode.Interval,\n TargetIntervalSeconds = 60,\n Storage = new[]\n {\n AwsNative.Ivs.RecordingConfigurationThumbnailConfigurationStorageItem.Sequential,\n AwsNative.Ivs.RecordingConfigurationThumbnailConfigurationStorageItem.Latest,\n },\n Resolution = AwsNative.Ivs.RecordingConfigurationThumbnailConfigurationResolution.Hd,\n },\n RenditionConfiguration = new AwsNative.Ivs.Inputs.RecordingConfigurationRenditionConfigurationArgs\n {\n RenditionSelection = AwsNative.Ivs.RecordingConfigurationRenditionConfigurationRenditionSelection.Custom,\n Renditions = new[]\n {\n AwsNative.Ivs.RecordingConfigurationRenditionConfigurationRenditionsItem.Hd,\n AwsNative.Ivs.RecordingConfigurationRenditionConfigurationRenditionsItem.Sd,\n },\n },\n }, new CustomResourceOptions\n {\n DependsOn = new[]\n {\n s3Bucket,\n },\n });\n\n var channel = new AwsNative.Ivs.Channel(\"channel\", new()\n {\n Name = \"MyRecordedChannel\",\n RecordingConfigurationArn = recordingConfiguration.Id,\n }, new CustomResourceOptions\n {\n DependsOn = new[]\n {\n recordingConfiguration,\n },\n });\n\n});\n\n\n```\n\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws-native/sdk/go/aws/ivs\"\n\t\"github.com/pulumi/pulumi-aws-native/sdk/go/aws/s3\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\ts3Bucket, err := s3.NewBucket(ctx, \"s3Bucket\", nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\trecordingConfiguration, err := ivs.NewRecordingConfiguration(ctx, \"recordingConfiguration\", \u0026ivs.RecordingConfigurationArgs{\n\t\t\tName: pulumi.String(\"“MyRecordingConfiguration”\"),\n\t\t\tDestinationConfiguration: \u0026ivs.RecordingConfigurationDestinationConfigurationArgs{\n\t\t\t\tS3: \u0026ivs.RecordingConfigurationS3DestinationConfigurationArgs{\n\t\t\t\t\tBucketName: s3Bucket.ID(),\n\t\t\t\t},\n\t\t\t},\n\t\t\tThumbnailConfiguration: \u0026ivs.RecordingConfigurationThumbnailConfigurationArgs{\n\t\t\t\tRecordingMode: ivs.RecordingConfigurationThumbnailConfigurationRecordingModeInterval,\n\t\t\t\tTargetIntervalSeconds: pulumi.Int(60),\n\t\t\t\tStorage: ivs.RecordingConfigurationThumbnailConfigurationStorageItemArray{\n\t\t\t\t\tivs.RecordingConfigurationThumbnailConfigurationStorageItemSequential,\n\t\t\t\t\tivs.RecordingConfigurationThumbnailConfigurationStorageItemLatest,\n\t\t\t\t},\n\t\t\t\tResolution: ivs.RecordingConfigurationThumbnailConfigurationResolutionHd,\n\t\t\t},\n\t\t\tRenditionConfiguration: \u0026ivs.RecordingConfigurationRenditionConfigurationArgs{\n\t\t\t\tRenditionSelection: ivs.RecordingConfigurationRenditionConfigurationRenditionSelectionCustom,\n\t\t\t\tRenditions: ivs.RecordingConfigurationRenditionConfigurationRenditionsItemArray{\n\t\t\t\t\tivs.RecordingConfigurationRenditionConfigurationRenditionsItemHd,\n\t\t\t\t\tivs.RecordingConfigurationRenditionConfigurationRenditionsItemSd,\n\t\t\t\t},\n\t\t\t},\n\t\t}, pulumi.DependsOn([]pulumi.Resource{\n\t\t\ts3Bucket,\n\t\t}))\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ivs.NewChannel(ctx, \"channel\", \u0026ivs.ChannelArgs{\n\t\t\tName: pulumi.String(\"MyRecordedChannel\"),\n\t\t\tRecordingConfigurationArn: recordingConfiguration.ID(),\n\t\t}, pulumi.DependsOn([]pulumi.Resource{\n\t\t\trecordingConfiguration,\n\t\t}))\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n\n```\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws_native from \"@pulumi/aws-native\";\n\nconst s3Bucket = new aws_native.s3.Bucket(\"s3Bucket\", {});\nconst recordingConfiguration = new aws_native.ivs.RecordingConfiguration(\"recordingConfiguration\", {\n name: \"“MyRecordingConfiguration”\",\n destinationConfiguration: {\n s3: {\n bucketName: s3Bucket.id,\n },\n },\n thumbnailConfiguration: {\n recordingMode: aws_native.ivs.RecordingConfigurationThumbnailConfigurationRecordingMode.Interval,\n targetIntervalSeconds: 60,\n storage: [\n aws_native.ivs.RecordingConfigurationThumbnailConfigurationStorageItem.Sequential,\n aws_native.ivs.RecordingConfigurationThumbnailConfigurationStorageItem.Latest,\n ],\n resolution: aws_native.ivs.RecordingConfigurationThumbnailConfigurationResolution.Hd,\n },\n renditionConfiguration: {\n renditionSelection: aws_native.ivs.RecordingConfigurationRenditionConfigurationRenditionSelection.Custom,\n renditions: [\n aws_native.ivs.RecordingConfigurationRenditionConfigurationRenditionsItem.Hd,\n aws_native.ivs.RecordingConfigurationRenditionConfigurationRenditionsItem.Sd,\n ],\n },\n}, {\n dependsOn: [s3Bucket],\n});\nconst channel = new aws_native.ivs.Channel(\"channel\", {\n name: \"MyRecordedChannel\",\n recordingConfigurationArn: recordingConfiguration.id,\n}, {\n dependsOn: [recordingConfiguration],\n});\n\n```\n\n```python\nimport pulumi\nimport pulumi_aws_native as aws_native\n\ns3_bucket = aws_native.s3.Bucket(\"s3Bucket\")\nrecording_configuration = aws_native.ivs.RecordingConfiguration(\"recordingConfiguration\",\n name=\"“MyRecordingConfiguration”\",\n destination_configuration=aws_native.ivs.RecordingConfigurationDestinationConfigurationArgs(\n s3=aws_native.ivs.RecordingConfigurationS3DestinationConfigurationArgs(\n bucket_name=s3_bucket.id,\n ),\n ),\n thumbnail_configuration=aws_native.ivs.RecordingConfigurationThumbnailConfigurationArgs(\n recording_mode=aws_native.ivs.RecordingConfigurationThumbnailConfigurationRecordingMode.INTERVAL,\n target_interval_seconds=60,\n storage=[\n aws_native.ivs.RecordingConfigurationThumbnailConfigurationStorageItem.SEQUENTIAL,\n aws_native.ivs.RecordingConfigurationThumbnailConfigurationStorageItem.LATEST,\n ],\n resolution=aws_native.ivs.RecordingConfigurationThumbnailConfigurationResolution.HD,\n ),\n rendition_configuration=aws_native.ivs.RecordingConfigurationRenditionConfigurationArgs(\n rendition_selection=aws_native.ivs.RecordingConfigurationRenditionConfigurationRenditionSelection.CUSTOM,\n renditions=[\n aws_native.ivs.RecordingConfigurationRenditionConfigurationRenditionsItem.HD,\n aws_native.ivs.RecordingConfigurationRenditionConfigurationRenditionsItem.SD,\n ],\n ),\n opts=pulumi.ResourceOptions(depends_on=[s3_bucket]))\nchannel = aws_native.ivs.Channel(\"channel\",\n name=\"MyRecordedChannel\",\n recording_configuration_arn=recording_configuration.id,\n opts=pulumi.ResourceOptions(depends_on=[recording_configuration]))\n\n```\n\n{{% /example %}}\n{{% example %}}\n### Example\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AwsNative = Pulumi.AwsNative;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var s3Bucket = new AwsNative.S3.Bucket(\"s3Bucket\");\n\n var recordingConfiguration = new AwsNative.Ivs.RecordingConfiguration(\"recordingConfiguration\", new()\n {\n Name = \"MyRecordingConfiguration\",\n DestinationConfiguration = new AwsNative.Ivs.Inputs.RecordingConfigurationDestinationConfigurationArgs\n {\n S3 = new AwsNative.Ivs.Inputs.RecordingConfigurationS3DestinationConfigurationArgs\n {\n BucketName = s3Bucket.Id,\n },\n },\n ThumbnailConfiguration = new AwsNative.Ivs.Inputs.RecordingConfigurationThumbnailConfigurationArgs\n {\n RecordingMode = AwsNative.Ivs.RecordingConfigurationThumbnailConfigurationRecordingMode.Interval,\n TargetIntervalSeconds = 60,\n Resolution = AwsNative.Ivs.RecordingConfigurationThumbnailConfigurationResolution.Hd,\n Storage = new[]\n {\n AwsNative.Ivs.RecordingConfigurationThumbnailConfigurationStorageItem.Sequential,\n AwsNative.Ivs.RecordingConfigurationThumbnailConfigurationStorageItem.Latest,\n },\n },\n RenditionConfiguration = new AwsNative.Ivs.Inputs.RecordingConfigurationRenditionConfigurationArgs\n {\n RenditionSelection = AwsNative.Ivs.RecordingConfigurationRenditionConfigurationRenditionSelection.Custom,\n Renditions = new[]\n {\n AwsNative.Ivs.RecordingConfigurationRenditionConfigurationRenditionsItem.Hd,\n AwsNative.Ivs.RecordingConfigurationRenditionConfigurationRenditionsItem.Sd,\n },\n },\n }, new CustomResourceOptions\n {\n DependsOn = new[]\n {\n s3Bucket,\n },\n });\n\n var channel = new AwsNative.Ivs.Channel(\"channel\", new()\n {\n Name = \"MyRecordedChannel\",\n RecordingConfigurationArn = recordingConfiguration.Id,\n }, new CustomResourceOptions\n {\n DependsOn = new[]\n {\n recordingConfiguration,\n },\n });\n\n});\n\n\n```\n\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws-native/sdk/go/aws/ivs\"\n\t\"github.com/pulumi/pulumi-aws-native/sdk/go/aws/s3\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\ts3Bucket, err := s3.NewBucket(ctx, \"s3Bucket\", nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\trecordingConfiguration, err := ivs.NewRecordingConfiguration(ctx, \"recordingConfiguration\", \u0026ivs.RecordingConfigurationArgs{\n\t\t\tName: pulumi.String(\"MyRecordingConfiguration\"),\n\t\t\tDestinationConfiguration: \u0026ivs.RecordingConfigurationDestinationConfigurationArgs{\n\t\t\t\tS3: \u0026ivs.RecordingConfigurationS3DestinationConfigurationArgs{\n\t\t\t\t\tBucketName: s3Bucket.ID(),\n\t\t\t\t},\n\t\t\t},\n\t\t\tThumbnailConfiguration: \u0026ivs.RecordingConfigurationThumbnailConfigurationArgs{\n\t\t\t\tRecordingMode: ivs.RecordingConfigurationThumbnailConfigurationRecordingModeInterval,\n\t\t\t\tTargetIntervalSeconds: pulumi.Int(60),\n\t\t\t\tResolution: ivs.RecordingConfigurationThumbnailConfigurationResolutionHd,\n\t\t\t\tStorage: ivs.RecordingConfigurationThumbnailConfigurationStorageItemArray{\n\t\t\t\t\tivs.RecordingConfigurationThumbnailConfigurationStorageItemSequential,\n\t\t\t\t\tivs.RecordingConfigurationThumbnailConfigurationStorageItemLatest,\n\t\t\t\t},\n\t\t\t},\n\t\t\tRenditionConfiguration: \u0026ivs.RecordingConfigurationRenditionConfigurationArgs{\n\t\t\t\tRenditionSelection: ivs.RecordingConfigurationRenditionConfigurationRenditionSelectionCustom,\n\t\t\t\tRenditions: ivs.RecordingConfigurationRenditionConfigurationRenditionsItemArray{\n\t\t\t\t\tivs.RecordingConfigurationRenditionConfigurationRenditionsItemHd,\n\t\t\t\t\tivs.RecordingConfigurationRenditionConfigurationRenditionsItemSd,\n\t\t\t\t},\n\t\t\t},\n\t\t}, pulumi.DependsOn([]pulumi.Resource{\n\t\t\ts3Bucket,\n\t\t}))\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ivs.NewChannel(ctx, \"channel\", \u0026ivs.ChannelArgs{\n\t\t\tName: pulumi.String(\"MyRecordedChannel\"),\n\t\t\tRecordingConfigurationArn: recordingConfiguration.ID(),\n\t\t}, pulumi.DependsOn([]pulumi.Resource{\n\t\t\trecordingConfiguration,\n\t\t}))\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n\n```\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws_native from \"@pulumi/aws-native\";\n\nconst s3Bucket = new aws_native.s3.Bucket(\"s3Bucket\", {});\nconst recordingConfiguration = new aws_native.ivs.RecordingConfiguration(\"recordingConfiguration\", {\n name: \"MyRecordingConfiguration\",\n destinationConfiguration: {\n s3: {\n bucketName: s3Bucket.id,\n },\n },\n thumbnailConfiguration: {\n recordingMode: aws_native.ivs.RecordingConfigurationThumbnailConfigurationRecordingMode.Interval,\n targetIntervalSeconds: 60,\n resolution: aws_native.ivs.RecordingConfigurationThumbnailConfigurationResolution.Hd,\n storage: [\n aws_native.ivs.RecordingConfigurationThumbnailConfigurationStorageItem.Sequential,\n aws_native.ivs.RecordingConfigurationThumbnailConfigurationStorageItem.Latest,\n ],\n },\n renditionConfiguration: {\n renditionSelection: aws_native.ivs.RecordingConfigurationRenditionConfigurationRenditionSelection.Custom,\n renditions: [\n aws_native.ivs.RecordingConfigurationRenditionConfigurationRenditionsItem.Hd,\n aws_native.ivs.RecordingConfigurationRenditionConfigurationRenditionsItem.Sd,\n ],\n },\n}, {\n dependsOn: [s3Bucket],\n});\nconst channel = new aws_native.ivs.Channel(\"channel\", {\n name: \"MyRecordedChannel\",\n recordingConfigurationArn: recordingConfiguration.id,\n}, {\n dependsOn: [recordingConfiguration],\n});\n\n```\n\n```python\nimport pulumi\nimport pulumi_aws_native as aws_native\n\ns3_bucket = aws_native.s3.Bucket(\"s3Bucket\")\nrecording_configuration = aws_native.ivs.RecordingConfiguration(\"recordingConfiguration\",\n name=\"MyRecordingConfiguration\",\n destination_configuration=aws_native.ivs.RecordingConfigurationDestinationConfigurationArgs(\n s3=aws_native.ivs.RecordingConfigurationS3DestinationConfigurationArgs(\n bucket_name=s3_bucket.id,\n ),\n ),\n thumbnail_configuration=aws_native.ivs.RecordingConfigurationThumbnailConfigurationArgs(\n recording_mode=aws_native.ivs.RecordingConfigurationThumbnailConfigurationRecordingMode.INTERVAL,\n target_interval_seconds=60,\n resolution=aws_native.ivs.RecordingConfigurationThumbnailConfigurationResolution.HD,\n storage=[\n aws_native.ivs.RecordingConfigurationThumbnailConfigurationStorageItem.SEQUENTIAL,\n aws_native.ivs.RecordingConfigurationThumbnailConfigurationStorageItem.LATEST,\n ],\n ),\n rendition_configuration=aws_native.ivs.RecordingConfigurationRenditionConfigurationArgs(\n rendition_selection=aws_native.ivs.RecordingConfigurationRenditionConfigurationRenditionSelection.CUSTOM,\n renditions=[\n aws_native.ivs.RecordingConfigurationRenditionConfigurationRenditionsItem.HD,\n aws_native.ivs.RecordingConfigurationRenditionConfigurationRenditionsItem.SD,\n ],\n ),\n opts=pulumi.ResourceOptions(depends_on=[s3_bucket]))\nchannel = aws_native.ivs.Channel(\"channel\",\n name=\"MyRecordedChannel\",\n recording_configuration_arn=recording_configuration.id,\n opts=pulumi.ResourceOptions(depends_on=[recording_configuration]))\n\n```\n\n{{% /example %}}\n{{% /examples %}}\n",
"properties": {
"accelerateConfiguration": {
- "$ref": "#/types/aws-native:s3:BucketAccelerateConfiguration",
- "description": "Configuration for the transfer acceleration state."
+ "$ref": "#/types/aws-native:s3:BucketAccelerateConfiguration"
},
"accessControl": {
- "$ref": "#/types/aws-native:s3:BucketAccessControl",
- "description": "A canned access control list (ACL) that grants predefined permissions to the bucket."
+ "type": "string"
},
"analyticsConfigurations": {
"type": "array",
"items": {
"$ref": "#/types/aws-native:s3:BucketAnalyticsConfiguration"
- },
- "description": "The configuration and any analyses for the analytics filter of an Amazon S3 bucket."
+ }
},
"arn": {
- "type": "string",
- "description": "The Amazon Resource Name (ARN) of the specified bucket."
+ "type": "string"
},
"bucketEncryption": {
"$ref": "#/types/aws-native:s3:BucketEncryption"
},
"bucketName": {
"type": "string",
- "description": "A name for the bucket. If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the bucket name.",
"replaceOnChanges": true
},
"corsConfiguration": {
- "$ref": "#/types/aws-native:s3:BucketCorsConfiguration",
- "description": "Rules that define cross-origin resource sharing of objects in this bucket."
+ "$ref": "#/types/aws-native:s3:BucketCorsConfiguration"
},
"domainName": {
- "type": "string",
- "description": "The IPv4 DNS name of the specified bucket."
+ "type": "string"
},
"dualStackDomainName": {
- "type": "string",
- "description": "The IPv6 DNS name of the specified bucket. For more information about dual-stack endpoints, see [Using Amazon S3 Dual-Stack Endpoints](https://docs.aws.amazon.com/AmazonS3/latest/dev/dual-stack-endpoints.html)."
+ "type": "string"
},
"intelligentTieringConfigurations": {
"type": "array",
"items": {
"$ref": "#/types/aws-native:s3:BucketIntelligentTieringConfiguration"
- },
- "description": "Specifies the S3 Intelligent-Tiering configuration for an Amazon S3 bucket."
+ }
},
"inventoryConfigurations": {
"type": "array",
"items": {
"$ref": "#/types/aws-native:s3:BucketInventoryConfiguration"
- },
- "description": "The inventory configuration for an Amazon S3 bucket."
+ }
},
"lifecycleConfiguration": {
- "$ref": "#/types/aws-native:s3:BucketLifecycleConfiguration",
- "description": "Rules that define how Amazon S3 manages objects during their lifetime."
+ "$ref": "#/types/aws-native:s3:BucketLifecycleConfiguration"
},
"loggingConfiguration": {
- "$ref": "#/types/aws-native:s3:BucketLoggingConfiguration",
- "description": "Settings that define where logs are stored."
+ "$ref": "#/types/aws-native:s3:BucketLoggingConfiguration"
},
"metricsConfigurations": {
"type": "array",
"items": {
"$ref": "#/types/aws-native:s3:BucketMetricsConfiguration"
- },
- "description": "Settings that define a metrics configuration for the CloudWatch request metrics from the bucket."
+ }
},
"notificationConfiguration": {
- "$ref": "#/types/aws-native:s3:BucketNotificationConfiguration",
- "description": "Configuration that defines how Amazon S3 handles bucket notifications."
+ "$ref": "#/types/aws-native:s3:BucketNotificationConfiguration"
},
"objectLockConfiguration": {
- "$ref": "#/types/aws-native:s3:BucketObjectLockConfiguration",
- "description": "Places an Object Lock configuration on the specified bucket."
+ "$ref": "#/types/aws-native:s3:BucketObjectLockConfiguration"
},
"objectLockEnabled": {
"type": "boolean",
- "description": "Indicates whether this bucket has an Object Lock configuration enabled.",
"replaceOnChanges": true
},
"ownershipControls": {
- "$ref": "#/types/aws-native:s3:BucketOwnershipControls",
- "description": "Specifies the container element for object ownership rules."
+ "$ref": "#/types/aws-native:s3:BucketOwnershipControls"
},
"publicAccessBlockConfiguration": {
"$ref": "#/types/aws-native:s3:BucketPublicAccessBlockConfiguration"
},
"regionalDomainName": {
- "type": "string",
- "description": "Returns the regional domain name of the specified bucket."
+ "type": "string"
},
"replicationConfiguration": {
- "$ref": "#/types/aws-native:s3:BucketReplicationConfiguration",
- "description": "Configuration for replicating objects in an S3 bucket."
+ "$ref": "#/types/aws-native:s3:BucketReplicationConfiguration"
},
"tags": {
"type": "array",
"items": {
"$ref": "#/types/aws-native:s3:BucketTag"
- },
- "description": "An arbitrary set of tags (key-value pairs) for this S3 bucket."
+ }
},
"versioningConfiguration": {
"$ref": "#/types/aws-native:s3:BucketVersioningConfiguration"
@@ -178552,8 +179756,7 @@
"$ref": "#/types/aws-native:s3:BucketWebsiteConfiguration"
},
"websiteUrl": {
- "type": "string",
- "description": "The Amazon S3 website endpoint for the specified bucket."
+ "type": "string"
}
},
"type": "object",
@@ -178566,89 +179769,73 @@
],
"inputProperties": {
"accelerateConfiguration": {
- "$ref": "#/types/aws-native:s3:BucketAccelerateConfiguration",
- "description": "Configuration for the transfer acceleration state."
+ "$ref": "#/types/aws-native:s3:BucketAccelerateConfiguration"
},
"accessControl": {
- "$ref": "#/types/aws-native:s3:BucketAccessControl",
- "description": "A canned access control list (ACL) that grants predefined permissions to the bucket."
+ "type": "string"
},
"analyticsConfigurations": {
"type": "array",
"items": {
"$ref": "#/types/aws-native:s3:BucketAnalyticsConfiguration"
- },
- "description": "The configuration and any analyses for the analytics filter of an Amazon S3 bucket."
+ }
},
"bucketEncryption": {
"$ref": "#/types/aws-native:s3:BucketEncryption"
},
"bucketName": {
- "type": "string",
- "description": "A name for the bucket. If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the bucket name."
+ "type": "string"
},
"corsConfiguration": {
- "$ref": "#/types/aws-native:s3:BucketCorsConfiguration",
- "description": "Rules that define cross-origin resource sharing of objects in this bucket."
+ "$ref": "#/types/aws-native:s3:BucketCorsConfiguration"
},
"intelligentTieringConfigurations": {
"type": "array",
"items": {
"$ref": "#/types/aws-native:s3:BucketIntelligentTieringConfiguration"
- },
- "description": "Specifies the S3 Intelligent-Tiering configuration for an Amazon S3 bucket."
+ }
},
"inventoryConfigurations": {
"type": "array",
"items": {
"$ref": "#/types/aws-native:s3:BucketInventoryConfiguration"
- },
- "description": "The inventory configuration for an Amazon S3 bucket."
+ }
},
"lifecycleConfiguration": {
- "$ref": "#/types/aws-native:s3:BucketLifecycleConfiguration",
- "description": "Rules that define how Amazon S3 manages objects during their lifetime."
+ "$ref": "#/types/aws-native:s3:BucketLifecycleConfiguration"
},
"loggingConfiguration": {
- "$ref": "#/types/aws-native:s3:BucketLoggingConfiguration",
- "description": "Settings that define where logs are stored."
+ "$ref": "#/types/aws-native:s3:BucketLoggingConfiguration"
},
"metricsConfigurations": {
"type": "array",
"items": {
"$ref": "#/types/aws-native:s3:BucketMetricsConfiguration"
- },
- "description": "Settings that define a metrics configuration for the CloudWatch request metrics from the bucket."
+ }
},
"notificationConfiguration": {
- "$ref": "#/types/aws-native:s3:BucketNotificationConfiguration",
- "description": "Configuration that defines how Amazon S3 handles bucket notifications."
+ "$ref": "#/types/aws-native:s3:BucketNotificationConfiguration"
},
"objectLockConfiguration": {
- "$ref": "#/types/aws-native:s3:BucketObjectLockConfiguration",
- "description": "Places an Object Lock configuration on the specified bucket."
+ "$ref": "#/types/aws-native:s3:BucketObjectLockConfiguration"
},
"objectLockEnabled": {
- "type": "boolean",
- "description": "Indicates whether this bucket has an Object Lock configuration enabled."
+ "type": "boolean"
},
"ownershipControls": {
- "$ref": "#/types/aws-native:s3:BucketOwnershipControls",
- "description": "Specifies the container element for object ownership rules."
+ "$ref": "#/types/aws-native:s3:BucketOwnershipControls"
},
"publicAccessBlockConfiguration": {
"$ref": "#/types/aws-native:s3:BucketPublicAccessBlockConfiguration"
},
"replicationConfiguration": {
- "$ref": "#/types/aws-native:s3:BucketReplicationConfiguration",
- "description": "Configuration for replicating objects in an S3 bucket."
+ "$ref": "#/types/aws-native:s3:BucketReplicationConfiguration"
},
"tags": {
"type": "array",
"items": {
"$ref": "#/types/aws-native:s3:BucketTag"
- },
- "description": "An arbitrary set of tags (key-value pairs) for this S3 bucket."
+ }
},
"versioningConfiguration": {
"$ref": "#/types/aws-native:s3:BucketVersioningConfiguration"
@@ -182716,6 +183903,10 @@
"aws-native:sns:Topic": {
"description": "Resource Type definition for AWS::SNS::Topic",
"properties": {
+ "archivePolicy": {
+ "$ref": "pulumi.json#/Any",
+ "description": "The archive policy determines the number of days Amazon SNS retains messages. You can set a retention period from 1 to 365 days."
+ },
"contentBasedDeduplication": {
"type": "boolean",
"description": "Enables content-based deduplication for FIFO topics. By default, ContentBasedDeduplication is set to false. If you create a FIFO topic and this attribute is false, you must specify a value for the MessageDeduplicationId parameter for the Publish action.\n\nWhen you set ContentBasedDeduplication to true, Amazon SNS uses a SHA-256 hash to generate the MessageDeduplicationId using the body of the message (but not the attributes of the message).\n\n(Optional) To override the generated value, you can specify a value for the the MessageDeduplicationId parameter for the Publish action.\n\n"
@@ -182772,6 +183963,10 @@
"topicArn"
],
"inputProperties": {
+ "archivePolicy": {
+ "$ref": "pulumi.json#/Any",
+ "description": "The archive policy determines the number of days Amazon SNS retains messages. You can set a retention period from 1 to 365 days."
+ },
"contentBasedDeduplication": {
"type": "boolean",
"description": "Enables content-based deduplication for FIFO topics. By default, ContentBasedDeduplication is set to false. If you create a FIFO topic and this attribute is false, you must specify a value for the MessageDeduplicationId parameter for the Publish action.\n\nWhen you set ContentBasedDeduplication to true, Amazon SNS uses a SHA-256 hash to generate the MessageDeduplicationId using the body of the message (but not the attributes of the message).\n\n(Optional) To override the generated value, you can specify a value for the the MessageDeduplicationId parameter for the Publish action.\n\n"
@@ -188346,7 +189541,7 @@
}
},
"aws-native:apigateway:getAccount": {
- "description": "Resource Type definition for AWS::ApiGateway::Account",
+ "description": "The ``AWS::ApiGateway::Account`` resource specifies the IAM role that Amazon API Gateway uses to write API logs to Amazon CloudWatch Logs. To avoid overwriting other roles, you should only have one ``AWS::ApiGateway::Account`` resource per region per account.",
"inputs": {
"properties": {
"id": {
@@ -188362,7 +189557,7 @@
"properties": {
"cloudWatchRoleArn": {
"type": "string",
- "description": "The Amazon Resource Name (ARN) of an IAM role that has write access to CloudWatch Logs in your account."
+ "description": "The ARN of an Amazon CloudWatch role for the current Account."
},
"id": {
"type": "string",
@@ -188420,7 +189615,7 @@
}
},
"aws-native:apigateway:getAuthorizer": {
- "description": "Represents an authorization layer for methods. If enabled on a method, API Gateway will activate the authorizer when a client calls the method.",
+ "description": "The ``AWS::ApiGateway::Authorizer`` resource creates an authorization layer that API Gateway activates for methods that have authorization enabled. API Gateway activates the authorizer when a client calls those methods.",
"inputs": {
"properties": {
"authorizerId": {
@@ -188428,7 +189623,7 @@
},
"restApiId": {
"type": "string",
- "description": "The identifier of the API."
+ "description": "The string identifier of the associated RestApi."
}
},
"required": [
@@ -188444,26 +189639,26 @@
},
"authorizerCredentials": {
"type": "string",
- "description": "Specifies the required credentials as an IAM role for API Gateway to invoke the authorizer."
+ "description": "Specifies the required credentials as an IAM role for API Gateway to invoke the authorizer. To specify an IAM role for API Gateway to assume, use the role's Amazon Resource Name (ARN). To use resource-based permissions on the Lambda function, specify null."
},
"authorizerId": {
"type": "string"
},
"authorizerResultTtlInSeconds": {
"type": "integer",
- "description": "The TTL in seconds of cached authorizer results."
+ "description": "The TTL in seconds of cached authorizer results. If it equals 0, authorization caching is disabled. If it is greater than 0, API Gateway will cache authorizer responses. If this field is not set, the default value is 300. The maximum value is 3600, or 1 hour."
},
"authorizerUri": {
"type": "string",
- "description": "Specifies the authorizer's Uniform Resource Identifier (URI)."
+ "description": "Specifies the authorizer's Uniform Resource Identifier (URI). For ``TOKEN`` or ``REQUEST`` authorizers, this must be a well-formed Lambda function URI, for example, ``arn:aws:apigateway:us-west-2:lambda:path/2015-03-31/functions/arn:aws:lambda:us-west-2:{account_id}:function:{lambda_function_name}/invocations``. In general, the URI has this form ``arn:aws:apigateway:{region}:lambda:path/{service_api}``, where ``{region}`` is the same as the region hosting the Lambda function, ``path`` indicates that the remaining substring in the URI should be treated as the path to the resource, including the initial ``/``. For Lambda functions, this is usually of the form ``/2015-03-31/functions/[FunctionARN]/invocations``."
},
"identitySource": {
"type": "string",
- "description": "The identity source for which authorization is requested."
+ "description": "The identity source for which authorization is requested. For a ``TOKEN`` or ``COGNITO_USER_POOLS`` authorizer, this is required and specifies the request header mapping expression for the custom header holding the authorization token submitted by the client. For example, if the token header name is ``Auth``, the header mapping expression is ``method.request.header.Auth``. For the ``REQUEST`` authorizer, this is required when authorization caching is enabled. The value is a comma-separated string of one or more mapping expressions of the specified request parameters. For example, if an ``Auth`` header, a ``Name`` query string parameter are defined as identity sources, this value is ``method.request.header.Auth, method.request.querystring.Name``. These parameters will be used to derive the authorization caching key and to perform runtime validation of the ``REQUEST`` authorizer by verifying all of the identity-related request parameters are present, not null and non-empty. Only when this is true does the authorizer invoke the authorizer Lambda function, otherwise, it returns a 401 Unauthorized response without calling the Lambda function. The valid value is a string of comma-separated mapping expressions of the specified request parameters. When the authorization caching is not enabled, this property is optional."
},
"identityValidationExpression": {
"type": "string",
- "description": "A validation expression for the incoming identity token."
+ "description": "A validation expression for the incoming identity token. For ``TOKEN`` authorizers, this value is a regular expression. For ``COGNITO_USER_POOLS`` authorizers, API Gateway will match the ``aud`` field of the incoming token from the client against the specified regular expression. It will invoke the authorizer's Lambda function when there is a match. Otherwise, it will return a 401 Unauthorized response without calling the Lambda function. The validation expression does not apply to the ``REQUEST`` authorizer."
},
"name": {
"type": "string",
@@ -188474,11 +189669,11 @@
"items": {
"type": "string"
},
- "description": "A list of the Amazon Cognito user pool ARNs for the COGNITO_USER_POOLS authorizer."
+ "description": "A list of the Amazon Cognito user pool ARNs for the ``COGNITO_USER_POOLS`` authorizer. Each element is of this format: ``arn:aws:cognito-idp:{region}:{account_id}:userpool/{user_pool_id}``. For a ``TOKEN`` or ``REQUEST`` authorizer, this is not defined."
},
"type": {
"type": "string",
- "description": "The authorizer type."
+ "description": "The authorizer type. Valid values are ``TOKEN`` for a Lambda function using a single authorization token submitted in a custom header, ``REQUEST`` for a Lambda function using incoming request parameters, and ``COGNITO_USER_POOLS`` for using an Amazon Cognito user pool."
}
}
}
@@ -188548,7 +189743,7 @@
}
},
"aws-native:apigateway:getDeployment": {
- "description": "Resource Type definition for AWS::ApiGateway::Deployment",
+ "description": "The ``AWS::ApiGateway::Deployment`` resource deploys an API Gateway ``RestApi`` resource to a stage so that clients can call the API over the internet. The stage acts as an environment.",
"inputs": {
"properties": {
"deploymentId": {
@@ -188557,7 +189752,7 @@
},
"restApiId": {
"type": "string",
- "description": "The ID of the RestApi resource to deploy. "
+ "description": "The string identifier of the associated RestApi."
}
},
"required": [
@@ -188573,13 +189768,13 @@
},
"description": {
"type": "string",
- "description": "A description of the purpose of the API Gateway deployment."
+ "description": "The description for the Deployment resource to create."
}
}
}
},
"aws-native:apigateway:getDocumentationPart": {
- "description": "Resource Type definition for AWS::ApiGateway::DocumentationPart",
+ "description": "The ``AWS::ApiGateway::DocumentationPart`` resource creates a documentation part for an API. For more information, see [Representation of API Documentation in API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-documenting-api-content-representation.html) in the *API Gateway Developer Guide*.",
"inputs": {
"properties": {
"documentationPartId": {
@@ -188588,7 +189783,7 @@
},
"restApiId": {
"type": "string",
- "description": "Identifier of the targeted API entity"
+ "description": "The string identifier of the associated RestApi."
}
},
"required": [
@@ -188604,18 +189799,18 @@
},
"properties": {
"type": "string",
- "description": "The documentation content map of the targeted API entity."
+ "description": "The new documentation content map of the targeted API entity. Enclosed key-value pairs are API-specific, but only OpenAPI-compliant key-value pairs can be exported and, hence, published."
}
}
}
},
"aws-native:apigateway:getDocumentationVersion": {
- "description": "A snapshot of the documentation of an API.",
+ "description": "The ``AWS::ApiGateway::DocumentationVersion`` resource creates a snapshot of the documentation for an API. For more information, see [Representation of API Documentation in API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-documenting-api-content-representation.html) in the *API Gateway Developer Guide*.",
"inputs": {
"properties": {
"documentationVersion": {
"type": "string",
- "description": "The version identifier of the API documentation snapshot.",
+ "description": "The version identifier of the to-be-updated documentation version.",
"language": {
"csharp": {
"name": "DocumentationVersionValue"
@@ -188624,7 +189819,7 @@
},
"restApiId": {
"type": "string",
- "description": "The identifier of the API."
+ "description": "The string identifier of the associated RestApi."
}
},
"required": [
@@ -188636,7 +189831,7 @@
"properties": {
"description": {
"type": "string",
- "description": "The description of the API documentation snapshot."
+ "description": "A description about the new documentation snapshot."
}
}
}
@@ -188700,20 +189895,20 @@
}
},
"aws-native:apigateway:getMethod": {
- "description": "Resource Type definition for AWS::ApiGateway::Method",
+ "description": "The ``AWS::ApiGateway::Method`` resource creates API Gateway methods that define the parameters and body that clients must send in their requests.",
"inputs": {
"properties": {
"httpMethod": {
"type": "string",
- "description": "The backend system that the method calls when it receives a request."
+ "description": "The method's HTTP verb."
},
"resourceId": {
"type": "string",
- "description": "The ID of an API Gateway resource."
+ "description": "The Resource identifier for the MethodResponse resource."
},
"restApiId": {
"type": "string",
- "description": "The ID of the RestApi resource in which API Gateway creates the method."
+ "description": "The string identifier of the associated RestApi."
}
},
"required": [
@@ -188726,64 +189921,64 @@
"properties": {
"apiKeyRequired": {
"type": "boolean",
- "description": "Indicates whether the method requires clients to submit a valid API key."
+ "description": "A boolean flag specifying whether a valid ApiKey is required to invoke this method."
},
"authorizationScopes": {
"type": "array",
"items": {
"type": "string"
},
- "description": "A list of authorization scopes configured on the method."
+ "description": "A list of authorization scopes configured on the method. The scopes are used with a ``COGNITO_USER_POOLS`` authorizer to authorize the method invocation. The authorization works by matching the method scopes against the scopes parsed from the access token in the incoming request. The method invocation is authorized if any method scopes matches a claimed scope in the access token. Otherwise, the invocation is not authorized. When the method scope is configured, the client must provide an access token instead of an identity token for authorization purposes."
},
"authorizationType": {
"$ref": "#/types/aws-native:apigateway:MethodAuthorizationType",
- "description": "The method's authorization type."
+ "description": "The method's authorization type. This parameter is required. For valid values, see [Method](https://docs.aws.amazon.com/apigateway/latest/api/API_Method.html) in the *API Gateway API Reference*.\n If you specify the ``AuthorizerId`` property, specify ``CUSTOM`` or ``COGNITO_USER_POOLS`` for this property."
},
"authorizerId": {
"type": "string",
- "description": "The identifier of the authorizer to use on this method."
+ "description": "The identifier of an authorizer to use on this method. The method's authorization type must be ``CUSTOM`` or ``COGNITO_USER_POOLS``."
},
"integration": {
"$ref": "#/types/aws-native:apigateway:MethodIntegration",
- "description": "The backend system that the method calls when it receives a request."
+ "description": "Represents an ``HTTP``, ``HTTP_PROXY``, ``AWS``, ``AWS_PROXY``, or Mock integration."
},
"methodResponses": {
"type": "array",
"items": {
"$ref": "#/types/aws-native:apigateway:MethodResponse"
},
- "description": "The responses that can be sent to the client who calls the method."
+ "description": "Gets a method response associated with a given HTTP status code."
},
"operationName": {
"type": "string",
- "description": "A friendly operation name for the method."
+ "description": "A human-friendly operation identifier for the method. For example, you can assign the ``operationName`` of ``ListPets`` for the ``GET /pets`` method in the ``PetStore`` example."
},
"requestModels": {
"$ref": "pulumi.json#/Any",
- "description": "The resources that are used for the request's content type. Specify request models as key-value pairs (string-to-string mapping), with a content type as the key and a Model resource name as the value."
+ "description": "A key-value map specifying data schemas, represented by Model resources, (as the mapped value) of the request payloads of given content types (as the mapping key)."
},
"requestParameters": {
"$ref": "pulumi.json#/Any",
- "description": "The request parameters that API Gateway accepts. Specify request parameters as key-value pairs (string-to-Boolean mapping), with a source as the key and a Boolean as the value."
+ "description": "A key-value map defining required or optional method request parameters that can be accepted by API Gateway. A key is a method request parameter name matching the pattern of ``method.request.{location}.{name}``, where ``location`` is ``querystring``, ``path``, or ``header`` and ``name`` is a valid and unique parameter name. The value associated with the key is a Boolean flag indicating whether the parameter is required (``true``) or optional (``false``). The method request parameter names defined here are available in Integration to be mapped to integration request parameters or templates."
},
"requestValidatorId": {
"type": "string",
- "description": "The ID of the associated request validator."
+ "description": "The identifier of a RequestValidator for request validation."
}
}
}
},
"aws-native:apigateway:getModel": {
- "description": "Resource Type definition for AWS::ApiGateway::Model",
+ "description": "The ``AWS::ApiGateway::Model`` resource defines the structure of a request or response payload for an API method.",
"inputs": {
"properties": {
"name": {
"type": "string",
- "description": "A name for the model. If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the model name."
+ "description": "A name for the model. If you don't specify a name, CFN generates a unique physical ID and uses that ID for the model name. For more information, see [Name Type](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-name.html).\n If you specify a name, you cannot perform updates that require replacement of this resource. You can perform updates that require no or some interruption. If you must replace the resource, specify a new name."
},
"restApiId": {
"type": "string",
- "description": "The ID of a REST API with which to associate this model."
+ "description": "The string identifier of the associated RestApi."
}
},
"required": [
@@ -188795,11 +189990,11 @@
"properties": {
"description": {
"type": "string",
- "description": "A description that identifies this model."
+ "description": "The description of the model."
},
"schema": {
"$ref": "pulumi.json#/Any",
- "description": "The schema to use to transform data to one or more output formats. Specify null ({}) if you don't want to specify a schema."
+ "description": "The schema for the model. For ``application/json`` models, this should be JSON schema draft 4 model. Do not include \"\\*/\" characters in the description of any properties because such \"\\*/\" characters may be interpreted as the closing marker for comments in some languages, such as Java or JavaScript, causing the installation of your API's SDK generated by API Gateway to fail."
}
}
}
@@ -188840,7 +190035,7 @@
}
},
"aws-native:apigateway:getResource": {
- "description": "Resource Type definition for AWS::ApiGateway::Resource",
+ "description": "The ``AWS::ApiGateway::Resource`` resource creates a resource in an API.",
"inputs": {
"properties": {
"resourceId": {
@@ -188849,7 +190044,7 @@
},
"restApiId": {
"type": "string",
- "description": "The ID of the RestApi resource in which you want to create this resource.."
+ "description": "The string identifier of the associated RestApi."
}
},
"required": [
@@ -188867,7 +190062,7 @@
}
},
"aws-native:apigateway:getRestApi": {
- "description": "Resource Type definition for AWS::ApiGateway::RestApi.",
+ "description": "The ``AWS::ApiGateway::RestApi`` resource creates a REST API. For more information, see [restapi:create](https://docs.aws.amazon.com/apigateway/latest/api/API_CreateRestApi.html) in the *Amazon API Gateway REST API Reference*.\n On January 1, 2016, the Swagger Specification was donated to the [OpenAPI initiative](https://docs.aws.amazon.com/https://www.openapis.org/), becoming the foundation of the OpenAPI Specification.",
"inputs": {
"properties": {
"restApiId": {
@@ -188881,31 +190076,39 @@
"outputs": {
"properties": {
"apiKeySourceType": {
- "type": "string"
+ "type": "string",
+ "description": "The source of the API key for metering requests according to a usage plan. Valid values are: ``HEADER`` to read the API key from the ``X-API-Key`` header of a request. ``AUTHORIZER`` to read the API key from the ``UsageIdentifierKey`` from a custom authorizer."
},
"binaryMediaTypes": {
"type": "array",
"items": {
"type": "string"
- }
+ },
+ "description": "The list of binary media types supported by the RestApi. By default, the RestApi supports only UTF-8-encoded text payloads."
},
"description": {
- "type": "string"
+ "type": "string",
+ "description": "The description of the RestApi."
},
"disableExecuteApiEndpoint": {
- "type": "boolean"
+ "type": "boolean",
+ "description": "Specifies whether clients can invoke your API by using the default ``execute-api`` endpoint. By default, clients can invoke your API with the default ``https://{api_id}.execute-api.{region}.amazonaws.com`` endpoint. To require that clients use a custom domain name to invoke your API, disable the default endpoint"
},
"endpointConfiguration": {
- "$ref": "#/types/aws-native:apigateway:RestApiEndpointConfiguration"
+ "$ref": "#/types/aws-native:apigateway:RestApiEndpointConfiguration",
+ "description": "A list of the endpoint types of the API. Use this property when creating an API. When importing an existing API, specify the endpoint configuration types using the ``Parameters`` property."
},
"minimumCompressionSize": {
- "type": "integer"
+ "type": "integer",
+ "description": "A nullable integer that is used to enable compression (with non-negative between 0 and 10485760 (10M) bytes, inclusive) or disable compression (with a null value) on an API. When compression is enabled, compression or decompression is not applied on the payload if the payload size is smaller than this value. Setting it to zero allows compression for any payload size."
},
"name": {
- "type": "string"
+ "type": "string",
+ "description": "The name of the RestApi. A name is required if the REST API is not based on an OpenAPI specification."
},
"policy": {
- "$ref": "pulumi.json#/Any"
+ "$ref": "pulumi.json#/Any",
+ "description": "A policy document that contains the permissions for the ``RestApi`` resource. To set the ARN for the policy, use the ``!Join`` intrinsic function with ``\"\"`` as delimiter and values of ``\"execute-api:/\"`` and ``\"*\"``."
},
"restApiId": {
"type": "string"
@@ -188917,22 +190120,23 @@
"type": "array",
"items": {
"$ref": "#/types/aws-native:apigateway:RestApiTag"
- }
+ },
+ "description": "The key-value map of strings. The valid character set is [a-zA-Z+-=._:/]. The tag key can be up to 128 characters and must not start with ``aws:``. The tag value can be up to 256 characters."
}
}
}
},
"aws-native:apigateway:getStage": {
- "description": "Resource Type definition for AWS::ApiGateway::Stage",
+ "description": "The ``AWS::ApiGateway::Stage`` resource creates a stage for a deployment.",
"inputs": {
"properties": {
"restApiId": {
"type": "string",
- "description": "The ID of the RestApi resource that you're deploying with this stage."
+ "description": "The string identifier of the associated RestApi."
},
"stageName": {
"type": "string",
- "description": "The name of the stage, which API Gateway uses as the first path segment in the invoked Uniform Resource Identifier (URI)."
+ "description": "The name of the stage is the first path segment in the Uniform Resource Identifier (URI) of a call to API Gateway. Stage names can only contain alphanumeric characters, hyphens, and underscores. Maximum length is 128 characters."
}
},
"required": [
@@ -188944,57 +190148,57 @@
"properties": {
"accessLogSetting": {
"$ref": "#/types/aws-native:apigateway:StageAccessLogSetting",
- "description": "Specifies settings for logging access in this stage."
+ "description": "Access log settings, including the access log format and access log destination ARN."
},
"cacheClusterEnabled": {
"type": "boolean",
- "description": "Indicates whether cache clustering is enabled for the stage."
+ "description": "Specifies whether a cache cluster is enabled for the stage."
},
"cacheClusterSize": {
"type": "string",
- "description": "The stage's cache cluster size."
+ "description": "The stage's cache capacity in GB. For more information about choosing a cache size, see [Enabling API caching to enhance responsiveness](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-caching.html)."
},
"canarySetting": {
"$ref": "#/types/aws-native:apigateway:StageCanarySetting",
- "description": "Specifies settings for the canary deployment in this stage."
+ "description": "Settings for the canary deployment in this stage."
},
"clientCertificateId": {
"type": "string",
- "description": "The ID of the client certificate that API Gateway uses to call your integration endpoints in the stage. "
+ "description": "The identifier of a client certificate for an API stage."
},
"deploymentId": {
"type": "string",
- "description": "The ID of the deployment that the stage is associated with. This parameter is required to create a stage. "
+ "description": "The identifier of the Deployment that the stage points to."
},
"description": {
"type": "string",
- "description": "A description of the stage."
+ "description": "The stage's description."
},
"documentationVersion": {
"type": "string",
- "description": "The version ID of the API documentation snapshot."
+ "description": "The version of the associated API documentation."
},
"methodSettings": {
"type": "array",
"items": {
"$ref": "#/types/aws-native:apigateway:StageMethodSetting"
},
- "description": "Settings for all methods in the stage."
+ "description": "A map that defines the method settings for a Stage resource. Keys (designated as ``/{method_setting_key`` below) are method paths defined as ``{resource_path}/{http_method}`` for an individual method override, or ``/\\*/\\*`` for overriding all methods in the stage."
},
"tags": {
"type": "array",
"items": {
"$ref": "#/types/aws-native:apigateway:StageTag"
},
- "description": "An array of arbitrary tags (key-value pairs) to associate with the stage."
+ "description": "The collection of tags. Each tag element is associated with a given resource."
},
"tracingEnabled": {
"type": "boolean",
- "description": "Specifies whether active X-Ray tracing is enabled for this stage."
+ "description": "Specifies whether active tracing with X-ray is enabled for the Stage."
},
"variables": {
"$ref": "pulumi.json#/Any",
- "description": "A map (string-to-string map) that defines the stage variables, where the variable name is the key and the variable value is the value."
+ "description": "A map (string-to-string map) that defines the stage variables, where the variable name is the key and the variable value is the value. Variable names are limited to alphanumeric characters. Values must match the following regular expression: ``[A-Za-z0-9-._~:/?#\u0026=,]+``."
}
}
}
@@ -189052,7 +190256,7 @@
}
},
"aws-native:apigateway:getUsagePlanKey": {
- "description": "Resource Type definition for AWS::ApiGateway::UsagePlanKey",
+ "description": "The ``AWS::ApiGateway::UsagePlanKey`` resource associates an API key with a usage plan. This association determines which users the usage plan is applied to.",
"inputs": {
"properties": {
"id": {
@@ -189566,6 +190770,43 @@
}
}
},
+ "aws-native:appconfig:getApplication": {
+ "description": "Resource Type definition for AWS::AppConfig::Application",
+ "inputs": {
+ "properties": {
+ "applicationId": {
+ "type": "string",
+ "description": "The application Id"
+ }
+ },
+ "required": [
+ "applicationId"
+ ]
+ },
+ "outputs": {
+ "properties": {
+ "applicationId": {
+ "type": "string",
+ "description": "The application Id"
+ },
+ "description": {
+ "type": "string",
+ "description": "A description of the application."
+ },
+ "name": {
+ "type": "string",
+ "description": "A name for the application."
+ },
+ "tags": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:appconfig:ApplicationTags"
+ },
+ "description": "Metadata to assign to the application. Tags help organize and categorize your AWS AppConfig resources. Each tag consists of a key and an optional value, both of which you define."
+ }
+ }
+ }
+ },
"aws-native:appconfig:getExtension": {
"description": "Resource Type definition for AWS::AppConfig::Extension",
"inputs": {
@@ -190407,6 +191648,72 @@
}
}
},
+ "aws-native:appsync:getFunctionConfiguration": {
+ "description": "An example resource schema demonstrating some basic constructs and validation rules.",
+ "inputs": {
+ "properties": {
+ "functionArn": {
+ "type": "string",
+ "description": "The ARN for the function generated by the service"
+ }
+ },
+ "required": [
+ "functionArn"
+ ]
+ },
+ "outputs": {
+ "properties": {
+ "code": {
+ "type": "string",
+ "description": "The resolver code that contains the request and response functions. When code is used, the runtime is required. The runtime value must be APPSYNC_JS."
+ },
+ "dataSourceName": {
+ "type": "string",
+ "description": "The name of data source this function will attach."
+ },
+ "description": {
+ "type": "string",
+ "description": "The function description."
+ },
+ "functionArn": {
+ "type": "string",
+ "description": "The ARN for the function generated by the service"
+ },
+ "functionId": {
+ "type": "string",
+ "description": "The unique identifier for the function generated by the service"
+ },
+ "functionVersion": {
+ "type": "string",
+ "description": "The version of the request mapping template. Currently, only the 2018-05-29 version of the template is supported."
+ },
+ "maxBatchSize": {
+ "type": "integer",
+ "description": "The maximum number of resolver request inputs that will be sent to a single AWS Lambda function in a BatchInvoke operation."
+ },
+ "name": {
+ "type": "string",
+ "description": "The name of the function."
+ },
+ "requestMappingTemplate": {
+ "type": "string",
+ "description": "The Function request mapping template. Functions support only the 2018-05-29 version of the request mapping template."
+ },
+ "responseMappingTemplate": {
+ "type": "string",
+ "description": "The Function response mapping template."
+ },
+ "runtime": {
+ "$ref": "#/types/aws-native:appsync:FunctionConfigurationAppSyncRuntime",
+ "description": "Describes a runtime used by an AWS AppSync pipeline resolver or AWS AppSync function. Specifies the name and version of the runtime to use. Note that if a runtime is specified, code must also be specified."
+ },
+ "syncConfig": {
+ "$ref": "#/types/aws-native:appsync:FunctionConfigurationSyncConfig",
+ "description": "Describes a Sync configuration for a resolver. Specifies which Conflict Detection strategy and Resolution strategy to use when the resolver is invoked."
+ }
+ }
+ }
+ },
"aws-native:appsync:getSourceApiAssociation": {
"description": "Resource Type definition for AWS::AppSync::SourceApiAssociation",
"inputs": {
@@ -193537,12 +194844,18 @@
"allowUnauthenticatedIdentities": {
"type": "boolean"
},
+ "cognitoEvents": {
+ "$ref": "pulumi.json#/Any"
+ },
"cognitoIdentityProviders": {
"type": "array",
"items": {
"$ref": "#/types/aws-native:cognito:IdentityPoolCognitoIdentityProvider"
}
},
+ "cognitoStreams": {
+ "$ref": "#/types/aws-native:cognito:IdentityPoolCognitoStreams"
+ },
"developerProviderName": {
"type": "string"
},
@@ -193552,13 +194865,6 @@
"identityPoolName": {
"type": "string"
},
- "identityPoolTags": {
- "type": "array",
- "items": {
- "$ref": "#/types/aws-native:cognito:IdentityPoolTag"
- },
- "description": "An array of key-value pairs to apply to this resource."
- },
"name": {
"type": "string"
},
@@ -193568,6 +194874,9 @@
"type": "string"
}
},
+ "pushSync": {
+ "$ref": "#/types/aws-native:cognito:IdentityPoolPushSync"
+ },
"samlProviderArns": {
"type": "array",
"items": {
@@ -193633,6 +194942,146 @@
}
}
},
+ "aws-native:cognito:getUserPool": {
+ "description": "Resource Type definition for AWS::Cognito::UserPool",
+ "inputs": {
+ "properties": {
+ "userPoolId": {
+ "type": "string"
+ }
+ },
+ "required": [
+ "userPoolId"
+ ]
+ },
+ "outputs": {
+ "properties": {
+ "accountRecoverySetting": {
+ "$ref": "#/types/aws-native:cognito:UserPoolAccountRecoverySetting"
+ },
+ "adminCreateUserConfig": {
+ "$ref": "#/types/aws-native:cognito:UserPoolAdminCreateUserConfig"
+ },
+ "aliasAttributes": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "arn": {
+ "type": "string"
+ },
+ "autoVerifiedAttributes": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "deletionProtection": {
+ "type": "string"
+ },
+ "deviceConfiguration": {
+ "$ref": "#/types/aws-native:cognito:UserPoolDeviceConfiguration"
+ },
+ "emailConfiguration": {
+ "$ref": "#/types/aws-native:cognito:UserPoolEmailConfiguration"
+ },
+ "emailVerificationMessage": {
+ "type": "string"
+ },
+ "emailVerificationSubject": {
+ "type": "string"
+ },
+ "lambdaConfig": {
+ "$ref": "#/types/aws-native:cognito:UserPoolLambdaConfig"
+ },
+ "mfaConfiguration": {
+ "type": "string"
+ },
+ "policies": {
+ "$ref": "#/types/aws-native:cognito:UserPoolPolicies"
+ },
+ "providerName": {
+ "type": "string"
+ },
+ "providerUrl": {
+ "type": "string"
+ },
+ "schema": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:cognito:UserPoolSchemaAttribute"
+ }
+ },
+ "smsAuthenticationMessage": {
+ "type": "string"
+ },
+ "smsConfiguration": {
+ "$ref": "#/types/aws-native:cognito:UserPoolSmsConfiguration"
+ },
+ "smsVerificationMessage": {
+ "type": "string"
+ },
+ "userAttributeUpdateSettings": {
+ "$ref": "#/types/aws-native:cognito:UserPoolUserAttributeUpdateSettings"
+ },
+ "userPoolAddOns": {
+ "$ref": "#/types/aws-native:cognito:UserPoolAddOns"
+ },
+ "userPoolId": {
+ "type": "string"
+ },
+ "userPoolName": {
+ "type": "string"
+ },
+ "userPoolTags": {
+ "$ref": "pulumi.json#/Any"
+ },
+ "usernameAttributes": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "usernameConfiguration": {
+ "$ref": "#/types/aws-native:cognito:UserPoolUsernameConfiguration"
+ },
+ "verificationMessageTemplate": {
+ "$ref": "#/types/aws-native:cognito:UserPoolVerificationMessageTemplate"
+ }
+ }
+ }
+ },
+ "aws-native:cognito:getUserPoolGroup": {
+ "description": "Resource Type definition for AWS::Cognito::UserPoolGroup",
+ "inputs": {
+ "properties": {
+ "groupName": {
+ "type": "string"
+ },
+ "userPoolId": {
+ "type": "string"
+ }
+ },
+ "required": [
+ "userPoolId",
+ "groupName"
+ ]
+ },
+ "outputs": {
+ "properties": {
+ "description": {
+ "type": "string"
+ },
+ "precedence": {
+ "type": "integer"
+ },
+ "roleArn": {
+ "type": "string"
+ }
+ }
+ }
+ },
"aws-native:comprehend:getDocumentClassifier": {
"description": "Document Classifier enables training document classifier models.",
"inputs": {
@@ -194020,11 +195469,11 @@
"description": "The name of the contact flow module."
},
"state": {
- "$ref": "#/types/aws-native:connect:ContactFlowModuleState",
+ "type": "string",
"description": "The state of the contact flow module."
},
"status": {
- "$ref": "#/types/aws-native:connect:ContactFlowModuleStatus",
+ "type": "string",
"description": "The status of the contact flow module."
},
"tags": {
@@ -195060,6 +196509,15 @@
"type": "string",
"description": "The time of this integration got last updated at"
},
+ "matching": {
+ "$ref": "#/types/aws-native:customerprofiles:DomainMatching"
+ },
+ "ruleBasedMatching": {
+ "$ref": "#/types/aws-native:customerprofiles:DomainRuleBasedMatching"
+ },
+ "stats": {
+ "$ref": "#/types/aws-native:customerprofiles:DomainStats"
+ },
"tags": {
"type": "array",
"items": {
@@ -198562,6 +200020,10 @@
"enableDns64": {
"type": "boolean"
},
+ "ipv4NetmaskLength": {
+ "type": "integer",
+ "description": "The netmask length of the IPv4 CIDR you want to allocate to this subnet from an Amazon VPC IP Address Manager (IPAM) pool"
+ },
"ipv6CidrBlock": {
"type": "string"
},
@@ -198571,6 +200033,10 @@
"type": "string"
}
},
+ "ipv6NetmaskLength": {
+ "type": "integer",
+ "description": "The netmask length of the IPv6 CIDR you want to allocate to this subnet from an Amazon VPC IP Address Manager (IPAM) pool"
+ },
"mapPublicIpOnLaunch": {
"type": "boolean"
},
@@ -201230,6 +202696,61 @@
}
}
},
+ "aws-native:entityresolution:getIdMappingWorkflow": {
+ "description": "IdMappingWorkflow defined in AWS Entity Resolution service",
+ "inputs": {
+ "properties": {
+ "workflowName": {
+ "type": "string",
+ "description": "The name of the IdMappingWorkflow"
+ }
+ },
+ "required": [
+ "workflowName"
+ ]
+ },
+ "outputs": {
+ "properties": {
+ "createdAt": {
+ "type": "string"
+ },
+ "description": {
+ "type": "string",
+ "description": "The description of the IdMappingWorkflow"
+ },
+ "idMappingTechniques": {
+ "$ref": "#/types/aws-native:entityresolution:IdMappingWorkflowIdMappingTechniques"
+ },
+ "inputSourceConfig": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:entityresolution:IdMappingWorkflowInputSource"
+ }
+ },
+ "outputSourceConfig": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:entityresolution:IdMappingWorkflowOutputSource"
+ }
+ },
+ "roleArn": {
+ "type": "string"
+ },
+ "tags": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:entityresolution:IdMappingWorkflowTag"
+ }
+ },
+ "updatedAt": {
+ "type": "string"
+ },
+ "workflowArn": {
+ "type": "string"
+ }
+ }
+ }
+ },
"aws-native:entityresolution:getMatchingWorkflow": {
"description": "MatchingWorkflow defined in AWS Entity Resolution service",
"inputs": {
@@ -201506,51 +203027,42 @@
"description": "Resource Type definition for AWS::Events::Rule",
"inputs": {
"properties": {
- "arn": {
- "type": "string",
- "description": "The ARN of the rule, such as arn:aws:events:us-east-2:123456789012:rule/example."
+ "id": {
+ "type": "string"
}
},
"required": [
- "arn"
+ "id"
]
},
"outputs": {
"properties": {
"arn": {
- "type": "string",
- "description": "The ARN of the rule, such as arn:aws:events:us-east-2:123456789012:rule/example."
+ "type": "string"
},
"description": {
- "type": "string",
- "description": "The description of the rule."
- },
- "eventBusName": {
- "type": "string",
- "description": "The name or ARN of the event bus associated with the rule. If you omit this, the default event bus is used."
+ "type": "string"
},
"eventPattern": {
- "type": "string",
- "description": "The event pattern of the rule. For more information, see Events and Event Patterns in the Amazon EventBridge User Guide."
+ "$ref": "pulumi.json#/Any"
+ },
+ "id": {
+ "type": "string"
},
"roleArn": {
- "type": "string",
- "description": "The Amazon Resource Name (ARN) of the role that is used for target invocation."
+ "type": "string"
},
"scheduleExpression": {
- "type": "string",
- "description": "The scheduling expression. For example, \"cron(0 20 * * ? *)\", \"rate(5 minutes)\". For more information, see Creating an Amazon EventBridge rule that runs on a schedule."
+ "type": "string"
},
"state": {
- "$ref": "#/types/aws-native:events:RuleState",
- "description": "The state of the rule."
+ "type": "string"
},
"targets": {
"type": "array",
"items": {
"$ref": "#/types/aws-native:events:RuleTarget"
- },
- "description": "Adds the specified targets to the specified rule, or updates the targets if they are already associated with the rule.\nTargets are the resources that are invoked when a rule is triggered."
+ }
}
}
}
@@ -203454,6 +204966,46 @@
}
}
},
+ "aws-native:iam:getGroup": {
+ "description": "Resource Type definition for AWS::IAM::Group",
+ "inputs": {
+ "properties": {
+ "groupName": {
+ "type": "string",
+ "description": "The name of the group to create"
+ }
+ },
+ "required": [
+ "groupName"
+ ]
+ },
+ "outputs": {
+ "properties": {
+ "arn": {
+ "type": "string",
+ "description": "The Arn of the group to create"
+ },
+ "managedPolicyArns": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "A list of Amazon Resource Names (ARNs) of the IAM managed policies that you want to attach to the role. "
+ },
+ "path": {
+ "type": "string",
+ "description": "The path to the group"
+ },
+ "policies": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:iam:GroupPolicy"
+ },
+ "description": "Adds or updates an inline policy document that is embedded in the specified IAM group"
+ }
+ }
+ }
+ },
"aws-native:iam:getGroupPolicy": {
"description": "Schema for IAM Group Policy",
"inputs": {
@@ -204925,21 +206477,6 @@
"properties": {
"arn": {
"type": "string"
- },
- "destinationPackageVersions": {
- "type": "array",
- "items": {
- "type": "string"
- }
- },
- "jobExecutionsRetryConfig": {
- "$ref": "#/types/aws-native:iot:JobExecutionsRetryConfigProperties"
- },
- "maintenanceWindows": {
- "type": "array",
- "items": {
- "$ref": "#/types/aws-native:iot:JobTemplateMaintenanceWindow"
- }
}
}
}
@@ -205029,6 +206566,12 @@
},
"policyDocument": {
"$ref": "pulumi.json#/Any"
+ },
+ "tags": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:iot:PolicyTag"
+ }
}
}
}
@@ -211299,6 +212842,46 @@
}
}
},
+ "aws-native:msk:getReplicator": {
+ "description": "Resource Type definition for AWS::MSK::Replicator",
+ "inputs": {
+ "properties": {
+ "replicatorArn": {
+ "type": "string",
+ "description": "Amazon Resource Name for the created replicator."
+ }
+ },
+ "required": [
+ "replicatorArn"
+ ]
+ },
+ "outputs": {
+ "properties": {
+ "currentVersion": {
+ "type": "string",
+ "description": "The current version of the MSK replicator."
+ },
+ "replicationInfoList": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:msk:ReplicatorReplicationInfo"
+ },
+ "description": "A list of replication configurations, where each configuration targets a given source cluster to target cluster replication flow."
+ },
+ "replicatorArn": {
+ "type": "string",
+ "description": "Amazon Resource Name for the created replicator."
+ },
+ "tags": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/aws-native:msk:ReplicatorTag"
+ },
+ "description": "A collection of tags associated with a resource"
+ }
+ }
+ }
+ },
"aws-native:msk:getServerlessCluster": {
"description": "Resource Type definition for AWS::MSK::ServerlessCluster",
"inputs": {
@@ -217753,105 +219336,93 @@
"description": "Resource Type definition for AWS::S3::Bucket",
"inputs": {
"properties": {
- "bucketName": {
- "type": "string",
- "description": "A name for the bucket. If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the bucket name."
+ "id": {
+ "type": "string"
}
},
"required": [
- "bucketName"
+ "id"
]
},
"outputs": {
"properties": {
"accelerateConfiguration": {
- "$ref": "#/types/aws-native:s3:BucketAccelerateConfiguration",
- "description": "Configuration for the transfer acceleration state."
+ "$ref": "#/types/aws-native:s3:BucketAccelerateConfiguration"
+ },
+ "accessControl": {
+ "type": "string"
},
"analyticsConfigurations": {
"type": "array",
"items": {
"$ref": "#/types/aws-native:s3:BucketAnalyticsConfiguration"
- },
- "description": "The configuration and any analyses for the analytics filter of an Amazon S3 bucket."
+ }
},
"arn": {
- "type": "string",
- "description": "The Amazon Resource Name (ARN) of the specified bucket."
+ "type": "string"
},
"bucketEncryption": {
"$ref": "#/types/aws-native:s3:BucketEncryption"
},
"corsConfiguration": {
- "$ref": "#/types/aws-native:s3:BucketCorsConfiguration",
- "description": "Rules that define cross-origin resource sharing of objects in this bucket."
+ "$ref": "#/types/aws-native:s3:BucketCorsConfiguration"
},
"domainName": {
- "type": "string",
- "description": "The IPv4 DNS name of the specified bucket."
+ "type": "string"
},
"dualStackDomainName": {
- "type": "string",
- "description": "The IPv6 DNS name of the specified bucket. For more information about dual-stack endpoints, see [Using Amazon S3 Dual-Stack Endpoints](https://docs.aws.amazon.com/AmazonS3/latest/dev/dual-stack-endpoints.html)."
+ "type": "string"
+ },
+ "id": {
+ "type": "string"
},
"intelligentTieringConfigurations": {
"type": "array",
"items": {
"$ref": "#/types/aws-native:s3:BucketIntelligentTieringConfiguration"
- },
- "description": "Specifies the S3 Intelligent-Tiering configuration for an Amazon S3 bucket."
+ }
},
"inventoryConfigurations": {
"type": "array",
"items": {
"$ref": "#/types/aws-native:s3:BucketInventoryConfiguration"
- },
- "description": "The inventory configuration for an Amazon S3 bucket."
+ }
},
"lifecycleConfiguration": {
- "$ref": "#/types/aws-native:s3:BucketLifecycleConfiguration",
- "description": "Rules that define how Amazon S3 manages objects during their lifetime."
+ "$ref": "#/types/aws-native:s3:BucketLifecycleConfiguration"
},
"loggingConfiguration": {
- "$ref": "#/types/aws-native:s3:BucketLoggingConfiguration",
- "description": "Settings that define where logs are stored."
+ "$ref": "#/types/aws-native:s3:BucketLoggingConfiguration"
},
"metricsConfigurations": {
"type": "array",
"items": {
"$ref": "#/types/aws-native:s3:BucketMetricsConfiguration"
- },
- "description": "Settings that define a metrics configuration for the CloudWatch request metrics from the bucket."
+ }
},
"notificationConfiguration": {
- "$ref": "#/types/aws-native:s3:BucketNotificationConfiguration",
- "description": "Configuration that defines how Amazon S3 handles bucket notifications."
+ "$ref": "#/types/aws-native:s3:BucketNotificationConfiguration"
},
"objectLockConfiguration": {
- "$ref": "#/types/aws-native:s3:BucketObjectLockConfiguration",
- "description": "Places an Object Lock configuration on the specified bucket."
+ "$ref": "#/types/aws-native:s3:BucketObjectLockConfiguration"
},
"ownershipControls": {
- "$ref": "#/types/aws-native:s3:BucketOwnershipControls",
- "description": "Specifies the container element for object ownership rules."
+ "$ref": "#/types/aws-native:s3:BucketOwnershipControls"
},
"publicAccessBlockConfiguration": {
"$ref": "#/types/aws-native:s3:BucketPublicAccessBlockConfiguration"
},
"regionalDomainName": {
- "type": "string",
- "description": "Returns the regional domain name of the specified bucket."
+ "type": "string"
},
"replicationConfiguration": {
- "$ref": "#/types/aws-native:s3:BucketReplicationConfiguration",
- "description": "Configuration for replicating objects in an S3 bucket."
+ "$ref": "#/types/aws-native:s3:BucketReplicationConfiguration"
},
"tags": {
"type": "array",
"items": {
"$ref": "#/types/aws-native:s3:BucketTag"
- },
- "description": "An arbitrary set of tags (key-value pairs) for this S3 bucket."
+ }
},
"versioningConfiguration": {
"$ref": "#/types/aws-native:s3:BucketVersioningConfiguration"
@@ -217860,8 +219431,7 @@
"$ref": "#/types/aws-native:s3:BucketWebsiteConfiguration"
},
"websiteUrl": {
- "type": "string",
- "description": "The Amazon S3 website endpoint for the specified bucket."
+ "type": "string"
}
}
}
@@ -219356,12 +220926,16 @@
"description": "Resource Schema for AWS::ServiceCatalogAppRegistry::AttributeGroupAssociation.",
"inputs": {
"properties": {
- "id": {
+ "applicationArn": {
+ "type": "string"
+ },
+ "attributeGroupArn": {
"type": "string"
}
},
"required": [
- "id"
+ "applicationArn",
+ "attributeGroupArn"
]
},
"outputs": {
@@ -219371,9 +220945,6 @@
},
"attributeGroupArn": {
"type": "string"
- },
- "id": {
- "type": "string"
}
}
}
@@ -219382,12 +220953,21 @@
"description": "Resource Schema for AWS::ServiceCatalogAppRegistry::ResourceAssociation",
"inputs": {
"properties": {
- "id": {
+ "applicationArn": {
+ "type": "string"
+ },
+ "resourceArn": {
"type": "string"
+ },
+ "resourceType": {
+ "$ref": "#/types/aws-native:servicecatalogappregistry:ResourceAssociationResourceType",
+ "description": "The type of the CFN Resource for now it's enum CFN_STACK."
}
},
"required": [
- "id"
+ "applicationArn",
+ "resourceArn",
+ "resourceType"
]
},
"outputs": {
@@ -219395,9 +220975,6 @@
"applicationArn": {
"type": "string"
},
- "id": {
- "type": "string"
- },
"resourceArn": {
"type": "string"
}
@@ -219864,6 +221441,10 @@
},
"outputs": {
"properties": {
+ "archivePolicy": {
+ "$ref": "pulumi.json#/Any",
+ "description": "The archive policy determines the number of days Amazon SNS retains messages. You can set a retention period from 1 to 365 days."
+ },
"contentBasedDeduplication": {
"type": "boolean",
"description": "Enables content-based deduplication for FIFO topics. By default, ContentBasedDeduplication is set to false. If you create a FIFO topic and this attribute is false, you must specify a value for the MessageDeduplicationId parameter for the Publish action.\n\nWhen you set ContentBasedDeduplication to true, Amazon SNS uses a SHA-256 hash to generate the MessageDeduplicationId using the body of the message (but not the attributes of the message).\n\n(Optional) To override the generated value, you can specify a value for the the MessageDeduplicationId parameter for the Publish action.\n\n"
diff --git a/sdk/dotnet/ApiGateway/Account.cs b/sdk/dotnet/ApiGateway/Account.cs
index e8cfcc084b..2f3600ae1a 100644
--- a/sdk/dotnet/ApiGateway/Account.cs
+++ b/sdk/dotnet/ApiGateway/Account.cs
@@ -10,13 +10,13 @@
namespace Pulumi.AwsNative.ApiGateway
{
///
- /// Resource Type definition for AWS::ApiGateway::Account
+ /// The ``AWS::ApiGateway::Account`` resource specifies the IAM role that Amazon API Gateway uses to write API logs to Amazon CloudWatch Logs. To avoid overwriting other roles, you should only have one ``AWS::ApiGateway::Account`` resource per region per account.
///
[AwsNativeResourceType("aws-native:apigateway:Account")]
public partial class Account : global::Pulumi.CustomResource
{
///
- /// The Amazon Resource Name (ARN) of an IAM role that has write access to CloudWatch Logs in your account.
+ /// The ARN of an Amazon CloudWatch role for the current Account.
///
[Output("cloudWatchRoleArn")]
public Output CloudWatchRoleArn { get; private set; } = null!;
@@ -67,7 +67,7 @@ public static Account Get(string name, Input id, CustomResourceOptions?
public sealed class AccountArgs : global::Pulumi.ResourceArgs
{
///
- /// The Amazon Resource Name (ARN) of an IAM role that has write access to CloudWatch Logs in your account.
+ /// The ARN of an Amazon CloudWatch role for the current Account.
///
[Input("cloudWatchRoleArn")]
public Input? CloudWatchRoleArn { get; set; }
diff --git a/sdk/dotnet/ApiGateway/Authorizer.cs b/sdk/dotnet/ApiGateway/Authorizer.cs
index 9086d33fac..c4cf123c41 100644
--- a/sdk/dotnet/ApiGateway/Authorizer.cs
+++ b/sdk/dotnet/ApiGateway/Authorizer.cs
@@ -10,7 +10,7 @@
namespace Pulumi.AwsNative.ApiGateway
{
///
- /// Represents an authorization layer for methods. If enabled on a method, API Gateway will activate the authorizer when a client calls the method.
+ /// The ``AWS::ApiGateway::Authorizer`` resource creates an authorization layer that API Gateway activates for methods that have authorization enabled. API Gateway activates the authorizer when a client calls those methods.
///
[AwsNativeResourceType("aws-native:apigateway:Authorizer")]
public partial class Authorizer : global::Pulumi.CustomResource
@@ -22,7 +22,7 @@ public partial class Authorizer : global::Pulumi.CustomResource
public Output AuthType { get; private set; } = null!;
///
- /// Specifies the required credentials as an IAM role for API Gateway to invoke the authorizer.
+ /// Specifies the required credentials as an IAM role for API Gateway to invoke the authorizer. To specify an IAM role for API Gateway to assume, use the role's Amazon Resource Name (ARN). To use resource-based permissions on the Lambda function, specify null.
///
[Output("authorizerCredentials")]
public Output AuthorizerCredentials { get; private set; } = null!;
@@ -31,25 +31,25 @@ public partial class Authorizer : global::Pulumi.CustomResource
public Output AuthorizerId { get; private set; } = null!;
///
- /// The TTL in seconds of cached authorizer results.
+ /// The TTL in seconds of cached authorizer results. If it equals 0, authorization caching is disabled. If it is greater than 0, API Gateway will cache authorizer responses. If this field is not set, the default value is 300. The maximum value is 3600, or 1 hour.
///
[Output("authorizerResultTtlInSeconds")]
public Output AuthorizerResultTtlInSeconds { get; private set; } = null!;
///
- /// Specifies the authorizer's Uniform Resource Identifier (URI).
+ /// Specifies the authorizer's Uniform Resource Identifier (URI). For ``TOKEN`` or ``REQUEST`` authorizers, this must be a well-formed Lambda function URI, for example, ``arn:aws:apigateway:us-west-2:lambda:path/2015-03-31/functions/arn:aws:lambda:us-west-2:{account_id}:function:{lambda_function_name}/invocations``. In general, the URI has this form ``arn:aws:apigateway:{region}:lambda:path/{service_api}``, where ``{region}`` is the same as the region hosting the Lambda function, ``path`` indicates that the remaining substring in the URI should be treated as the path to the resource, including the initial ``/``. For Lambda functions, this is usually of the form ``/2015-03-31/functions/[FunctionARN]/invocations``.
///
[Output("authorizerUri")]
public Output AuthorizerUri { get; private set; } = null!;
///
- /// The identity source for which authorization is requested.
+ /// The identity source for which authorization is requested. For a ``TOKEN`` or ``COGNITO_USER_POOLS`` authorizer, this is required and specifies the request header mapping expression for the custom header holding the authorization token submitted by the client. For example, if the token header name is ``Auth``, the header mapping expression is ``method.request.header.Auth``. For the ``REQUEST`` authorizer, this is required when authorization caching is enabled. The value is a comma-separated string of one or more mapping expressions of the specified request parameters. For example, if an ``Auth`` header, a ``Name`` query string parameter are defined as identity sources, this value is ``method.request.header.Auth, method.request.querystring.Name``. These parameters will be used to derive the authorization caching key and to perform runtime validation of the ``REQUEST`` authorizer by verifying all of the identity-related request parameters are present, not null and non-empty. Only when this is true does the authorizer invoke the authorizer Lambda function, otherwise, it returns a 401 Unauthorized response without calling the Lambda function. The valid value is a string of comma-separated mapping expressions of the specified request parameters. When the authorization caching is not enabled, this property is optional.
///
[Output("identitySource")]
public Output IdentitySource { get; private set; } = null!;
///
- /// A validation expression for the incoming identity token.
+ /// A validation expression for the incoming identity token. For ``TOKEN`` authorizers, this value is a regular expression. For ``COGNITO_USER_POOLS`` authorizers, API Gateway will match the ``aud`` field of the incoming token from the client against the specified regular expression. It will invoke the authorizer's Lambda function when there is a match. Otherwise, it will return a 401 Unauthorized response without calling the Lambda function. The validation expression does not apply to the ``REQUEST`` authorizer.
///
[Output("identityValidationExpression")]
public Output IdentityValidationExpression { get; private set; } = null!;
@@ -61,19 +61,19 @@ public partial class Authorizer : global::Pulumi.CustomResource
public Output Name { get; private set; } = null!;
///
- /// A list of the Amazon Cognito user pool ARNs for the COGNITO_USER_POOLS authorizer.
+ /// A list of the Amazon Cognito user pool ARNs for the ``COGNITO_USER_POOLS`` authorizer. Each element is of this format: ``arn:aws:cognito-idp:{region}:{account_id}:userpool/{user_pool_id}``. For a ``TOKEN`` or ``REQUEST`` authorizer, this is not defined.
///
[Output("providerArns")]
public Output> ProviderArns { get; private set; } = null!;
///
- /// The identifier of the API.
+ /// The string identifier of the associated RestApi.
///
[Output("restApiId")]
public Output RestApiId { get; private set; } = null!;
///
- /// The authorizer type.
+ /// The authorizer type. Valid values are ``TOKEN`` for a Lambda function using a single authorization token submitted in a custom header, ``REQUEST`` for a Lambda function using incoming request parameters, and ``COGNITO_USER_POOLS`` for using an Amazon Cognito user pool.
///
[Output("type")]
public Output Type { get; private set; } = null!;
@@ -134,31 +134,31 @@ public sealed class AuthorizerArgs : global::Pulumi.ResourceArgs
public Input? AuthType { get; set; }
///
- /// Specifies the required credentials as an IAM role for API Gateway to invoke the authorizer.
+ /// Specifies the required credentials as an IAM role for API Gateway to invoke the authorizer. To specify an IAM role for API Gateway to assume, use the role's Amazon Resource Name (ARN). To use resource-based permissions on the Lambda function, specify null.
///
[Input("authorizerCredentials")]
public Input? AuthorizerCredentials { get; set; }
///
- /// The TTL in seconds of cached authorizer results.
+ /// The TTL in seconds of cached authorizer results. If it equals 0, authorization caching is disabled. If it is greater than 0, API Gateway will cache authorizer responses. If this field is not set, the default value is 300. The maximum value is 3600, or 1 hour.
///
[Input("authorizerResultTtlInSeconds")]
public Input? AuthorizerResultTtlInSeconds { get; set; }
///
- /// Specifies the authorizer's Uniform Resource Identifier (URI).
+ /// Specifies the authorizer's Uniform Resource Identifier (URI). For ``TOKEN`` or ``REQUEST`` authorizers, this must be a well-formed Lambda function URI, for example, ``arn:aws:apigateway:us-west-2:lambda:path/2015-03-31/functions/arn:aws:lambda:us-west-2:{account_id}:function:{lambda_function_name}/invocations``. In general, the URI has this form ``arn:aws:apigateway:{region}:lambda:path/{service_api}``, where ``{region}`` is the same as the region hosting the Lambda function, ``path`` indicates that the remaining substring in the URI should be treated as the path to the resource, including the initial ``/``. For Lambda functions, this is usually of the form ``/2015-03-31/functions/[FunctionARN]/invocations``.
///
[Input("authorizerUri")]
public Input? AuthorizerUri { get; set; }
///
- /// The identity source for which authorization is requested.
+ /// The identity source for which authorization is requested. For a ``TOKEN`` or ``COGNITO_USER_POOLS`` authorizer, this is required and specifies the request header mapping expression for the custom header holding the authorization token submitted by the client. For example, if the token header name is ``Auth``, the header mapping expression is ``method.request.header.Auth``. For the ``REQUEST`` authorizer, this is required when authorization caching is enabled. The value is a comma-separated string of one or more mapping expressions of the specified request parameters. For example, if an ``Auth`` header, a ``Name`` query string parameter are defined as identity sources, this value is ``method.request.header.Auth, method.request.querystring.Name``. These parameters will be used to derive the authorization caching key and to perform runtime validation of the ``REQUEST`` authorizer by verifying all of the identity-related request parameters are present, not null and non-empty. Only when this is true does the authorizer invoke the authorizer Lambda function, otherwise, it returns a 401 Unauthorized response without calling the Lambda function. The valid value is a string of comma-separated mapping expressions of the specified request parameters. When the authorization caching is not enabled, this property is optional.
///
[Input("identitySource")]
public Input? IdentitySource { get; set; }
///
- /// A validation expression for the incoming identity token.
+ /// A validation expression for the incoming identity token. For ``TOKEN`` authorizers, this value is a regular expression. For ``COGNITO_USER_POOLS`` authorizers, API Gateway will match the ``aud`` field of the incoming token from the client against the specified regular expression. It will invoke the authorizer's Lambda function when there is a match. Otherwise, it will return a 401 Unauthorized response without calling the Lambda function. The validation expression does not apply to the ``REQUEST`` authorizer.
///
[Input("identityValidationExpression")]
public Input? IdentityValidationExpression { get; set; }
@@ -173,7 +173,7 @@ public sealed class AuthorizerArgs : global::Pulumi.ResourceArgs
private InputList? _providerArns;
///
- /// A list of the Amazon Cognito user pool ARNs for the COGNITO_USER_POOLS authorizer.
+ /// A list of the Amazon Cognito user pool ARNs for the ``COGNITO_USER_POOLS`` authorizer. Each element is of this format: ``arn:aws:cognito-idp:{region}:{account_id}:userpool/{user_pool_id}``. For a ``TOKEN`` or ``REQUEST`` authorizer, this is not defined.
///
public InputList ProviderArns
{
@@ -182,13 +182,13 @@ public InputList ProviderArns
}
///
- /// The identifier of the API.
+ /// The string identifier of the associated RestApi.
///
[Input("restApiId", required: true)]
public Input RestApiId { get; set; } = null!;
///
- /// The authorizer type.
+ /// The authorizer type. Valid values are ``TOKEN`` for a Lambda function using a single authorization token submitted in a custom header, ``REQUEST`` for a Lambda function using incoming request parameters, and ``COGNITO_USER_POOLS`` for using an Amazon Cognito user pool.
///
[Input("type", required: true)]
public Input Type { get; set; } = null!;
diff --git a/sdk/dotnet/ApiGateway/Deployment.cs b/sdk/dotnet/ApiGateway/Deployment.cs
index 1dc43859da..c8ab311418 100644
--- a/sdk/dotnet/ApiGateway/Deployment.cs
+++ b/sdk/dotnet/ApiGateway/Deployment.cs
@@ -10,13 +10,13 @@
namespace Pulumi.AwsNative.ApiGateway
{
///
- /// Resource Type definition for AWS::ApiGateway::Deployment
+ /// The ``AWS::ApiGateway::Deployment`` resource deploys an API Gateway ``RestApi`` resource to a stage so that clients can call the API over the internet. The stage acts as an environment.
///
[AwsNativeResourceType("aws-native:apigateway:Deployment")]
public partial class Deployment : global::Pulumi.CustomResource
{
///
- /// Specifies settings for the canary deployment.
+ /// The input configuration for a canary deployment.
///
[Output("deploymentCanarySettings")]
public Output DeploymentCanarySettings { get; private set; } = null!;
@@ -28,25 +28,25 @@ public partial class Deployment : global::Pulumi.CustomResource
public Output DeploymentId { get; private set; } = null!;
///
- /// A description of the purpose of the API Gateway deployment.
+ /// The description for the Deployment resource to create.
///
[Output("description")]
public Output Description { get; private set; } = null!;
///
- /// The ID of the RestApi resource to deploy.
+ /// The string identifier of the associated RestApi.
///
[Output("restApiId")]
public Output RestApiId { get; private set; } = null!;
///
- /// Configures the stage that API Gateway creates with this deployment.
+ /// The description of the Stage resource for the Deployment resource to create. To specify a stage description, you must also provide a stage name.
///
[Output("stageDescription")]
public Output StageDescription { get; private set; } = null!;
///
- /// A name for the stage that API Gateway creates with this deployment. Use only alphanumeric characters.
+ /// The name of the Stage resource for the Deployment resource to create.
///
[Output("stageName")]
public Output StageName { get; private set; } = null!;
@@ -102,31 +102,31 @@ public static Deployment Get(string name, Input id, CustomResourceOption
public sealed class DeploymentArgs : global::Pulumi.ResourceArgs
{
///
- /// Specifies settings for the canary deployment.
+ /// The input configuration for a canary deployment.
///
[Input("deploymentCanarySettings")]
public Input? DeploymentCanarySettings { get; set; }
///
- /// A description of the purpose of the API Gateway deployment.
+ /// The description for the Deployment resource to create.
///
[Input("description")]
public Input? Description { get; set; }
///
- /// The ID of the RestApi resource to deploy.
+ /// The string identifier of the associated RestApi.
///
[Input("restApiId", required: true)]
public Input RestApiId { get; set; } = null!;
///
- /// Configures the stage that API Gateway creates with this deployment.
+ /// The description of the Stage resource for the Deployment resource to create. To specify a stage description, you must also provide a stage name.
///
[Input("stageDescription")]
public Input? StageDescription { get; set; }
///
- /// A name for the stage that API Gateway creates with this deployment. Use only alphanumeric characters.
+ /// The name of the Stage resource for the Deployment resource to create.
///
[Input("stageName")]
public Input? StageName { get; set; }
diff --git a/sdk/dotnet/ApiGateway/DocumentationPart.cs b/sdk/dotnet/ApiGateway/DocumentationPart.cs
index f5cee101d9..25671ddc83 100644
--- a/sdk/dotnet/ApiGateway/DocumentationPart.cs
+++ b/sdk/dotnet/ApiGateway/DocumentationPart.cs
@@ -10,7 +10,7 @@
namespace Pulumi.AwsNative.ApiGateway
{
///
- /// Resource Type definition for AWS::ApiGateway::DocumentationPart
+ /// The ``AWS::ApiGateway::DocumentationPart`` resource creates a documentation part for an API. For more information, see [Representation of API Documentation in API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-documenting-api-content-representation.html) in the *API Gateway Developer Guide*.
///
[AwsNativeResourceType("aws-native:apigateway:DocumentationPart")]
public partial class DocumentationPart : global::Pulumi.CustomResource
@@ -22,19 +22,19 @@ public partial class DocumentationPart : global::Pulumi.CustomResource
public Output DocumentationPartId { get; private set; } = null!;
///
- /// The location of the API entity that the documentation applies to.
+ /// The location of the targeted API entity of the to-be-created documentation part.
///
[Output("location")]
public Output Location { get; private set; } = null!;
///
- /// The documentation content map of the targeted API entity.
+ /// The new documentation content map of the targeted API entity. Enclosed key-value pairs are API-specific, but only OpenAPI-compliant key-value pairs can be exported and, hence, published.
///
[Output("properties")]
public Output Properties { get; private set; } = null!;
///
- /// Identifier of the targeted API entity
+ /// The string identifier of the associated RestApi.
///
[Output("restApiId")]
public Output RestApiId { get; private set; } = null!;
@@ -90,19 +90,19 @@ public static DocumentationPart Get(string name, Input id, CustomResourc
public sealed class DocumentationPartArgs : global::Pulumi.ResourceArgs
{
///
- /// The location of the API entity that the documentation applies to.
+ /// The location of the targeted API entity of the to-be-created documentation part.
///
[Input("location", required: true)]
public Input Location { get; set; } = null!;
///
- /// The documentation content map of the targeted API entity.
+ /// The new documentation content map of the targeted API entity. Enclosed key-value pairs are API-specific, but only OpenAPI-compliant key-value pairs can be exported and, hence, published.
///
[Input("properties", required: true)]
public Input Properties { get; set; } = null!;
///
- /// Identifier of the targeted API entity
+ /// The string identifier of the associated RestApi.
///
[Input("restApiId", required: true)]
public Input RestApiId { get; set; } = null!;
diff --git a/sdk/dotnet/ApiGateway/DocumentationVersion.cs b/sdk/dotnet/ApiGateway/DocumentationVersion.cs
index 02361baa92..45314ac5c2 100644
--- a/sdk/dotnet/ApiGateway/DocumentationVersion.cs
+++ b/sdk/dotnet/ApiGateway/DocumentationVersion.cs
@@ -10,25 +10,25 @@
namespace Pulumi.AwsNative.ApiGateway
{
///
- /// A snapshot of the documentation of an API.
+ /// The ``AWS::ApiGateway::DocumentationVersion`` resource creates a snapshot of the documentation for an API. For more information, see [Representation of API Documentation in API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-documenting-api-content-representation.html) in the *API Gateway Developer Guide*.
///
[AwsNativeResourceType("aws-native:apigateway:DocumentationVersion")]
public partial class DocumentationVersion : global::Pulumi.CustomResource
{
///
- /// The description of the API documentation snapshot.
+ /// A description about the new documentation snapshot.
///
[Output("description")]
public Output Description { get; private set; } = null!;
///
- /// The version identifier of the API documentation snapshot.
+ /// The version identifier of the to-be-updated documentation version.
///
[Output("documentationVersion")]
public Output DocumentationVersionValue { get; private set; } = null!;
///
- /// The identifier of the API.
+ /// The string identifier of the associated RestApi.
///
[Output("restApiId")]
public Output RestApiId { get; private set; } = null!;
@@ -84,19 +84,19 @@ public static DocumentationVersion Get(string name, Input id, CustomReso
public sealed class DocumentationVersionArgs : global::Pulumi.ResourceArgs
{
///
- /// The description of the API documentation snapshot.
+ /// A description about the new documentation snapshot.
///
[Input("description")]
public Input? Description { get; set; }
///
- /// The version identifier of the API documentation snapshot.
+ /// The version identifier of the to-be-updated documentation version.
///
[Input("documentationVersion", required: true)]
public Input DocumentationVersionValue { get; set; } = null!;
///
- /// The identifier of the API.
+ /// The string identifier of the associated RestApi.
///
[Input("restApiId", required: true)]
public Input RestApiId { get; set; } = null!;
diff --git a/sdk/dotnet/ApiGateway/Enums.cs b/sdk/dotnet/ApiGateway/Enums.cs
index fdeb722c11..48088f3aff 100644
--- a/sdk/dotnet/ApiGateway/Enums.cs
+++ b/sdk/dotnet/ApiGateway/Enums.cs
@@ -8,7 +8,7 @@
namespace Pulumi.AwsNative.ApiGateway
{
///
- /// The type of API entity that the documentation content applies to.
+ /// The type of API entity to which the documentation content applies. Valid values are ``API``, ``AUTHORIZER``, ``MODEL``, ``RESOURCE``, ``METHOD``, ``PATH_PARAMETER``, ``QUERY_PARAMETER``, ``REQUEST_HEADER``, ``REQUEST_BODY``, ``RESPONSE``, ``RESPONSE_HEADER``, and ``RESPONSE_BODY``. Content inheritance does not apply to any entity of the ``API``, ``AUTHORIZER``, ``METHOD``, ``MODEL``, ``REQUEST_BODY``, or ``RESOURCE`` type.
///
[EnumType]
public readonly struct DocumentationPartLocationType : IEquatable
@@ -49,7 +49,8 @@ private DocumentationPartLocationType(string value)
}
///
- /// The method's authorization type.
+ /// The method's authorization type. This parameter is required. For valid values, see [Method](https://docs.aws.amazon.com/apigateway/latest/api/API_Method.html) in the *API Gateway API Reference*.
+ /// If you specify the ``AuthorizerId`` property, specify ``CUSTOM`` or ``COGNITO_USER_POOLS`` for this property.
///
[EnumType]
public readonly struct MethodAuthorizationType : IEquatable
@@ -82,7 +83,7 @@ private MethodAuthorizationType(string value)
}
///
- /// The type of the network connection to the integration endpoint.
+ /// The type of the network connection to the integration endpoint. The valid value is ``INTERNET`` for connections through the public routable internet or ``VPC_LINK`` for private connections between API Gateway and a network load balancer in a VPC. The default value is ``INTERNET``.
///
[EnumType]
public readonly struct MethodIntegrationConnectionType : IEquatable
@@ -113,7 +114,8 @@ private MethodIntegrationConnectionType(string value)
}
///
- /// Specifies how to handle request payload content type conversions.
+ /// Specifies how to handle request payload content type conversions. Supported values are ``CONVERT_TO_BINARY`` and ``CONVERT_TO_TEXT``, with the following behaviors:
+ /// If this property is not defined, the request payload will be passed through from the method request to integration request without modification, provided that the ``passthroughBehavior`` is configured to support payload pass-through.
///
[EnumType]
public readonly struct MethodIntegrationContentHandling : IEquatable
@@ -144,7 +146,7 @@ private MethodIntegrationContentHandling(string value)
}
///
- /// Indicates when API Gateway passes requests to the targeted backend.
+ /// Specifies how the method request body of an unmapped content type will be passed through the integration request to the back end without transformation. A content type is unmapped if no mapping template is defined in the integration or the content type does not match any of the mapped content types, as specified in ``requestTemplates``. The valid value is one of the following: ``WHEN_NO_MATCH``: passes the method request body through the integration request to the back end without transformation when the method request content type does not match any content type associated with the mapping templates defined in the integration request. ``WHEN_NO_TEMPLATES``: passes the method request body through the integration request to the back end without transformation when no mapping template is defined in the integration request. If a template is defined when this option is selected, the method request of an unmapped content-type will be rejected with an HTTP 415 Unsupported Media Type response. ``NEVER``: rejects the method request with an HTTP 415 Unsupported Media Type response when either the method request content type does not match any content type associated with the mapping templates defined in the integration request or no mapping template is defined in the integration request.
///
[EnumType]
public readonly struct MethodIntegrationPassthroughBehavior : IEquatable
@@ -176,7 +178,8 @@ private MethodIntegrationPassthroughBehavior(string value)
}
///
- /// Specifies how to handle request payload content type conversions.
+ /// Specifies how to handle response payload content type conversions. Supported values are ``CONVERT_TO_BINARY`` and ``CONVERT_TO_TEXT``, with the following behaviors:
+ /// If this property is not defined, the response payload will be passed through from the integration response to the method response without modification.
///
[EnumType]
public readonly struct MethodIntegrationResponseContentHandling : IEquatable
@@ -207,7 +210,8 @@ private MethodIntegrationResponseContentHandling(string value)
}
///
- /// The type of backend that your method is running.
+ /// Specifies an API method integration type. The valid value is one of the following:
+ /// For the HTTP and HTTP proxy integrations, each integration can specify a protocol (``http/https``), port and path. Standard 80 and 443 ports are supported as well as custom ports above 1024. An HTTP or HTTP proxy integration with a ``connectionType`` of ``VPC_LINK`` is referred to as a private integration and uses a VpcLink to connect API Gateway to a network load balancer of a VPC.
///
[EnumType]
public readonly struct MethodIntegrationType : IEquatable
@@ -241,7 +245,7 @@ private MethodIntegrationType(string value)
}
///
- /// The type of usage plan key. Currently, the only valid key type is API_KEY.
+ /// The type of a UsagePlanKey resource for a plan customer.
///
[EnumType]
public readonly struct UsagePlanKeyKeyType : IEquatable
diff --git a/sdk/dotnet/ApiGateway/GetAccount.cs b/sdk/dotnet/ApiGateway/GetAccount.cs
index ba198db20e..99054856db 100644
--- a/sdk/dotnet/ApiGateway/GetAccount.cs
+++ b/sdk/dotnet/ApiGateway/GetAccount.cs
@@ -12,13 +12,13 @@ namespace Pulumi.AwsNative.ApiGateway
public static class GetAccount
{
///
- /// Resource Type definition for AWS::ApiGateway::Account
+ /// The ``AWS::ApiGateway::Account`` resource specifies the IAM role that Amazon API Gateway uses to write API logs to Amazon CloudWatch Logs. To avoid overwriting other roles, you should only have one ``AWS::ApiGateway::Account`` resource per region per account.
///
public static Task InvokeAsync(GetAccountArgs args, InvokeOptions? options = null)
=> global::Pulumi.Deployment.Instance.InvokeAsync("aws-native:apigateway:getAccount", args ?? new GetAccountArgs(), options.WithDefaults());
///
- /// Resource Type definition for AWS::ApiGateway::Account
+ /// The ``AWS::ApiGateway::Account`` resource specifies the IAM role that Amazon API Gateway uses to write API logs to Amazon CloudWatch Logs. To avoid overwriting other roles, you should only have one ``AWS::ApiGateway::Account`` resource per region per account.
///
public static Output Invoke(GetAccountInvokeArgs args, InvokeOptions? options = null)
=> global::Pulumi.Deployment.Instance.Invoke("aws-native:apigateway:getAccount", args ?? new GetAccountInvokeArgs(), options.WithDefaults());
@@ -58,7 +58,7 @@ public GetAccountInvokeArgs()
public sealed class GetAccountResult
{
///
- /// The Amazon Resource Name (ARN) of an IAM role that has write access to CloudWatch Logs in your account.
+ /// The ARN of an Amazon CloudWatch role for the current Account.
///
public readonly string? CloudWatchRoleArn;
///
diff --git a/sdk/dotnet/ApiGateway/GetAuthorizer.cs b/sdk/dotnet/ApiGateway/GetAuthorizer.cs
index d55825c17c..63889f3aab 100644
--- a/sdk/dotnet/ApiGateway/GetAuthorizer.cs
+++ b/sdk/dotnet/ApiGateway/GetAuthorizer.cs
@@ -12,13 +12,13 @@ namespace Pulumi.AwsNative.ApiGateway
public static class GetAuthorizer
{
///
- /// Represents an authorization layer for methods. If enabled on a method, API Gateway will activate the authorizer when a client calls the method.
+ /// The ``AWS::ApiGateway::Authorizer`` resource creates an authorization layer that API Gateway activates for methods that have authorization enabled. API Gateway activates the authorizer when a client calls those methods.
///
public static Task InvokeAsync(GetAuthorizerArgs args, InvokeOptions? options = null)
=> global::Pulumi.Deployment.Instance.InvokeAsync("aws-native:apigateway:getAuthorizer", args ?? new GetAuthorizerArgs(), options.WithDefaults());
///
- /// Represents an authorization layer for methods. If enabled on a method, API Gateway will activate the authorizer when a client calls the method.
+ /// The ``AWS::ApiGateway::Authorizer`` resource creates an authorization layer that API Gateway activates for methods that have authorization enabled. API Gateway activates the authorizer when a client calls those methods.
///
public static Output Invoke(GetAuthorizerInvokeArgs args, InvokeOptions? options = null)
=> global::Pulumi.Deployment.Instance.Invoke("aws-native:apigateway:getAuthorizer", args ?? new GetAuthorizerInvokeArgs(), options.WithDefaults());
@@ -31,7 +31,7 @@ public sealed class GetAuthorizerArgs : global::Pulumi.InvokeArgs
public string AuthorizerId { get; set; } = null!;
///
- /// The identifier of the API.
+ /// The string identifier of the associated RestApi.
///
[Input("restApiId", required: true)]
public string RestApiId { get; set; } = null!;
@@ -48,7 +48,7 @@ public sealed class GetAuthorizerInvokeArgs : global::Pulumi.InvokeArgs
public Input AuthorizerId { get; set; } = null!;
///
- /// The identifier of the API.
+ /// The string identifier of the associated RestApi.
///
[Input("restApiId", required: true)]
public Input RestApiId { get; set; } = null!;
@@ -68,24 +68,24 @@ public sealed class GetAuthorizerResult
///
public readonly string? AuthType;
///
- /// Specifies the required credentials as an IAM role for API Gateway to invoke the authorizer.
+ /// Specifies the required credentials as an IAM role for API Gateway to invoke the authorizer. To specify an IAM role for API Gateway to assume, use the role's Amazon Resource Name (ARN). To use resource-based permissions on the Lambda function, specify null.
///
public readonly string? AuthorizerCredentials;
public readonly string? AuthorizerId;
///
- /// The TTL in seconds of cached authorizer results.
+ /// The TTL in seconds of cached authorizer results. If it equals 0, authorization caching is disabled. If it is greater than 0, API Gateway will cache authorizer responses. If this field is not set, the default value is 300. The maximum value is 3600, or 1 hour.
///
public readonly int? AuthorizerResultTtlInSeconds;
///
- /// Specifies the authorizer's Uniform Resource Identifier (URI).
+ /// Specifies the authorizer's Uniform Resource Identifier (URI). For ``TOKEN`` or ``REQUEST`` authorizers, this must be a well-formed Lambda function URI, for example, ``arn:aws:apigateway:us-west-2:lambda:path/2015-03-31/functions/arn:aws:lambda:us-west-2:{account_id}:function:{lambda_function_name}/invocations``. In general, the URI has this form ``arn:aws:apigateway:{region}:lambda:path/{service_api}``, where ``{region}`` is the same as the region hosting the Lambda function, ``path`` indicates that the remaining substring in the URI should be treated as the path to the resource, including the initial ``/``. For Lambda functions, this is usually of the form ``/2015-03-31/functions/[FunctionARN]/invocations``.
///
public readonly string? AuthorizerUri;
///
- /// The identity source for which authorization is requested.
+ /// The identity source for which authorization is requested. For a ``TOKEN`` or ``COGNITO_USER_POOLS`` authorizer, this is required and specifies the request header mapping expression for the custom header holding the authorization token submitted by the client. For example, if the token header name is ``Auth``, the header mapping expression is ``method.request.header.Auth``. For the ``REQUEST`` authorizer, this is required when authorization caching is enabled. The value is a comma-separated string of one or more mapping expressions of the specified request parameters. For example, if an ``Auth`` header, a ``Name`` query string parameter are defined as identity sources, this value is ``method.request.header.Auth, method.request.querystring.Name``. These parameters will be used to derive the authorization caching key and to perform runtime validation of the ``REQUEST`` authorizer by verifying all of the identity-related request parameters are present, not null and non-empty. Only when this is true does the authorizer invoke the authorizer Lambda function, otherwise, it returns a 401 Unauthorized response without calling the Lambda function. The valid value is a string of comma-separated mapping expressions of the specified request parameters. When the authorization caching is not enabled, this property is optional.
///
public readonly string? IdentitySource;
///
- /// A validation expression for the incoming identity token.
+ /// A validation expression for the incoming identity token. For ``TOKEN`` authorizers, this value is a regular expression. For ``COGNITO_USER_POOLS`` authorizers, API Gateway will match the ``aud`` field of the incoming token from the client against the specified regular expression. It will invoke the authorizer's Lambda function when there is a match. Otherwise, it will return a 401 Unauthorized response without calling the Lambda function. The validation expression does not apply to the ``REQUEST`` authorizer.
///
public readonly string? IdentityValidationExpression;
///
@@ -93,11 +93,11 @@ public sealed class GetAuthorizerResult
///
public readonly string? Name;
///
- /// A list of the Amazon Cognito user pool ARNs for the COGNITO_USER_POOLS authorizer.
+ /// A list of the Amazon Cognito user pool ARNs for the ``COGNITO_USER_POOLS`` authorizer. Each element is of this format: ``arn:aws:cognito-idp:{region}:{account_id}:userpool/{user_pool_id}``. For a ``TOKEN`` or ``REQUEST`` authorizer, this is not defined.
///
public readonly ImmutableArray ProviderArns;
///
- /// The authorizer type.
+ /// The authorizer type. Valid values are ``TOKEN`` for a Lambda function using a single authorization token submitted in a custom header, ``REQUEST`` for a Lambda function using incoming request parameters, and ``COGNITO_USER_POOLS`` for using an Amazon Cognito user pool.
///
public readonly string? Type;
diff --git a/sdk/dotnet/ApiGateway/GetDeployment.cs b/sdk/dotnet/ApiGateway/GetDeployment.cs
index 27c549504f..dc8c8f42ea 100644
--- a/sdk/dotnet/ApiGateway/GetDeployment.cs
+++ b/sdk/dotnet/ApiGateway/GetDeployment.cs
@@ -12,13 +12,13 @@ namespace Pulumi.AwsNative.ApiGateway
public static class GetDeployment
{
///
- /// Resource Type definition for AWS::ApiGateway::Deployment
+ /// The ``AWS::ApiGateway::Deployment`` resource deploys an API Gateway ``RestApi`` resource to a stage so that clients can call the API over the internet. The stage acts as an environment.
///
public static Task InvokeAsync(GetDeploymentArgs args, InvokeOptions? options = null)
=> global::Pulumi.Deployment.Instance.InvokeAsync("aws-native:apigateway:getDeployment", args ?? new GetDeploymentArgs(), options.WithDefaults());
///
- /// Resource Type definition for AWS::ApiGateway::Deployment
+ /// The ``AWS::ApiGateway::Deployment`` resource deploys an API Gateway ``RestApi`` resource to a stage so that clients can call the API over the internet. The stage acts as an environment.
///
public static Output Invoke(GetDeploymentInvokeArgs args, InvokeOptions? options = null)
=> global::Pulumi.Deployment.Instance.Invoke("aws-native:apigateway:getDeployment", args ?? new GetDeploymentInvokeArgs(), options.WithDefaults());
@@ -34,7 +34,7 @@ public sealed class GetDeploymentArgs : global::Pulumi.InvokeArgs
public string DeploymentId { get; set; } = null!;
///
- /// The ID of the RestApi resource to deploy.
+ /// The string identifier of the associated RestApi.
///
[Input("restApiId", required: true)]
public string RestApiId { get; set; } = null!;
@@ -54,7 +54,7 @@ public sealed class GetDeploymentInvokeArgs : global::Pulumi.InvokeArgs
public Input DeploymentId { get; set; } = null!;
///
- /// The ID of the RestApi resource to deploy.
+ /// The string identifier of the associated RestApi.
///
[Input("restApiId", required: true)]
public Input RestApiId { get; set; } = null!;
@@ -74,7 +74,7 @@ public sealed class GetDeploymentResult
///
public readonly string? DeploymentId;
///
- /// A description of the purpose of the API Gateway deployment.
+ /// The description for the Deployment resource to create.
///
public readonly string? Description;
diff --git a/sdk/dotnet/ApiGateway/GetDocumentationPart.cs b/sdk/dotnet/ApiGateway/GetDocumentationPart.cs
index 0406d720c5..04fbe43975 100644
--- a/sdk/dotnet/ApiGateway/GetDocumentationPart.cs
+++ b/sdk/dotnet/ApiGateway/GetDocumentationPart.cs
@@ -12,13 +12,13 @@ namespace Pulumi.AwsNative.ApiGateway
public static class GetDocumentationPart
{
///
- /// Resource Type definition for AWS::ApiGateway::DocumentationPart
+ /// The ``AWS::ApiGateway::DocumentationPart`` resource creates a documentation part for an API. For more information, see [Representation of API Documentation in API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-documenting-api-content-representation.html) in the *API Gateway Developer Guide*.
///
public static Task InvokeAsync(GetDocumentationPartArgs args, InvokeOptions? options = null)
=> global::Pulumi.Deployment.Instance.InvokeAsync("aws-native:apigateway:getDocumentationPart", args ?? new GetDocumentationPartArgs(), options.WithDefaults());
///
- /// Resource Type definition for AWS::ApiGateway::DocumentationPart
+ /// The ``AWS::ApiGateway::DocumentationPart`` resource creates a documentation part for an API. For more information, see [Representation of API Documentation in API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-documenting-api-content-representation.html) in the *API Gateway Developer Guide*.
///
public static Output Invoke(GetDocumentationPartInvokeArgs args, InvokeOptions? options = null)
=> global::Pulumi.Deployment.Instance.Invoke("aws-native:apigateway:getDocumentationPart", args ?? new GetDocumentationPartInvokeArgs(), options.WithDefaults());
@@ -34,7 +34,7 @@ public sealed class GetDocumentationPartArgs : global::Pulumi.InvokeArgs
public string DocumentationPartId { get; set; } = null!;
///
- /// Identifier of the targeted API entity
+ /// The string identifier of the associated RestApi.
///
[Input("restApiId", required: true)]
public string RestApiId { get; set; } = null!;
@@ -54,7 +54,7 @@ public sealed class GetDocumentationPartInvokeArgs : global::Pulumi.InvokeArgs
public Input DocumentationPartId { get; set; } = null!;
///
- /// Identifier of the targeted API entity
+ /// The string identifier of the associated RestApi.
///
[Input("restApiId", required: true)]
public Input RestApiId { get; set; } = null!;
@@ -74,7 +74,7 @@ public sealed class GetDocumentationPartResult
///
public readonly string? DocumentationPartId;
///
- /// The documentation content map of the targeted API entity.
+ /// The new documentation content map of the targeted API entity. Enclosed key-value pairs are API-specific, but only OpenAPI-compliant key-value pairs can be exported and, hence, published.
///
public readonly string? Properties;
diff --git a/sdk/dotnet/ApiGateway/GetDocumentationVersion.cs b/sdk/dotnet/ApiGateway/GetDocumentationVersion.cs
index 636756ec28..9099627b30 100644
--- a/sdk/dotnet/ApiGateway/GetDocumentationVersion.cs
+++ b/sdk/dotnet/ApiGateway/GetDocumentationVersion.cs
@@ -12,13 +12,13 @@ namespace Pulumi.AwsNative.ApiGateway
public static class GetDocumentationVersion
{
///
- /// A snapshot of the documentation of an API.
+ /// The ``AWS::ApiGateway::DocumentationVersion`` resource creates a snapshot of the documentation for an API. For more information, see [Representation of API Documentation in API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-documenting-api-content-representation.html) in the *API Gateway Developer Guide*.
///
public static Task InvokeAsync(GetDocumentationVersionArgs args, InvokeOptions? options = null)
=> global::Pulumi.Deployment.Instance.InvokeAsync("aws-native:apigateway:getDocumentationVersion", args ?? new GetDocumentationVersionArgs(), options.WithDefaults());
///
- /// A snapshot of the documentation of an API.
+ /// The ``AWS::ApiGateway::DocumentationVersion`` resource creates a snapshot of the documentation for an API. For more information, see [Representation of API Documentation in API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-documenting-api-content-representation.html) in the *API Gateway Developer Guide*.
///
public static Output Invoke(GetDocumentationVersionInvokeArgs args, InvokeOptions? options = null)
=> global::Pulumi.Deployment.Instance.Invoke("aws-native:apigateway:getDocumentationVersion", args ?? new GetDocumentationVersionInvokeArgs(), options.WithDefaults());
@@ -28,13 +28,13 @@ public static Output Invoke(GetDocumentationVersi
public sealed class GetDocumentationVersionArgs : global::Pulumi.InvokeArgs
{
///
- /// The version identifier of the API documentation snapshot.
+ /// The version identifier of the to-be-updated documentation version.
///
[Input("documentationVersion", required: true)]
public string DocumentationVersionValue { get; set; } = null!;
///
- /// The identifier of the API.
+ /// The string identifier of the associated RestApi.
///
[Input("restApiId", required: true)]
public string RestApiId { get; set; } = null!;
@@ -48,13 +48,13 @@ public GetDocumentationVersionArgs()
public sealed class GetDocumentationVersionInvokeArgs : global::Pulumi.InvokeArgs
{
///
- /// The version identifier of the API documentation snapshot.
+ /// The version identifier of the to-be-updated documentation version.
///
[Input("documentationVersion", required: true)]
public Input DocumentationVersion { get; set; } = null!;
///
- /// The identifier of the API.
+ /// The string identifier of the associated RestApi.
///
[Input("restApiId", required: true)]
public Input RestApiId { get; set; } = null!;
@@ -70,7 +70,7 @@ public GetDocumentationVersionInvokeArgs()
public sealed class GetDocumentationVersionResult
{
///
- /// The description of the API documentation snapshot.
+ /// A description about the new documentation snapshot.
///
public readonly string? Description;
diff --git a/sdk/dotnet/ApiGateway/GetMethod.cs b/sdk/dotnet/ApiGateway/GetMethod.cs
index 5a6e38b027..d4724bae74 100644
--- a/sdk/dotnet/ApiGateway/GetMethod.cs
+++ b/sdk/dotnet/ApiGateway/GetMethod.cs
@@ -12,13 +12,13 @@ namespace Pulumi.AwsNative.ApiGateway
public static class GetMethod
{
///
- /// Resource Type definition for AWS::ApiGateway::Method
+ /// The ``AWS::ApiGateway::Method`` resource creates API Gateway methods that define the parameters and body that clients must send in their requests.
///
public static Task InvokeAsync(GetMethodArgs args, InvokeOptions? options = null)
=> global::Pulumi.Deployment.Instance.InvokeAsync("aws-native:apigateway:getMethod", args ?? new GetMethodArgs(), options.WithDefaults());
///
- /// Resource Type definition for AWS::ApiGateway::Method
+ /// The ``AWS::ApiGateway::Method`` resource creates API Gateway methods that define the parameters and body that clients must send in their requests.
///
public static Output Invoke(GetMethodInvokeArgs args, InvokeOptions? options = null)
=> global::Pulumi.Deployment.Instance.Invoke("aws-native:apigateway:getMethod", args ?? new GetMethodInvokeArgs(), options.WithDefaults());
@@ -28,19 +28,19 @@ public static Output Invoke(GetMethodInvokeArgs args, InvokeOpt
public sealed class GetMethodArgs : global::Pulumi.InvokeArgs
{
///
- /// The backend system that the method calls when it receives a request.
+ /// The method's HTTP verb.
///
[Input("httpMethod", required: true)]
public string HttpMethod { get; set; } = null!;
///
- /// The ID of an API Gateway resource.
+ /// The Resource identifier for the MethodResponse resource.
///
[Input("resourceId", required: true)]
public string ResourceId { get; set; } = null!;
///
- /// The ID of the RestApi resource in which API Gateway creates the method.
+ /// The string identifier of the associated RestApi.
///
[Input("restApiId", required: true)]
public string RestApiId { get; set; } = null!;
@@ -54,19 +54,19 @@ public GetMethodArgs()
public sealed class GetMethodInvokeArgs : global::Pulumi.InvokeArgs
{
///
- /// The backend system that the method calls when it receives a request.
+ /// The method's HTTP verb.
///
[Input("httpMethod", required: true)]
public Input HttpMethod { get; set; } = null!;
///
- /// The ID of an API Gateway resource.
+ /// The Resource identifier for the MethodResponse resource.
///
[Input("resourceId", required: true)]
public Input ResourceId { get; set; } = null!;
///
- /// The ID of the RestApi resource in which API Gateway creates the method.
+ /// The string identifier of the associated RestApi.
///
[Input("restApiId", required: true)]
public Input RestApiId { get; set; } = null!;
@@ -82,43 +82,44 @@ public GetMethodInvokeArgs()
public sealed class GetMethodResult
{
///
- /// Indicates whether the method requires clients to submit a valid API key.
+ /// A boolean flag specifying whether a valid ApiKey is required to invoke this method.
///
public readonly bool? ApiKeyRequired;
///
- /// A list of authorization scopes configured on the method.
+ /// A list of authorization scopes configured on the method. The scopes are used with a ``COGNITO_USER_POOLS`` authorizer to authorize the method invocation. The authorization works by matching the method scopes against the scopes parsed from the access token in the incoming request. The method invocation is authorized if any method scopes matches a claimed scope in the access token. Otherwise, the invocation is not authorized. When the method scope is configured, the client must provide an access token instead of an identity token for authorization purposes.
///
public readonly ImmutableArray AuthorizationScopes;
///
- /// The method's authorization type.
+ /// The method's authorization type. This parameter is required. For valid values, see [Method](https://docs.aws.amazon.com/apigateway/latest/api/API_Method.html) in the *API Gateway API Reference*.
+ /// If you specify the ``AuthorizerId`` property, specify ``CUSTOM`` or ``COGNITO_USER_POOLS`` for this property.
///
public readonly Pulumi.AwsNative.ApiGateway.MethodAuthorizationType? AuthorizationType;
///
- /// The identifier of the authorizer to use on this method.
+ /// The identifier of an authorizer to use on this method. The method's authorization type must be ``CUSTOM`` or ``COGNITO_USER_POOLS``.
///
public readonly string? AuthorizerId;
///
- /// The backend system that the method calls when it receives a request.
+ /// Represents an ``HTTP``, ``HTTP_PROXY``, ``AWS``, ``AWS_PROXY``, or Mock integration.
///
public readonly Outputs.MethodIntegration? Integration;
///
- /// The responses that can be sent to the client who calls the method.
+ /// Gets a method response associated with a given HTTP status code.
///
public readonly ImmutableArray MethodResponses;
///
- /// A friendly operation name for the method.
+ /// A human-friendly operation identifier for the method. For example, you can assign the ``operationName`` of ``ListPets`` for the ``GET /pets`` method in the ``PetStore`` example.
///
public readonly string? OperationName;
///
- /// The resources that are used for the request's content type. Specify request models as key-value pairs (string-to-string mapping), with a content type as the key and a Model resource name as the value.
+ /// A key-value map specifying data schemas, represented by Model resources, (as the mapped value) of the request payloads of given content types (as the mapping key).
///
public readonly object? RequestModels;
///
- /// The request parameters that API Gateway accepts. Specify request parameters as key-value pairs (string-to-Boolean mapping), with a source as the key and a Boolean as the value.
+ /// A key-value map defining required or optional method request parameters that can be accepted by API Gateway. A key is a method request parameter name matching the pattern of ``method.request.{location}.{name}``, where ``location`` is ``querystring``, ``path``, or ``header`` and ``name`` is a valid and unique parameter name. The value associated with the key is a Boolean flag indicating whether the parameter is required (``true``) or optional (``false``). The method request parameter names defined here are available in Integration to be mapped to integration request parameters or templates.
///
public readonly object? RequestParameters;
///
- /// The ID of the associated request validator.
+ /// The identifier of a RequestValidator for request validation.
///
public readonly string? RequestValidatorId;
diff --git a/sdk/dotnet/ApiGateway/GetModel.cs b/sdk/dotnet/ApiGateway/GetModel.cs
index 1aa450bb9c..3e3518ac15 100644
--- a/sdk/dotnet/ApiGateway/GetModel.cs
+++ b/sdk/dotnet/ApiGateway/GetModel.cs
@@ -12,13 +12,13 @@ namespace Pulumi.AwsNative.ApiGateway
public static class GetModel
{
///
- /// Resource Type definition for AWS::ApiGateway::Model
+ /// The ``AWS::ApiGateway::Model`` resource defines the structure of a request or response payload for an API method.
///
public static Task InvokeAsync(GetModelArgs args, InvokeOptions? options = null)
=> global::Pulumi.Deployment.Instance.InvokeAsync("aws-native:apigateway:getModel", args ?? new GetModelArgs(), options.WithDefaults());
///
- /// Resource Type definition for AWS::ApiGateway::Model
+ /// The ``AWS::ApiGateway::Model`` resource defines the structure of a request or response payload for an API method.
///
public static Output Invoke(GetModelInvokeArgs args, InvokeOptions? options = null)
=> global::Pulumi.Deployment.Instance.Invoke("aws-native:apigateway:getModel", args ?? new GetModelInvokeArgs(), options.WithDefaults());
@@ -28,13 +28,14 @@ public static Output Invoke(GetModelInvokeArgs args, InvokeOptio
public sealed class GetModelArgs : global::Pulumi.InvokeArgs
{
///
- /// A name for the model. If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the model name.
+ /// A name for the model. If you don't specify a name, CFN generates a unique physical ID and uses that ID for the model name. For more information, see [Name Type](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-name.html).
+ /// If you specify a name, you cannot perform updates that require replacement of this resource. You can perform updates that require no or some interruption. If you must replace the resource, specify a new name.
///
[Input("name", required: true)]
public string Name { get; set; } = null!;
///
- /// The ID of a REST API with which to associate this model.
+ /// The string identifier of the associated RestApi.
///
[Input("restApiId", required: true)]
public string RestApiId { get; set; } = null!;
@@ -48,13 +49,14 @@ public GetModelArgs()
public sealed class GetModelInvokeArgs : global::Pulumi.InvokeArgs
{
///
- /// A name for the model. If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the model name.
+ /// A name for the model. If you don't specify a name, CFN generates a unique physical ID and uses that ID for the model name. For more information, see [Name Type](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-name.html).
+ /// If you specify a name, you cannot perform updates that require replacement of this resource. You can perform updates that require no or some interruption. If you must replace the resource, specify a new name.
///
[Input("name", required: true)]
public Input Name { get; set; } = null!;
///
- /// The ID of a REST API with which to associate this model.
+ /// The string identifier of the associated RestApi.
///
[Input("restApiId", required: true)]
public Input RestApiId { get; set; } = null!;
@@ -70,11 +72,11 @@ public GetModelInvokeArgs()
public sealed class GetModelResult
{
///
- /// A description that identifies this model.
+ /// The description of the model.
///
public readonly string? Description;
///
- /// The schema to use to transform data to one or more output formats. Specify null ({}) if you don't want to specify a schema.
+ /// The schema for the model. For ``application/json`` models, this should be JSON schema draft 4 model. Do not include "\*/" characters in the description of any properties because such "\*/" characters may be interpreted as the closing marker for comments in some languages, such as Java or JavaScript, causing the installation of your API's SDK generated by API Gateway to fail.
///
public readonly object? Schema;
diff --git a/sdk/dotnet/ApiGateway/GetResource.cs b/sdk/dotnet/ApiGateway/GetResource.cs
index 21089c17c5..29340f1c19 100644
--- a/sdk/dotnet/ApiGateway/GetResource.cs
+++ b/sdk/dotnet/ApiGateway/GetResource.cs
@@ -12,13 +12,13 @@ namespace Pulumi.AwsNative.ApiGateway
public static class GetResource
{
///
- /// Resource Type definition for AWS::ApiGateway::Resource
+ /// The ``AWS::ApiGateway::Resource`` resource creates a resource in an API.
///
public static Task InvokeAsync(GetResourceArgs args, InvokeOptions? options = null)
=> global::Pulumi.Deployment.Instance.InvokeAsync("aws-native:apigateway:getResource", args ?? new GetResourceArgs(), options.WithDefaults());
///
- /// Resource Type definition for AWS::ApiGateway::Resource
+ /// The ``AWS::ApiGateway::Resource`` resource creates a resource in an API.
///
public static Output Invoke(GetResourceInvokeArgs args, InvokeOptions? options = null)
=> global::Pulumi.Deployment.Instance.Invoke("aws-native:apigateway:getResource", args ?? new GetResourceInvokeArgs(), options.WithDefaults());
@@ -34,7 +34,7 @@ public sealed class GetResourceArgs : global::Pulumi.InvokeArgs
public string ResourceId { get; set; } = null!;
///
- /// The ID of the RestApi resource in which you want to create this resource..
+ /// The string identifier of the associated RestApi.
///
[Input("restApiId", required: true)]
public string RestApiId { get; set; } = null!;
@@ -54,7 +54,7 @@ public sealed class GetResourceInvokeArgs : global::Pulumi.InvokeArgs
public Input ResourceId { get; set; } = null!;
///
- /// The ID of the RestApi resource in which you want to create this resource..
+ /// The string identifier of the associated RestApi.
///
[Input("restApiId", required: true)]
public Input RestApiId { get; set; } = null!;
diff --git a/sdk/dotnet/ApiGateway/GetRestApi.cs b/sdk/dotnet/ApiGateway/GetRestApi.cs
index e184682fed..85206f8c1b 100644
--- a/sdk/dotnet/ApiGateway/GetRestApi.cs
+++ b/sdk/dotnet/ApiGateway/GetRestApi.cs
@@ -12,13 +12,15 @@ namespace Pulumi.AwsNative.ApiGateway
public static class GetRestApi
{
///
- /// Resource Type definition for AWS::ApiGateway::RestApi.
+ /// The ``AWS::ApiGateway::RestApi`` resource creates a REST API. For more information, see [restapi:create](https://docs.aws.amazon.com/apigateway/latest/api/API_CreateRestApi.html) in the *Amazon API Gateway REST API Reference*.
+ /// On January 1, 2016, the Swagger Specification was donated to the [OpenAPI initiative](https://docs.aws.amazon.com/https://www.openapis.org/), becoming the foundation of the OpenAPI Specification.
///
public static Task InvokeAsync(GetRestApiArgs args, InvokeOptions? options = null)
=> global::Pulumi.Deployment.Instance.InvokeAsync("aws-native:apigateway:getRestApi", args ?? new GetRestApiArgs(), options.WithDefaults());
///
- /// Resource Type definition for AWS::ApiGateway::RestApi.
+ /// The ``AWS::ApiGateway::RestApi`` resource creates a REST API. For more information, see [restapi:create](https://docs.aws.amazon.com/apigateway/latest/api/API_CreateRestApi.html) in the *Amazon API Gateway REST API Reference*.
+ /// On January 1, 2016, the Swagger Specification was donated to the [OpenAPI initiative](https://docs.aws.amazon.com/https://www.openapis.org/), becoming the foundation of the OpenAPI Specification.
///
public static Output Invoke(GetRestApiInvokeArgs args, InvokeOptions? options = null)
=> global::Pulumi.Deployment.Instance.Invoke("aws-native:apigateway:getRestApi", args ?? new GetRestApiInvokeArgs(), options.WithDefaults());
@@ -51,16 +53,43 @@ public GetRestApiInvokeArgs()
[OutputType]
public sealed class GetRestApiResult
{
+ ///
+ /// The source of the API key for metering requests according to a usage plan. Valid values are: ``HEADER`` to read the API key from the ``X-API-Key`` header of a request. ``AUTHORIZER`` to read the API key from the ``UsageIdentifierKey`` from a custom authorizer.
+ ///
public readonly string? ApiKeySourceType;
+ ///
+ /// The list of binary media types supported by the RestApi. By default, the RestApi supports only UTF-8-encoded text payloads.
+ ///
public readonly ImmutableArray BinaryMediaTypes;
+ ///
+ /// The description of the RestApi.
+ ///
public readonly string? Description;
+ ///
+ /// Specifies whether clients can invoke your API by using the default ``execute-api`` endpoint. By default, clients can invoke your API with the default ``https://{api_id}.execute-api.{region}.amazonaws.com`` endpoint. To require that clients use a custom domain name to invoke your API, disable the default endpoint
+ ///
public readonly bool? DisableExecuteApiEndpoint;
+ ///
+ /// A list of the endpoint types of the API. Use this property when creating an API. When importing an existing API, specify the endpoint configuration types using the ``Parameters`` property.
+ ///
public readonly Outputs.RestApiEndpointConfiguration? EndpointConfiguration;
+ ///
+ /// A nullable integer that is used to enable compression (with non-negative between 0 and 10485760 (10M) bytes, inclusive) or disable compression (with a null value) on an API. When compression is enabled, compression or decompression is not applied on the payload if the payload size is smaller than this value. Setting it to zero allows compression for any payload size.
+ ///
public readonly int? MinimumCompressionSize;
+ ///
+ /// The name of the RestApi. A name is required if the REST API is not based on an OpenAPI specification.
+ ///
public readonly string? Name;
+ ///
+ /// A policy document that contains the permissions for the ``RestApi`` resource. To set the ARN for the policy, use the ``!Join`` intrinsic function with ``""`` as delimiter and values of ``"execute-api:/"`` and ``"*"``.
+ ///
public readonly object? Policy;
public readonly string? RestApiId;
public readonly string? RootResourceId;
+ ///
+ /// The key-value map of strings. The valid character set is [a-zA-Z+-=._:/]. The tag key can be up to 128 characters and must not start with ``aws:``. The tag value can be up to 256 characters.
+ ///
public readonly ImmutableArray Tags;
[OutputConstructor]
diff --git a/sdk/dotnet/ApiGateway/GetStage.cs b/sdk/dotnet/ApiGateway/GetStage.cs
index 5ce14129f1..5abc327c12 100644
--- a/sdk/dotnet/ApiGateway/GetStage.cs
+++ b/sdk/dotnet/ApiGateway/GetStage.cs
@@ -12,13 +12,13 @@ namespace Pulumi.AwsNative.ApiGateway
public static class GetStage
{
///
- /// Resource Type definition for AWS::ApiGateway::Stage
+ /// The ``AWS::ApiGateway::Stage`` resource creates a stage for a deployment.
///
public static Task InvokeAsync(GetStageArgs args, InvokeOptions? options = null)
=> global::Pulumi.Deployment.Instance.InvokeAsync("aws-native:apigateway:getStage", args ?? new GetStageArgs(), options.WithDefaults());
///
- /// Resource Type definition for AWS::ApiGateway::Stage
+ /// The ``AWS::ApiGateway::Stage`` resource creates a stage for a deployment.
///
public static Output Invoke(GetStageInvokeArgs args, InvokeOptions? options = null)
=> global::Pulumi.Deployment.Instance.Invoke("aws-native:apigateway:getStage", args ?? new GetStageInvokeArgs(), options.WithDefaults());
@@ -28,13 +28,13 @@ public static Output Invoke(GetStageInvokeArgs args, InvokeOptio
public sealed class GetStageArgs : global::Pulumi.InvokeArgs
{
///
- /// The ID of the RestApi resource that you're deploying with this stage.
+ /// The string identifier of the associated RestApi.
///
[Input("restApiId", required: true)]
public string RestApiId { get; set; } = null!;
///
- /// The name of the stage, which API Gateway uses as the first path segment in the invoked Uniform Resource Identifier (URI).
+ /// The name of the stage is the first path segment in the Uniform Resource Identifier (URI) of a call to API Gateway. Stage names can only contain alphanumeric characters, hyphens, and underscores. Maximum length is 128 characters.
///
[Input("stageName", required: true)]
public string StageName { get; set; } = null!;
@@ -48,13 +48,13 @@ public GetStageArgs()
public sealed class GetStageInvokeArgs : global::Pulumi.InvokeArgs
{
///
- /// The ID of the RestApi resource that you're deploying with this stage.
+ /// The string identifier of the associated RestApi.
///
[Input("restApiId", required: true)]
public Input RestApiId { get; set; } = null!;
///
- /// The name of the stage, which API Gateway uses as the first path segment in the invoked Uniform Resource Identifier (URI).
+ /// The name of the stage is the first path segment in the Uniform Resource Identifier (URI) of a call to API Gateway. Stage names can only contain alphanumeric characters, hyphens, and underscores. Maximum length is 128 characters.
///
[Input("stageName", required: true)]
public Input StageName { get; set; } = null!;
@@ -70,51 +70,51 @@ public GetStageInvokeArgs()
public sealed class GetStageResult
{
///
- /// Specifies settings for logging access in this stage.
+ /// Access log settings, including the access log format and access log destination ARN.
///
public readonly Outputs.StageAccessLogSetting? AccessLogSetting;
///
- /// Indicates whether cache clustering is enabled for the stage.
+ /// Specifies whether a cache cluster is enabled for the stage.
///
public readonly bool? CacheClusterEnabled;
///
- /// The stage's cache cluster size.
+ /// The stage's cache capacity in GB. For more information about choosing a cache size, see [Enabling API caching to enhance responsiveness](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-caching.html).
///
public readonly string? CacheClusterSize;
///
- /// Specifies settings for the canary deployment in this stage.
+ /// Settings for the canary deployment in this stage.
///
public readonly Outputs.StageCanarySetting? CanarySetting;
///
- /// The ID of the client certificate that API Gateway uses to call your integration endpoints in the stage.
+ /// The identifier of a client certificate for an API stage.
///
public readonly string? ClientCertificateId;
///
- /// The ID of the deployment that the stage is associated with. This parameter is required to create a stage.
+ /// The identifier of the Deployment that the stage points to.
///
public readonly string? DeploymentId;
///
- /// A description of the stage.
+ /// The stage's description.
///
public readonly string? Description;
///
- /// The version ID of the API documentation snapshot.
+ /// The version of the associated API documentation.
///
public readonly string? DocumentationVersion;
///
- /// Settings for all methods in the stage.
+ /// A map that defines the method settings for a Stage resource. Keys (designated as ``/{method_setting_key`` below) are method paths defined as ``{resource_path}/{http_method}`` for an individual method override, or ``/\*/\*`` for overriding all methods in the stage.
///
public readonly ImmutableArray MethodSettings;
///
- /// An array of arbitrary tags (key-value pairs) to associate with the stage.
+ /// The collection of tags. Each tag element is associated with a given resource.
///
public readonly ImmutableArray Tags;
///
- /// Specifies whether active X-Ray tracing is enabled for this stage.
+ /// Specifies whether active tracing with X-ray is enabled for the Stage.
///
public readonly bool? TracingEnabled;
///
- /// A map (string-to-string map) that defines the stage variables, where the variable name is the key and the variable value is the value.
+ /// A map (string-to-string map) that defines the stage variables, where the variable name is the key and the variable value is the value. Variable names are limited to alphanumeric characters. Values must match the following regular expression: ``[A-Za-z0-9-._~:/?#&=,]+``.
///
public readonly object? Variables;
diff --git a/sdk/dotnet/ApiGateway/GetUsagePlanKey.cs b/sdk/dotnet/ApiGateway/GetUsagePlanKey.cs
index 26e5cf335d..162ca58921 100644
--- a/sdk/dotnet/ApiGateway/GetUsagePlanKey.cs
+++ b/sdk/dotnet/ApiGateway/GetUsagePlanKey.cs
@@ -12,13 +12,13 @@ namespace Pulumi.AwsNative.ApiGateway
public static class GetUsagePlanKey
{
///
- /// Resource Type definition for AWS::ApiGateway::UsagePlanKey
+ /// The ``AWS::ApiGateway::UsagePlanKey`` resource associates an API key with a usage plan. This association determines which users the usage plan is applied to.
///
public static Task InvokeAsync(GetUsagePlanKeyArgs args, InvokeOptions? options = null)
=> global::Pulumi.Deployment.Instance.InvokeAsync("aws-native:apigateway:getUsagePlanKey", args ?? new GetUsagePlanKeyArgs(), options.WithDefaults());
///
- /// Resource Type definition for AWS::ApiGateway::UsagePlanKey
+ /// The ``AWS::ApiGateway::UsagePlanKey`` resource associates an API key with a usage plan. This association determines which users the usage plan is applied to.
///
public static Output Invoke(GetUsagePlanKeyInvokeArgs args, InvokeOptions? options = null)
=> global::Pulumi.Deployment.Instance.Invoke("aws-native:apigateway:getUsagePlanKey", args ?? new GetUsagePlanKeyInvokeArgs(), options.WithDefaults());
diff --git a/sdk/dotnet/ApiGateway/Inputs/DeploymentAccessLogSettingArgs.cs b/sdk/dotnet/ApiGateway/Inputs/DeploymentAccessLogSettingArgs.cs
index 61c8a24191..87f8b7aca7 100644
--- a/sdk/dotnet/ApiGateway/Inputs/DeploymentAccessLogSettingArgs.cs
+++ b/sdk/dotnet/ApiGateway/Inputs/DeploymentAccessLogSettingArgs.cs
@@ -10,16 +10,20 @@
namespace Pulumi.AwsNative.ApiGateway.Inputs
{
+ ///
+ /// The ``AccessLogSetting`` property type specifies settings for logging access in this stage.
+ /// ``AccessLogSetting`` is a property of the [StageDescription](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription.html) property type.
+ ///
public sealed class DeploymentAccessLogSettingArgs : global::Pulumi.ResourceArgs
{
///
- /// The Amazon Resource Name (ARN) of the CloudWatch Logs log group or Kinesis Data Firehose delivery stream to receive access logs. If you specify a Kinesis Data Firehose delivery stream, the stream name must begin with amazon-apigateway-.
+ /// The Amazon Resource Name (ARN) of the CloudWatch Logs log group or Kinesis Data Firehose delivery stream to receive access logs. If you specify a Kinesis Data Firehose delivery stream, the stream name must begin with ``amazon-apigateway-``.
///
[Input("destinationArn")]
public Input? DestinationArn { get; set; }
///
- /// A single line format of the access logs of data, as specified by selected $context variables. The format must include at least $context.requestId.
+ /// A single line format of the access logs of data, as specified by selected $context variables. The format must include at least ``$context.requestId``.
///
[Input("format")]
public Input? Format { get; set; }
diff --git a/sdk/dotnet/ApiGateway/Inputs/DeploymentCanarySettingArgs.cs b/sdk/dotnet/ApiGateway/Inputs/DeploymentCanarySettingArgs.cs
index e93c642324..03923eacea 100644
--- a/sdk/dotnet/ApiGateway/Inputs/DeploymentCanarySettingArgs.cs
+++ b/sdk/dotnet/ApiGateway/Inputs/DeploymentCanarySettingArgs.cs
@@ -10,6 +10,10 @@
namespace Pulumi.AwsNative.ApiGateway.Inputs
{
+ ///
+ /// The ``CanarySetting`` property type specifies settings for the canary deployment in this stage.
+ /// ``CanarySetting`` is a property of the [StageDescription](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription.html) property type.
+ ///
public sealed class DeploymentCanarySettingArgs : global::Pulumi.ResourceArgs
{
///
@@ -19,13 +23,13 @@ public sealed class DeploymentCanarySettingArgs : global::Pulumi.ResourceArgs
public Input? PercentTraffic { get; set; }
///
- /// Stage variables overridden for a canary release deployment, including new stage variables introduced in the canary. These stage variables are represented as a string-to-string map between stage variable names and their values.
+ /// Stage variables overridden for a canary release deployment, including new stage variables introduced in the canary. These stage variables are represented as a string-to-string map between stage variable names and their values.
///
[Input("stageVariableOverrides")]
public Input