api-gateway
cloudposse/api-gateway/aws
Terraform module to provision API Gatway resources. The root module creates an API Gateway REST API along with configuring tracing, logging, and metrics. The module also consists of the following submodules: - account-settings - to provision account-level settings for logging and metrics for API Gateway > [!TIP] > #### 👽 Use Atmos with Terraform > Cloud Posse uses atmos to easily orchestrate multiple environments using Terraform. > Works with Github Actions, Atlantis, or Spacelift. > > > Watch demo of using Atmos with Terraform > > Example of running atmos to manage infrastructure from our Quick Start tutorial. > Introduction A set of modules for configuring an API Gateway Usage Setup the account-level settings for logging and metrics for API Gateway: ``hcl module "api_gateway_account_sett
| Name | Type | Description | Default |
|---|---|---|---|
| endpoint_type | string | The type of the endpoint. One of - PUBLIC, PRIVATE, REGIONAL | "REGIONAL" |
| throttling_burst_limit | number | The API request burst limit | -1 |
| throttling_rate_limit | number | The API request rate limit | -1 |
| context | any | Single object for setting entire context at once. See description of individual | {
"additional_tag_map": {},
"attribu |
| enabled | bool | Set to false to prevent the module from creating any resources | null |
| environment | string | ID element. Usually used for region e.g. 'uw2', 'us-west-2', OR role 'prod', 'st | null |
| labels_as_tags | set(string) | Set of labels (ID elements) to include as tags in the `tags` output. Default is | [
"default"
] |
| logging_level | string | The logging level of the API. One of - OFF, INFO, ERROR | "INFO" |
| metrics_enabled | bool | A flag to indicate whether to enable metrics collection. | false |
| private_link_target_arns | list(string) | A list of target ARNs for VPC Private Link | [] |
| namespace | string | ID element. Usually an abbreviation of your organization name, e.g. 'eg' or 'cp' | null |
| name | string | ID element. Usually the component or solution name, e.g. 'app' or 'jenkins'. Thi | null |
| delimiter | string | Delimiter to be used between ID elements. Defaults to `-` (hyphen). Set to `""` | null |
| label_value_case | string | Controls the letter case of ID elements (labels) as included in `id`, set as tag | null |
| stage_name | string | The name of the stage | "" |
| attributes | list(string) | ID element. Additional attributes (e.g. `workers` or `cluster`) to add to `id`, | [] |
| tags | map(string) | Additional tags (e.g. `{'BusinessUnit': 'XYZ'}`). Neither the tag keys nor the t | {} |
| id_length_limit | number | Limit `id` to this many characters (minimum 6). Set to `0` for unlimited length. | null |
| label_key_case | string | Controls the letter case of the `tags` keys (label names) for tags generated by | null |
| vpc_endpoints | list(string) | List of VPC Endpoint IDs to attach to the API Gateway | null |
arn — The ARN of the REST APIinvoke_url — The URL to invoke the REST APIstage_arn — The ARN of the gateway stagelog_group_name — The ARN of the Cloudwatch log groupid — The ID of the REST APIroot_resource_id — The resource ID of the REST API's rootcreated_date — The date the REST API was createdexecution_arn — The execution ARN part to be used in lambda_permission's source_arn when allowing API Gateway to