### Terraform Usage Commands Source: https://github.com/terraform-aws-modules/terraform-aws-appsync/blob/master/examples/complete/README.md Standard commands to initialize, plan, and apply a Terraform configuration. Ensure you have Terraform installed and configured for AWS access. ```bash terraform init terraform plan terraform apply ``` -------------------------------- ### Terraform Requirements Source: https://github.com/terraform-aws-modules/terraform-aws-appsync/blob/master/examples/complete/README.md Specifies the minimum required versions for Terraform and the AWS provider, along with the random provider. ```APIDOC Terraform Requirements: - terraform: >= 1.0 - aws: >= 5.1 - random: >= 2.0 ``` -------------------------------- ### Terraform Modules Source: https://github.com/terraform-aws-modules/terraform-aws-appsync/blob/master/examples/complete/README.md Details the modules used in the configuration, including the main AWS AppSync module and related modules like ACM. ```APIDOC Terraform Modules: - acm: Source: terraform-aws-modules/acm/aws, Version: ~> 5.0 - appsync: Source: ../.., Version: n/a - disabled: Source: ../.., Version: n/a ``` -------------------------------- ### Terraform Input Variables Source: https://github.com/terraform-aws-modules/terraform-aws-appsync/blob/master/examples/complete/README.md Defines the input variables for the Terraform configuration, including settings for existing ACM certificates, Route 53 domains, and the AWS region. ```APIDOC Terraform Input Variables: - existing_acm_certificate_domain_name: Description: Existing ACM certificate domain name, Type: string, Default: "terraform-aws-modules.modules.tf", Required: no - region: Description: AWS region where resources will be created, Type: string, Default: "eu-west-1", Required: no - route53_domain_name: Description: Existing Route 53 domain name, Type: string, Default: "terraform-aws-modules.modules.tf", Required: no - use_existing_acm_certificate: Description: Whether to use an existing ACM certificate, Type: bool, Default: false, Required: no - use_existing_route53_zone: Description: Whether to use an existing Route 53 zone, Type: bool, Default: true, Required: no ``` -------------------------------- ### Terraform Providers Source: https://github.com/terraform-aws-modules/terraform-aws-appsync/blob/master/examples/complete/README.md Lists the AWS providers, including a specific configuration for the us-east-1 region, and the random provider. ```APIDOC Terraform Providers: - aws: >= 5.1 - aws.us-east-1: >= 5.1 - random: >= 2.0 ``` -------------------------------- ### AppSync API Key Outputs Source: https://github.com/terraform-aws-modules/terraform-aws-appsync/blob/master/examples/complete/README.md Provides details related to API keys generated for the AppSync API. This includes the ID of the API key and the key itself, typically formatted as ApiId:Key. ```APIDOC Output: appsync_api_key_id Description: Map of API Key ID (Formatted as ApiId:Key) Output: appsync_api_key_key Description: Map of API Keys ``` -------------------------------- ### Terraform Resources Source: https://github.com/terraform-aws-modules/terraform-aws-appsync/blob/master/examples/complete/README.md Lists the AWS resources managed by Terraform, such as Cognito User Pools, Route 53 records, and ACM certificates, as well as data sources for identity and region. ```APIDOC Terraform Resources: - aws_cognito_user_pool.this: resource - aws_cognito_user_pool_client.this: resource - aws_route53_record.api: resource - aws_route53_zone.this: resource - random_pet.this: resource - aws_acm_certificate.existing_certificate: data source - aws_caller_identity.current: data source - aws_region.current: data source - aws_route53_zone.this: data source ``` -------------------------------- ### AppSync Domain Configuration Outputs Source: https://github.com/terraform-aws-modules/terraform-aws-appsync/blob/master/examples/complete/README.md Provides information related to custom domain configurations for the AppSync API. This includes the AppSync domain name, the associated Route 53 hosted zone ID, and the specific domain ID. ```APIDOC Output: appsync_domain_hosted_zone_id Description: The ID of your Amazon Route 53 hosted zone Output: appsync_domain_id Description: The Appsync Domain name Output: appsync_domain_name Description: The domain name AppSync provides ``` -------------------------------- ### AppSync Datasource and Resolver Outputs Source: https://github.com/terraform-aws-modules/terraform-aws-appsync/blob/master/examples/complete/README.md Details the Amazon Resource Names (ARNs) for datasources and resolvers configured within the AppSync API. These ARNs are essential for referencing these resources in other AWS services or configurations. ```APIDOC Output: appsync_datasource_arn Description: Map of ARNs of datasources Output: appsync_resolver_arn Description: Map of ARNs of resolvers ``` -------------------------------- ### AppSync GraphQL API Outputs Source: https://github.com/terraform-aws-modules/terraform-aws-appsync/blob/master/examples/complete/README.md Details the core identifiers and network endpoints for the AppSync GraphQL API. This includes the API's ARN, its unique ID, fully qualified domain names (FQDNs), and associated URIs. ```APIDOC Output: appsync_graphql_api_arn Description: ARN of GraphQL API Output: appsync_graphql_api_fqdns Description: Map of FQDNs associated with the API (no protocol and path) Output: appsync_graphql_api_id Description: ID of GraphQL API Output: appsync_graphql_api_uris Description: Map of URIs associated with the API ``` -------------------------------- ### Terraform Requirements and Providers Source: https://github.com/terraform-aws-modules/terraform-aws-appsync/blob/master/README.md Details the minimum required versions for Terraform and the AWS provider. It also lists the providers used by the module, ensuring compatibility and correct setup for the AWS AppSync Terraform module. ```APIDOC Requirements: terraform: >= 1.3.2 aws: >= 5.61.0 Providers: aws: >= 5.61.0 ``` -------------------------------- ### Complete AppSync Configuration Source: https://github.com/terraform-aws-modules/terraform-aws-appsync/blob/master/README.md Demonstrates a complete AWS AppSync API setup using Terraform, including defining the schema, authentication providers (API keys, IAM, OpenID Connect), and various data sources (HTTP, Lambda, DynamoDB, Elasticsearch, OpenSearch, EventBridge, RDS). It also shows how to configure resolvers for specific queries. ```hcl module "appsync" { source = "terraform-aws-modules/appsync/aws" name = "dev-appsync" schema = file("schema.graphql") visibility = "GLOBAL" api_keys = { default = null } additional_authentication_provider = { iam = { authentication_type = "AWS_IAM" } openid_connect_1 = { authentication_type = "OPENID_CONNECT" openid_connect_config = { issuer = "https://www.issuer1.com/" client_id = "client_id1" } } } datasources = { registry_terraform_io = { type = "HTTP" endpoint = "https://registry.terraform.io" } lambda_create_zip = { type = "AWS_LAMBDA" function_arn = "arn:aws:lambda:eu-west-1:135367859850:function:index_1" } dynamodb1 = { type = "AMAZON_DYNAMODB" table_name = "my-table" region = "eu-west-1" } elasticsearch1 = { type = "AMAZON_ELASTICSEARCH" endpoint = "https://search-my-domain.eu-west-1.es.amazonaws.com" region = "eu-west-1" } opensearchservice1 = { type = "AMAZON_OPENSEARCH_SERVICE" endpoint = "https://opensearch-my-domain.eu-west-1.es.amazonaws.com" region = "eu-west-1" } eventbridge1 = { type = "AMAZON_EVENTBRIDGE" event_bus_arn = "arn:aws:events:us-west-1:135367859850:event-bus/eventbridge1" } rds1 = { type = "RELATIONAL_DATABASE" cluster_arn = "arn:aws:rds:us-west-1:135367859850:cluster:rds1" secret_arn = "arn:aws:secretsmanager:us-west-1:135367859850:secret:rds-secret1" database_name = "mydb" schema = "myschema" } } resolvers = { "Query.getZip" = { data_source = "lambda_create_zip" direct_lambda = true } "Query.getModuleFromRegistry" = { data_source = "registry_terraform_io" request_template = file("vtl-templates/request.Query.getModuleFromRegistry.vtl") response_template = file("vtl-templates/response.Query.getModuleFromRegistry.vtl") } } } ``` -------------------------------- ### S3 Bucket Wrapper Usage with Terragrunt Source: https://github.com/terraform-aws-modules/terraform-aws-appsync/blob/master/wrappers/README.md An example of managing multiple S3 buckets within a single Terragrunt configuration file using the S3 bucket wrapper module. It specifies default bucket configurations and individual bucket settings. ```hcl terraform { source = "tfr:///terraform-aws-modules/s3-bucket/aws//wrappers" # Alternative source: # source = "git::git@github.com:terraform-aws-modules/terraform-aws-s3-bucket.git//wrappers?ref=master" } inputs = { defaults = { force_destroy = true attach_elb_log_delivery_policy = true attach_lb_log_delivery_policy = true attach_deny_insecure_transport_policy = true attach_require_latest_tls_policy = true } items = { bucket1 = { bucket = "my-random-bucket-1" } bucket2 = { bucket = "my-random-bucket-2" tags = { Secure = "probably" } } } } ``` -------------------------------- ### AppSync Wrapper Usage with Terragrunt and Terraform Source: https://github.com/terraform-aws-modules/terraform-aws-appsync/blob/master/wrappers/README.md Demonstrates how to configure the AppSync wrapper module using Terragrunt and Terraform. It shows the `source` attribute and the `inputs` structure for defining default values and specific items. ```hcl terraform { source = "tfr:///terraform-aws-modules/appsync/aws//wrappers" # Alternative source: # source = "git::git@github.com:terraform-aws-modules/terraform-aws-appsync.git//wrappers?ref=master" } inputs = { defaults = { # Default values create = true tags = { Terraform = "true" Environment = "dev" } } items = { my-item = { # omitted... can be any argument supported by the module } my-second-item = { # omitted... can be any argument supported by the module } # omitted... } } ``` ```hcl module "wrapper" { source = "terraform-aws-modules/appsync/aws//wrappers" defaults = { # Default values create = true tags = { Terraform = "true" Environment = "dev" } } items = { my-item = { # omitted... can be any argument supported by the module } my-second-item = { # omitted... can be any argument supported by the module } # omitted... } } ``` -------------------------------- ### Configure OpenID Connect Source: https://github.com/terraform-aws-modules/terraform-aws-appsync/blob/master/README.md Nested argument containing configuration details for an OpenID Connect authorizer. ```APIDOC openid_connect_config: Type: map(string) Description: Nested argument containing OpenID Connect configuration. Default: {} ``` -------------------------------- ### AppSync GraphQL API Input Variables Source: https://github.com/terraform-aws-modules/terraform-aws-appsync/blob/master/README.md This section details the input variables for configuring an AWS AppSync GraphQL API using Terraform. It covers authentication methods, caching settings, data source configurations, domain name management, and logging options. ```terraform variable "additional_authentication_provider" { description = "One or more additional authentication providers for the GraphqlApi." type = any default = {} } ``` ```terraform variable "api_keys" { description = "Map of API keys to create" type = map(string) default = {} } ``` ```terraform variable "authentication_type" { description = "The authentication type to use by GraphQL API" type = string default = "API_KEY" } ``` ```terraform variable "cache_at_rest_encryption_enabled" { description = "At-rest encryption flag for cache." type = bool default = false } ``` ```terraform variable "cache_transit_encryption_enabled" { description = "Transit encryption flag when connecting to cache." type = bool default = false } ``` ```terraform variable "cache_ttl" { description = "TTL in seconds for cache entries" type = number default = 1 } ``` ```terraform variable "cache_type" { description = "The cache instance type." type = string default = "SMALL" } ``` ```terraform variable "caching_behavior" { description = "Caching behavior." type = string default = "FULL_REQUEST_CACHING" } ``` ```terraform variable "caching_enabled" { description = "Whether caching with Elasticache is enabled." type = bool default = false } ``` ```terraform variable "certificate_arn" { description = "The Amazon Resource Name (ARN) of the certificate." type = string default = "" } ``` ```terraform variable "create_graphql_api" { description = "Whether to create GraphQL API" type = bool default = true } ``` ```terraform variable "create_logs_role" { description = "Whether to create service role for Cloudwatch logs" type = bool default = true } ``` ```terraform variable "datasources" { description = "Map of datasources to create" type = any default = {} } ``` ```terraform variable "direct_lambda_request_template" { description = "VTL request template for the direct lambda integrations" type = string default = "{ \"version\" : \"2017-02-28\", \"operation\": \"Invoke\", \"payload\": { \"arguments\": $util.toJson($ctx.arguments), \"identity\": $util.toJson($ctx.identity), \"source\": $util.toJson($ctx.source), \"request\": $util.toJson($ctx.request), \"prev\": $util.toJson($ctx.prev), \"info\": { \"selectionSetList\": $util.toJson($ctx.info.selectionSetList), \"selectionSetGraphQL\": $util.toJson($ctx.info.selectionSetGraphQL), \"parentTypeName\": $util.toJson($ctx.info.parentTypeName), \"fieldName\": $util.toJson($ctx.info.fieldName), \"variables\": $util.toJson($ctx.info.variables) }, \"stash\": $util.toJson($ctx.stash) } } " } ``` ```terraform variable "direct_lambda_response_template" { description = "VTL response template for the direct lambda integrations" type = string default = "$util.toJson($ctx.result)\n" } ``` ```terraform variable "domain_name" { description = "The domain name that AppSync gets associated with." type = string default = "" } ``` ```terraform variable "domain_name_association_enabled" { description = "Whether to enable domain name association on GraphQL API" type = bool default = false } ``` ```terraform variable "domain_name_description" { description = "A description of the Domain Name." type = string default = null } ``` ```terraform variable "dynamodb_allowed_actions" { description = "List of allowed IAM actions for datasources type AMAZON_DYNAMODB" type = list(string) default = [ "dynamodb:GetItem", "dynamodb:PutItem", "dynamodb:DeleteItem", "dynamodb:UpdateItem", "dynamodb:Query", "dynamodb:Scan", "dynamodb:BatchGetItem", "dynamodb:BatchWriteItem" ] } ``` ```terraform variable "elasticsearch_allowed_actions" { description = "List of allowed IAM actions for datasources type AMAZON_ELASTICSEARCH" type = list(string) default = [ "es:ESHttpDelete", "es:ESHttpHead", "es:ESHttpGet", "es:ESHttpPost", "es:ESHttpPut" ] } ``` ```terraform variable "enhanced_metrics_config" { description = "Nested argument containing Lambda Ehanced metrics configuration." type = map(string) default = {} } ``` -------------------------------- ### Terraform Resource Migration Strategy Source: https://github.com/terraform-aws-modules/terraform-aws-appsync/blob/master/README.md Provides a strategy for renaming data source keys in Terraform, which requires a phased approach using `-target` flags. This ensures that resources are updated correctly and orphaned resources are cleaned up, especially when changing keys in both the `datasources` and `resolvers` configurations. ```shell # Create new resources and update resolver $ terraform apply -target="module.appsync.aws_appsync_resolver.this[\"Post.id\"]" -target="module.appsync.aws_appsync_datasource.this[\"lambda-new\"]" -target="module.appsync.aws_iam_role.service_role[\"lambda-new\"]" -target="module.appsync.aws_iam_role_policy.this[\"lambda-new\"]" # Delete orphan resources ("lambda-old") $ terraform apply ``` -------------------------------- ### Define Functions Source: https://github.com/terraform-aws-modules/terraform-aws-appsync/blob/master/README.md A map of functions to be created within the AppSync API. ```APIDOC functions: Type: any Description: Map of functions to create Default: {} ``` -------------------------------- ### Configure Lambda Authorizer Source: https://github.com/terraform-aws-modules/terraform-aws-appsync/blob/master/README.md Nested argument containing configuration details for a Lambda authorizer. ```APIDOC lambda_authorizer_config: Type: map(string) Description: Nested argument containing Lambda authorizer configuration. Default: {} ``` -------------------------------- ### AppSync Module Output Values Source: https://github.com/terraform-aws-modules/terraform-aws-appsync/blob/master/README.md Lists the output values provided by the Terraform AWS AppSync module, including ARNs, IDs, domain names, and API keys for various AppSync resources like GraphQL APIs, datasources, and functions. ```APIDOC appsync_api_key_id: description: Map of API Key ID (Formatted as ApiId:Key) type: map(string) appsync_api_key_key: description: Map of API Keys type: map(string) appsync_datasource_arn: description: Map of ARNs of datasources type: map(string) appsync_domain_hosted_zone_id: description: The ID of your Amazon Route 53 hosted zone. type: string appsync_domain_id: description: The Appsync Domain Name. type: string appsync_domain_name: description: The domain name that AppSync provides. type: string appsync_function_arn: description: Map of ARNs of functions type: map(string) appsync_function_function_id: description: Map of function IDs of functions type: map(string) appsync_function_id: description: Map of IDs of functions type: map(string) appsync_graphql_api_arn: description: ARN of GraphQL API type: string appsync_graphql_api_fqdns: description: Map of FQDNs associated with the API (no protocol and path) type: map(string) appsync_graphql_api_id: description: ID of GraphQL API type: string appsync_graphql_api_uris: description: Map of URIs associated with the API type: map(string) appsync_resolver_arn: description: Map of ARNs of resolvers type: map(string) ``` -------------------------------- ### Set GraphQL API Tags Source: https://github.com/terraform-aws-modules/terraform-aws-appsync/blob/master/README.md A map of tags to be applied to the GraphQL API resource. ```APIDOC graphql_api_tags: Type: map(string) Description: Map of tags to add to GraphQL API Default: {} ``` -------------------------------- ### Define Resolvers Source: https://github.com/terraform-aws-modules/terraform-aws-appsync/blob/master/README.md A map of resolvers to be created for the AppSync API. ```APIDOC resolvers: Type: any Description: Map of resolvers to create Default: {} ``` -------------------------------- ### Configure Relational Database Allowed Actions Source: https://github.com/terraform-aws-modules/terraform-aws-appsync/blob/master/README.md Specifies the list of allowed IAM actions for datasources of type RELATIONAL_DATABASE. ```APIDOC relational_database_allowed_actions: Type: list(string) Description: List of allowed IAM actions for datasources type RELATIONAL_DATABASE Default: ["rds-data:BatchExecuteStatement", "rds-data:BeginTransaction", "rds-data:CommitTransaction", "rds-data:ExecuteStatement", "rds-data:RollbackTransaction"] ``` -------------------------------- ### Configure OpenSearchService Allowed Actions Source: https://github.com/terraform-aws-modules/terraform-aws-appsync/blob/master/README.md Specifies the list of allowed IAM actions for datasources of type AMAZON_OPENSEARCH_SERVICE. ```APIDOC opensearchservice_allowed_actions: Type: list(string) Description: List of allowed IAM actions for datasources type AMAZON_OPENSEARCH_SERVICE Default: ["es:ESHttpDelete", "es:ESHttpHead", "es:ESHttpGet", "es:ESHttpPost", "es:ESHttpPut"] ``` -------------------------------- ### Configure Verbose Content Exclusion Source: https://github.com/terraform-aws-modules/terraform-aws-appsync/blob/master/README.md When set to TRUE, excludes verbose sections like headers, context, and evaluated mapping templates from logs, regardless of the logging level. ```APIDOC log_exclude_verbose_content: Type: bool Description: Set to TRUE to exclude sections that contain information such as headers, context, and evaluated mapping templates, regardless of logging level. Default: false ``` -------------------------------- ### Conditional AppSync API Creation Source: https://github.com/terraform-aws-modules/terraform-aws-appsync/blob/master/README.md Illustrates how to conditionally create AWS AppSync resources by setting the `create_graphql_api` variable to `false`. This is a workaround for Terraform versions prior to 0.12 that did not support `count` within module blocks. ```hcl module "appsync" { source = "terraform-aws-modules/appsync/aws" create_graphql_api = false # ... omitted } ``` -------------------------------- ### Configure Lambda Allowed Actions Source: https://github.com/terraform-aws-modules/terraform-aws-appsync/blob/master/README.md Specifies the list of allowed IAM actions for datasources of type AWS_LAMBDA. ```APIDOC lambda_allowed_actions: Type: list(string) Description: List of allowed IAM actions for datasources type AWS_LAMBDA Default: ["lambda:invokeFunction"] ``` -------------------------------- ### AppSync Module Input Variables Source: https://github.com/terraform-aws-modules/terraform-aws-appsync/blob/master/README.md Defines the input variables for the Terraform AWS AppSync module, specifying configuration options for API visibility, datasources, Cognito user pools, and more. These variables control the behavior and settings of the AppSync API. ```APIDOC secrets_manager_allowed_actions: description: List of allowed IAM actions for secrets manager datasources type RELATIONAL_DATABASE type: list(string) default: ["secretsmanager:GetSecretValue"] tags: description: Map of tags to add to all GraphQL resources created by this module type: map(string) default: {} user_pool_config: description: The Amazon Cognito User Pool configuration. type: map(string) default: {} visibility: description: The API visibility. Valid values: GLOBAL, PRIVATE. type: string default: null xray_enabled: description: Whether tracing with X-ray is enabled. type: bool default: false ``` -------------------------------- ### Set CloudWatch Logs Role Description Source: https://github.com/terraform-aws-modules/terraform-aws-appsync/blob/master/README.md Provides a description for the IAM role that will be created for Cloudwatch logs. ```APIDOC logs_role_description: Type: string Description: Description for the IAM role to create for Cloudwatch logs Default: null ``` -------------------------------- ### Set GraphQL Schema Source: https://github.com/terraform-aws-modules/terraform-aws-appsync/blob/master/README.md The schema definition for the GraphQL API, written in GraphQL schema language. Note that Terraform cannot perform drift detection on this configuration. ```APIDOC schema: Type: string Description: The schema definition, in GraphQL schema language format. Terraform cannot perform drift detection of this configuration. Default: "" ``` -------------------------------- ### Configure EventBridge Allowed Actions Source: https://github.com/terraform-aws-modules/terraform-aws-appsync/blob/master/README.md Specifies the list of allowed IAM actions for datasources of type AMAZON_EVENTBRIDGE. ```APIDOC eventbridge_allowed_actions: Type: list(string) Description: List of allowed IAM actions for datasources type AMAZON_EVENTBRIDGE Default: ["events:PutEvents"] ``` -------------------------------- ### Enable CloudWatch Logging Source: https://github.com/terraform-aws-modules/terraform-aws-appsync/blob/master/README.md A boolean flag to enable or disable CloudWatch logging for the GraphQL API. ```APIDOC logging_enabled: Type: bool Description: Whether to enable Cloudwatch logging on GraphQL API Default: false ``` -------------------------------- ### Set GraphQL API Name Source: https://github.com/terraform-aws-modules/terraform-aws-appsync/blob/master/README.md The name for the GraphQL API resource. ```APIDOC name: Type: string Description: Name of GraphQL API Default: "" ``` -------------------------------- ### Specify IAM Permissions Boundary Source: https://github.com/terraform-aws-modules/terraform-aws-appsync/blob/master/README.md The ARN for an IAM permissions boundary to apply to the created IAM roles. ```APIDOC iam_permissions_boundary: Type: string Description: ARN for iam permissions boundary Default: null ``` -------------------------------- ### Set CloudWatch Logs Role Tags Source: https://github.com/terraform-aws-modules/terraform-aws-appsync/blob/master/README.md A map of tags to be applied to the IAM role created for Cloudwatch logs. ```APIDOC logs_role_tags: Type: map(string) Description: Map of tags to add to Cloudwatch logs IAM role Default: {} ``` -------------------------------- ### Set Resolver Caching TTL Source: https://github.com/terraform-aws-modules/terraform-aws-appsync/blob/master/README.md The default Time To Live (TTL) for resolvers when caching is enabled. ```APIDOC resolver_caching_ttl: Type: number Description: Default caching TTL for resolvers when caching is enabled Default: 60 ``` -------------------------------- ### Set Query Depth Limit Source: https://github.com/terraform-aws-modules/terraform-aws-appsync/blob/master/README.md Defines the maximum depth a GraphQL query can have in a single request. ```APIDOC query_depth_limit: Type: number Description: The maximum depth a query can have in a single request. Default: null ``` -------------------------------- ### Set Resolver Count Limit Source: https://github.com/terraform-aws-modules/terraform-aws-appsync/blob/master/README.md Defines the maximum number of resolvers that can be invoked within a single GraphQL request. ```APIDOC resolver_count_limit: Type: number Description: The maximum number of resolvers that can be invoked in a single request. Default: null ``` -------------------------------- ### Configure Introspection Source: https://github.com/terraform-aws-modules/terraform-aws-appsync/blob/master/README.md Determines whether introspection of the GraphQL API is enabled or disabled. ```APIDOC introspection_config: Type: string Description: Whether to enable or disable introspection of the GraphQL API. Default: null ``` -------------------------------- ### Set Field Logging Level Source: https://github.com/terraform-aws-modules/terraform-aws-appsync/blob/master/README.md Configures the logging level for individual fields. Valid values are ALL, ERROR, and NONE. ```APIDOC log_field_log_level: Type: string Description: Field logging level. Valid values: ALL, ERROR, NONE. Default: null ``` -------------------------------- ### Set CloudWatch Logs Role Name Source: https://github.com/terraform-aws-modules/terraform-aws-appsync/blob/master/README.md Specifies the name for the IAM role that will be created to handle Cloudwatch logs. ```APIDOC logs_role_name: Type: string Description: Name of IAM role to create for Cloudwatch logs Default: null ``` -------------------------------- ### Set CloudWatch Logs Role ARN Source: https://github.com/terraform-aws-modules/terraform-aws-appsync/blob/master/README.md The ARN of the service role that AWS AppSync will assume to publish logs to Amazon CloudWatch logs. ```APIDOC log_cloudwatch_logs_role_arn: Type: string Description: Amazon Resource Name of the service role that AWS AppSync will assume to publish to Amazon CloudWatch logs in your account. Default: null ``` === COMPLETE CONTENT === This response contains all available snippets from this library. No additional content exists. Do not make further requests.