AppSync / Client / create_api_cache
create_api_cache#
- AppSync.Client.create_api_cache(**kwargs)#
Creates a cache for the GraphQL API.
See also: AWS API Documentation
Request Syntax
response = client.create_api_cache( apiId='string', ttl=123, transitEncryptionEnabled=True|False, atRestEncryptionEnabled=True|False, apiCachingBehavior='FULL_REQUEST_CACHING'|'PER_RESOLVER_CACHING', type='T2_SMALL'|'T2_MEDIUM'|'R4_LARGE'|'R4_XLARGE'|'R4_2XLARGE'|'R4_4XLARGE'|'R4_8XLARGE'|'SMALL'|'MEDIUM'|'LARGE'|'XLARGE'|'LARGE_2X'|'LARGE_4X'|'LARGE_8X'|'LARGE_12X', healthMetricsConfig='ENABLED'|'DISABLED' )
- Parameters:
apiId (string) –
[REQUIRED]
The GraphQL API ID.
ttl (integer) –
[REQUIRED]
TTL in seconds for cache entries.
Valid values are 1–3,600 seconds.
transitEncryptionEnabled (boolean) – Transit encryption flag when connecting to cache. You cannot update this setting after creation.
atRestEncryptionEnabled (boolean) – At-rest encryption flag for cache. You cannot update this setting after creation.
apiCachingBehavior (string) –
[REQUIRED]
Caching behavior.
FULL_REQUEST_CACHING: All requests are fully cached.
PER_RESOLVER_CACHING: Individual resolvers that you specify are cached.
type (string) –
[REQUIRED]
The cache instance type. Valid values are
SMALL
MEDIUM
LARGE
XLARGE
LARGE_2X
LARGE_4X
LARGE_8X
(not available in all regions)LARGE_12X
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:
T2_SMALL: A t2.small instance type.
T2_MEDIUM: A t2.medium instance type.
R4_LARGE: A r4.large instance type.
R4_XLARGE: A r4.xlarge instance type.
R4_2XLARGE: A r4.2xlarge instance type.
R4_4XLARGE: A r4.4xlarge instance type.
R4_8XLARGE: A r4.8xlarge instance type.
healthMetricsConfig (string) –
Controls how cache health metrics will be emitted to CloudWatch. Cache health metrics include:
NetworkBandwidthOutAllowanceExceeded: The network packets dropped because the throughput exceeded the aggregated bandwidth limit. This is useful for diagnosing bottlenecks in a cache configuration.
EngineCPUUtilization: The CPU utilization (percentage) allocated to the Redis process. This is useful for diagnosing bottlenecks in a cache configuration.
Metrics will be recorded by API ID. You can set the value to
ENABLED
orDISABLED
.
- Return type:
dict
- Returns:
Response Syntax
{ 'apiCache': { 'ttl': 123, 'apiCachingBehavior': 'FULL_REQUEST_CACHING'|'PER_RESOLVER_CACHING', 'transitEncryptionEnabled': True|False, 'atRestEncryptionEnabled': True|False, 'type': 'T2_SMALL'|'T2_MEDIUM'|'R4_LARGE'|'R4_XLARGE'|'R4_2XLARGE'|'R4_4XLARGE'|'R4_8XLARGE'|'SMALL'|'MEDIUM'|'LARGE'|'XLARGE'|'LARGE_2X'|'LARGE_4X'|'LARGE_8X'|'LARGE_12X', 'status': 'AVAILABLE'|'CREATING'|'DELETING'|'MODIFYING'|'FAILED', 'healthMetricsConfig': 'ENABLED'|'DISABLED' } }
Response Structure
(dict) –
Represents the output of a
CreateApiCache
operation.apiCache (dict) –
The
ApiCache
object.ttl (integer) –
TTL in seconds for cache entries.
Valid values are 1–3,600 seconds.
apiCachingBehavior (string) –
Caching behavior.
FULL_REQUEST_CACHING: All requests are fully cached.
PER_RESOLVER_CACHING: Individual resolvers that you specify are cached.
transitEncryptionEnabled (boolean) –
Transit encryption flag when connecting to cache. You cannot update this setting after creation.
atRestEncryptionEnabled (boolean) –
At-rest encryption flag for cache. You cannot update this setting after creation.
type (string) –
The cache instance type. Valid values are
SMALL
MEDIUM
LARGE
XLARGE
LARGE_2X
LARGE_4X
LARGE_8X
(not available in all regions)LARGE_12X
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:
T2_SMALL: A t2.small instance type.
T2_MEDIUM: A t2.medium instance type.
R4_LARGE: A r4.large instance type.
R4_XLARGE: A r4.xlarge instance type.
R4_2XLARGE: A r4.2xlarge instance type.
R4_4XLARGE: A r4.4xlarge instance type.
R4_8XLARGE: A r4.8xlarge instance type.
status (string) –
The cache instance status.
AVAILABLE: The instance is available for use.
CREATING: The instance is currently creating.
DELETING: The instance is currently deleting.
MODIFYING: The instance is currently modifying.
FAILED: The instance has failed creation.
healthMetricsConfig (string) –
Controls how cache health metrics will be emitted to CloudWatch. Cache health metrics include:
NetworkBandwidthOutAllowanceExceeded: The network packets dropped because the throughput exceeded the aggregated bandwidth limit. This is useful for diagnosing bottlenecks in a cache configuration.
EngineCPUUtilization: The CPU utilization (percentage) allocated to the Redis process. This is useful for diagnosing bottlenecks in a cache configuration.
Metrics will be recorded by API ID. You can set the value to
ENABLED
orDISABLED
.
Exceptions
AppSync.Client.exceptions.BadRequestException
AppSync.Client.exceptions.ConcurrentModificationException
AppSync.Client.exceptions.NotFoundException
AppSync.Client.exceptions.UnauthorizedException
AppSync.Client.exceptions.InternalFailureException