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'
)
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.
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'
    }
}

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.

Exceptions

  • AppSync.Client.exceptions.BadRequestException
  • AppSync.Client.exceptions.ConcurrentModificationException
  • AppSync.Client.exceptions.NotFoundException
  • AppSync.Client.exceptions.UnauthorizedException
  • AppSync.Client.exceptions.InternalFailureException