ApiCache class

Provides an AppSync API Cache.

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";

const example = new aws.appsync.GraphQLApi("example", {
    authenticationType: "API_KEY",
    name: "example",
});
const exampleApiCache = new aws.appsync.ApiCache("example", {
    apiId: example.id,
    apiCachingBehavior: "FULL_REQUEST_CACHING",
    type: "LARGE",
    ttl: 900,
});
import pulumi
import pulumi_aws as aws

example = aws.appsync.GraphQLApi("example",
    authentication_type="API_KEY",
    name="example")
example_api_cache = aws.appsync.ApiCache("example",
    api_id=example.id,
    api_caching_behavior="FULL_REQUEST_CACHING",
    type="LARGE",
    ttl=900)
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Aws = Pulumi.Aws;

return await Deployment.RunAsync(() =>
{
    var example = new Aws.AppSync.GraphQLApi("example", new()
    {
        AuthenticationType = "API_KEY",
        Name = "example",
    });

    var exampleApiCache = new Aws.AppSync.ApiCache("example", new()
    {
        ApiId = example.Id,
        ApiCachingBehavior = "FULL_REQUEST_CACHING",
        Type = "LARGE",
        Ttl = 900,
    });

});
package main

import (
	"github.com/pulumi/pulumi-aws/sdk/v7/go/aws/appsync"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		example, err := appsync.NewGraphQLApi(ctx, "example", &appsync.GraphQLApiArgs{
			AuthenticationType: pulumi.String("API_KEY"),
			Name:               pulumi.String("example"),
		})
		if err != nil {
			return err
		}
		_, err = appsync.NewApiCache(ctx, "example", &appsync.ApiCacheArgs{
			ApiId:              example.ID().ToIDOutput().ToStringOutput(),
			ApiCachingBehavior: pulumi.String("FULL_REQUEST_CACHING"),
			Type:               pulumi.String("LARGE"),
			Ttl:                pulumi.Int(900),
		})
		if err != nil {
			return err
		}
		return nil
	})
}
pulumi {
  required_providers {
    aws = {
      source = "pulumi/aws"
    }
  }
}

resource "aws_appsync_graphqlapi" "example" {
  authentication_type = "API_KEY"
  name                = "example"
}
resource "aws_appsync_apicache" "example" {
  api_id               = aws_appsync_graphqlapi.example.id
  api_caching_behavior = "FULL_REQUEST_CACHING"
  type                 = "LARGE"
  ttl                  = 900
}
package generated_program;

import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.appsync.GraphQLApi;
import com.pulumi.aws.appsync.GraphQLApiArgs;
import com.pulumi.aws.appsync.ApiCache;
import com.pulumi.aws.appsync.ApiCacheArgs;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;

public class App {
    public static void main(String[] args) {
        Pulumi.run(App::stack);
    }

    public static void stack(Context ctx) {
        var example = new GraphQLApi("example", GraphQLApiArgs.builder()
            .authenticationType("API_KEY")
            .name("example")
            .build());

        var exampleApiCache = new ApiCache("exampleApiCache", ApiCacheArgs.builder()
            .apiId(example.id())
            .apiCachingBehavior("FULL_REQUEST_CACHING")
            .type("LARGE")
            .ttl(900)
            .build());

    }
}
resources:
  example:
    type: aws:appsync:GraphQLApi
    properties:
      authenticationType: API_KEY
      name: example
  exampleApiCache:
    type: aws:appsync:ApiCache
    name: example
    properties:
      apiId: ${example.id}
      apiCachingBehavior: FULL_REQUEST_CACHING
      type: LARGE
      ttl: 900

Import

Using pulumi import, import aws.appsync.ApiCache using the AppSync API ID. For example:

$ pulumi import aws:appsync/apiCache:ApiCache example xxxxx

Constructors

ApiCache(String name, {ApiCacheArgs? args, CustomResourceOptions? options})
Creates a new ApiCache. name The Pulumi resource name. args Arguments used to configure this ApiCache. The set of arguments for ApiCache. options Resource options controlling this resource's behavior.
ApiCache.reference(String urn)
Creates a typed reference to an existing ApiCache resource.

Properties

apiCachingBehavior ↔ Output<String>
Caching behavior. Valid values are FULL_REQUEST_CACHING and PER_RESOLVER_CACHING.
latefinal
apiId ↔ Output<String>
GraphQL API ID.
latefinal
atRestEncryptionEnabled ↔ Output<bool>
At-rest encryption flag for cache. You cannot update this setting after creation.
latefinal
childResources → Set<Resource>
finalinherited
completionSources ↔ Map<String, IOutputCompletionSource>
latefinalinherited
hashCode → int
The hash code for this object.
no setterinherited
id ↔ Output<String>
getter/setter pairinherited
isCustom → bool
Returns whether this resource is provider-managed.
no setterinherited
isProtected → bool
Returns whether this resource is protected from deletion.
no setterinherited
isRemote → bool
Whether this resource is registered as remote.
no setterinherited
isResourceReference → bool
Whether this instance represents a resource value returned over RPC.
finalinherited
region ↔ Output<String>
Region where this resource will be managed. Defaults to the Region set in the provider configuration.
latefinal
resourceTransforms → List<ResourceTransform>
Inherited/explicit async transforms.
no setterinherited
runtimeType → Type
A representation of the runtime type of the object.
no setterinherited
transformations → List<ResourceTransformation>
Inherited/explicit legacy transformations.
no setterinherited
transitEncryptionEnabled ↔ Output<bool>
Transit encryption flag when connecting to cache. You cannot update this setting after creation.
latefinal
ttl ↔ Output<int>
TTL in seconds for cache entries.
latefinal
type ↔ Output<String>
Cache instance type. Valid values are SMALL, MEDIUM, LARGE, XLARGE, LARGE_2X, LARGE_4X, LARGE_8X, LARGE_12X, T2_SMALL, T2_MEDIUM, R4_LARGE, R4_XLARGE, R4_2XLARGE, R4_4XLARGE, R4_8XLARGE.
latefinal
urn ↔ Output<String>
latefinalinherited

Methods

failId(Object error) → void
Completes this resource ID with an error when registration fails.
inherited
failOutputs(Object error) → void
Completes all output properties with error.
inherited
failUrn(Object error) → void
Completes this resource URN with an error when registration fails.
inherited
getProvider(String moduleMember) → ProviderResource?
Returns provider for moduleMember's package, if configured.
inherited
getResourceName() → String
Returns this resource's logical name.
inherited
getResourceType() → String
Returns this resource's Pulumi type token.
inherited
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
registerOutput<T>(String propertyName, {Object? decoder(Object?)?, bool isSecret = false}) → Output<T>
Registers a dynamic output property for this resource.
inherited
resolveId(String? value, {required bool isKnown}) → void
Resolves the provider-assigned ID for this resource.
inherited
resolveOutputs(Struct outputs) → void
Resolves all output properties from a monitor response payload.
inherited
resolveUrn(String value) → void
Resolves this resource's URN once assigned by the engine.
inherited
serializeProperties(Map<String, dynamic> properties) → Future<Struct>
Serializes resource properties for RPC transmission.
inherited
toString() → String
A string representation of this object.
inherited

Operators

operator ==(Object other) → bool
The equality operator.
inherited

Static Methods

get(String name, Input<String> id, {ApiCacheState? state, CustomResourceOptions? options}) → ApiCache
Gets an existing ApiCache resource's state with the given name and id.