AWS::AppSync::ApiCache - AWS CloudFormation (original) (raw)

The AWS::AppSync::ApiCache resource represents the input of a CreateApiCache operation.

Syntax

To declare this entity in your AWS CloudFormation template, use the following syntax:

JSON

{
  "Type" : "AWS::AppSync::ApiCache",
  "Properties" : {
      "ApiCachingBehavior" : String,
      "ApiId" : String,
      "AtRestEncryptionEnabled" : Boolean,
      "HealthMetricsConfig" : String,
      "TransitEncryptionEnabled" : Boolean,
      "Ttl" : Number,
      "Type" : String
    }
}

YAML

Type: AWS::AppSync::ApiCache
Properties:
  ApiCachingBehavior: String
  ApiId: String
  AtRestEncryptionEnabled: Boolean
  HealthMetricsConfig: String
  TransitEncryptionEnabled: Boolean
  Ttl: Number
  Type: String

Properties

ApiCachingBehavior

Caching behavior.

Required: Yes

Type: String

Update requires: No interruption

ApiId

The GraphQL API ID.

Required: Yes

Type: String

Update requires: Replacement

AtRestEncryptionEnabled

At-rest encryption flag for cache. You cannot update this setting after creation.

Required: No

Type: Boolean

Update requires: No interruption

HealthMetricsConfig

Controls how cache health metrics will be emitted to CloudWatch. Cache health metrics include:

Metrics will be recorded by API ID. You can set the value to ENABLED orDISABLED.

Required: No

Type: String

Update requires: No interruption

TransitEncryptionEnabled

Transit encryption flag when connecting to cache. You cannot update this setting after creation.

Required: No

Type: Boolean

Update requires: No interruption

Ttl

TTL in seconds for cache entries.

Valid values are 1–3,600 seconds.

Required: Yes

Type: Number

Update requires: No interruption

Type

The cache instance type. Valid values are

Historically, instance types were identified by an EC2-style value. As of July 2020, this is deprecated, and the generic identifiers above should be used.

The following legacy instance types are available, but their use is discouraged:

Required: Yes

Type: String

Update requires: No interruption

Examples

ApiCache Creation Example

The following example creates an ApiCache for your GraphQL API.

YAML

Parameters: 
  graphQlApiId: 
    Type: String 
Resources: 
  ApiCache: 
    Type:  AWS::AppSync::ApiCache 
    Properties: 
      ApiId: !Ref graphQlApiId 
      Type: SMALL
      ApiCachingBehavior: FULL_REQUEST_CACHING 
      Ttl: 1200 
      TransitEncryptionEnabled: true
      AtRestEncryptionEnabled: true

JSON

{ 
  "Parameters": { 
    "graphQlApiId": { 
      "Type": "String" 
    } 
  },
  "Resources": { 
    "ApiCache": { 
      "Type": "AWS::AppSync::ApiCache", 
      "Properties": { 
        "ApiId": { "Ref": "graphQlApiId" }, 
        "Type": "SMALL", 
        "ApiCachingBehavior": "FULL_REQUEST_CACHING", 
        "Ttl": 1200, 
        "TransitEncryptionEnabled": true,
        "AtRestEncryptionEnabled": true 
      } 
    } 
  } 
}