## Requirements | Name | Version | |------|---------| | terraform | >= 1.3.0 | | aws | >= 5.0 | ## Providers | Name | Version | |------|---------| | aws | >= 5.0 | | random | n/a | ## Modules No modules. ## Resources | Name | Type | |------|------| | [aws_api_gateway_deployment.apigw-deployment](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/api_gateway_deployment) | resource | | [aws_api_gateway_integration.api-integration](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/api_gateway_integration) | resource | | [aws_api_gateway_integration_response.integration-response](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/api_gateway_integration_response) | resource | | [aws_api_gateway_method.api-method](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/api_gateway_method) | resource | | [aws_api_gateway_method_response.response_200](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/api_gateway_method_response) | resource | | [aws_api_gateway_method_settings.apigw-method-settings](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/api_gateway_method_settings) | resource | | [aws_api_gateway_resource.api-res](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/api_gateway_resource) | resource | | [aws_api_gateway_rest_api.api](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/api_gateway_rest_api) | resource | | [aws_api_gateway_rest_api_policy.api-policy](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/api_gateway_rest_api_policy) | resource | | [aws_api_gateway_stage.apigw-stage](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/api_gateway_stage) | resource | | [aws_api_gateway_vpc_link.api-vpc-link](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/api_gateway_vpc_link) | resource | | [aws_cloudwatch_log_group.lambda-logs](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/cloudwatch_log_group) | resource | | [aws_cloudwatch_log_group.this](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/cloudwatch_log_group) | resource | | [aws_iam_role.lambda-exec-role](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/iam_role) | resource | | [aws_iam_role_policy.this](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/iam_role_policy) | resource | | [aws_lambda_function.function](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/lambda_function) | resource | | [aws_lambda_permission.allow_api_gateway](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/lambda_permission) | resource | | [aws_vpc_endpoint.apigw-vpcep](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/vpc_endpoint) | resource | | [random_id.this](https://registry.terraform.io/providers/hashicorp/random/latest/docs/resources/id) | resource | | [aws_caller_identity.this](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/data-sources/caller_identity) | data source | | [aws_iam_policy_document.api-policy](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/data-sources/iam_policy_document) | data source | | [aws_region.current](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/data-sources/region) | data source | | [aws_vpc.vpc](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/data-sources/vpc) | data source | ## Inputs | Name | Description | Type | Default | Required | |------|-------------|------|---------|:--------:| | apigw-security-group-id | Security group id of apigateway | `string` | n/a | yes | | apigw-subnet-ids | Subnet IDs of apigateway | `list(string)` | n/a | yes | | apigw-type | Type of apigateway: private or regional | `string` | n/a | yes | | apigw-vpc-id | VPC id of apigateway | `string` | n/a | yes | | apigw-vpc-link-target-arns | Target arns for apigateway VPC link | `list(string)` | `[]` | no | | cloudwatchlog-retention | Cloudwatch log group retention days | `number` | `14` | no | | create-vpc-link | Set true to create vpc link for outbound access to specific targets | `bool` | n/a | yes | | cwl-cmk-key-id | CMK arn for cloudwatch logs encryption | `string` | `null` | no | | description | Description of apigateway | `string` | n/a | yes | | lambda-archive-file | Path to lambda zip archive | `string` | n/a | yes | | lambda-main-function-name | Main python file without the .py extension | `string` | n/a | yes | | lambda-runtime-version | Lambda runtime version | `string` | `"python3.12"` | no | | name | Name of apigateway | `string` | n/a | yes | | resources | Apigateway resources (path\_part) |
map(object({
method = string
authorization = string
integration_type = string
content_handling = string
}))
| n/a | yes | | stages | apigateway stages |
map(object({
description = string
variables = map(string)
}))
| n/a | yes | ## Outputs | Name | Description | |------|-------------| | apigw-id | n/a | | apigw-vpc-endpoints | n/a | --- ## Authorship This module was developed by UPDATE_THIS.