tencent cloud

Feedback

CreateNatGateway

Last updated: 2024-07-10 16:17:13

    1. API Description

    Domain name for API request: vpc.tencentcloudapi.com.

    This API is used to create a NAT Gateway.
    Before taking actions on a NAT gateway, ensure that it has been successfully created, namely, the State field in the response of the DescribeNatGateway API is AVAILABLE.

    A maximum of 100 requests can be initiated per second for this API.

    We recommend you to use API Explorer
    Try it
    API Explorer provides a range of capabilities, including online call, signature authentication, SDK code generation, and API quick search. It enables you to view the request, response, and auto-generated examples.

    2. Input Parameters

    The following request parameter list only provides API request parameters and some common parameters. For the complete common parameter list, see Common Request Parameters.

    Parameter Name Required Type Description
    Action Yes String Common Params. The value used for this API: CreateNatGateway.
    Version Yes String Common Params. The value used for this API: 2017-03-12.
    Region No String Common Params. This parameter is not required for this API.
    NatGatewayName Yes String NAT gateway name
    VpcId Yes String The ID of the VPC instance, which can be obtained from the VpcId field in response of the DescribeVpcs API.
    InternetMaxBandwidthOut No Integer The maximum outbound bandwidth of the NAT gateway (unit: Mbps). Supported parameter values: 20, 50, 100, 200, 500, 1000, 2000, 5000. Default: 100.
    MaxConcurrentConnection No Integer The concurrent connection cap of the NAT gateway. Values: 1000000, 3000000, 10000000. The default value is 1000000.
    AddressCount No Integer The number of EIPs that you want to apply for. Either AddressCount or PublicIpAddresses must be passed in.
    PublicIpAddresses.N No Array of String The EIP array bound to the NAT gateway. Either AddressCount or PublicIpAddresses must be passed in.
    Zone No String The availability zone, such as ap-guangzhou-1.
    Tags.N No Array of Tag Bound tags, such as [{"Key": "city", "Value": "shanghai"}]
    SubnetId No String Subnet of the NAT gateway
    StockPublicIpAddressesBandwidthOut No Integer The bandwidth size (in Mbps) of the EIP bound to the NAT gateway, which defaults to the maximum value applicable for the current user type.
    PublicIpAddressesBandwidthOut No Integer The size of the public network IP bandwidth to be applied for (in Mbps), which defaults to the maximum value applicable for the current user type.
    PublicIpFromSameZone No Boolean Whether the public IP and the NAT gateway must be in the same availability zone. Valid values: true and false. This parameter is valid only when Zone is specified.
    NatProductVersion No Integer

    3. Output Parameters

    Parameter Name Type Description
    NatGatewaySet Array of NatGateway NAT gateway object array.
    TotalCount Integer The number of eligible NAT gateway objects.
    RequestId String The unique request ID, generated by the server, will be returned for every request (if the request fails to reach the server for other reasons, the request will not obtain a RequestId). RequestId is required for locating a problem.

    4. Example

    Example1 Creating a NAT gateway

    This example shows you how to create a classic NAT gateway and get an auto-assigned EIP.

    Input Example

    POST / HTTP/1.1
    Host: vpc.tencentcloudapi.com
    Content-Type: application/json
    X-TC-Action: CreateNatGateway
    <Common request parameters>
    
    {
        "VpcId": "vpc-abcdefgh",
        "PublicIpAddresses": [
            "139.199.232.119"
        ],
        "MaxConcurrentConnection": "1000000",
        "Tags": [
            {
                "Value": "shanghai",
                "Key": "city"
            }
        ],
        "InternetMaxBandwidthOut": "10",
        "NatGatewayName": "test_name",
        "AddressCount": "1"
    }
    

    Output Example

    {
        "Response": {
            "NatGatewaySet": [
                {
                    "NatGatewayId": "nat-cqbn23ju",
                    "NatGatewayName": "11111",
                    "VpcId": "vpc-qi4ja3sx",
                    "CreatedTime": "2019-07-16 09:40:00",
                    "State": "AVAILABLE",
                    "NetworkState": "AVAILABLE",
                    "InternetMaxBandwidthOut": 10,
                    "MaxConcurrentConnection": 1000000,
                    "SecurityGroupSet": [],
                    "PublicIpAddressSet": [
                        {
                            "AddressId": "eip-9uw5fwsu",
                            "PublicIpAddress": "139.199.232.119",
                            "IsBlocked": false
                        },
                        {
                            "AddressId": "eip-9uw5fsss",
                            "PublicIpAddress": "139.199.232.221",
                            "IsBlocked": false
                        }
                    ],
                    "DestinationIpPortTranslationNatRuleSet": [],
                    "DirectConnectGatewayIds": [],
                    "Zone": "ap-guangzhou-2",
                    "ExclusiveGatewayBandwidth": 1,
                    "IsExclusive": true,
                    "RestrictState": "NORMAL",
                    "SourceIpTranslationNatRuleSet": [],
                    "SubnetId": "1215354",
                    "TagSet": [
                        {
                            "Key": "city",
                            "Value": "shanghai"
                        }
                    ]
                }
            ],
            "TotalCount": 1,
            "RequestId": "6f2a42cf-2905-4fa5-af49-0f01612550de"
        }
    }
    

    Example2 Creating a standard NAT gateway

    This example shows you how to create a standard NAT gateway and get an auto-assigned EIP.

    Input Example

    POST / HTTP/1.1
    Host: vpc.tencentcloudapi.com
    Content-Type: application/json
    X-TC-Action: CreateNatGateway
    <Common request parameters>
    
    {
        "SubnetId": "subnet-q1b8fsg",
        "AddressCount": "1",
        "NatGatewayName": "xiaooliang_test",
        "VpcId": "vpc-bohigpb7"
    }
    

    Output Example

    {
        "Response": {
            "NatGatewaySet": [
                {
                    "NatGatewayId": "nat-o49t53q2",
                    "NatGatewayName": "xiaooliang_test",
                    "VpcId": "vpc-bohigpb7",
                    "State": "PENDING",
                    "NetworkState": "AVAILABLE",
                    "InternetMaxBandwidthOut": 100,
                    "MaxConcurrentConnection": 1000000,
                    "PublicIpAddressSet": [],
                    "DestinationIpPortTranslationNatRuleSet": [],
                    "CreatedTime": "0000-00-00 00:00:00",
                    "Zone": "",
                    "TagSet": [],
                    "DirectConnectGatewayIds": [],
                    "SubnetId": "subnet-q1b8fsgu",
                    "SecurityGroupSet": [],
                    "SourceIpTranslationNatRuleSet": [],
                    "IsExclusive": false,
                    "RestrictState": "NORMAL",
                    "ExclusiveGatewayBandwidth": null
                }
            ],
            "TotalCount": 1,
            "RequestId": "7b00a07c-7358-4f0a-b81c-8ce5882a87b8"
        }
    }
    

    5. Developer Resources

    SDK

    TencentCloud API 3.0 integrates SDKs that support various programming languages to make it easier for you to call APIs.

    Command Line Interface

    6. Error Code

    The following only lists the error codes related to the API business logic. For other error codes, see Common Error Codes.

    Error Code Description
    AddressQuotaLimitExceeded The account quota is reached. Each Tencent Cloud account can create up to 20 EIPs in each region.
    InternalError.ModuleError Internal module error
    InternalServerError Internal error.
    InvalidAccount.NotSupported This account is not supported.
    InvalidAddressState The operation cannot be performed on the specified EIP in current status.
    InvalidParameter A parameter error occurred.
    InvalidParameterValue.EIPBrandWidthOutInvalid Exceeded the upper limit.
    InvalidParameterValue.Empty Missing parameters.
    InvalidParameterValue.LimitExceeded The parameter value exceeds the limit.
    InvalidParameterValue.Malformed Invalid input parameter format.
    InvalidParameterValue.Range The parameter value is not in the specified range.
    InvalidParameterValue.TagDuplicateKey Duplicate tag keys.
    InvalidParameterValue.TagDuplicateResourceType Duplicate tag resource type.
    InvalidParameterValue.TagInvalidKey Invalid tag key.
    InvalidParameterValue.TagInvalidKeyLen Invalid tag key length.
    InvalidParameterValue.TagInvalidVal Invalid tag key.
    InvalidParameterValue.TagKeyNotExists The tag key does not exist.
    InvalidParameterValue.TagNotAllocatedQuota Tags are not assigned quotas.
    InvalidParameterValue.TagNotExisted The tag and value do not exist.
    InvalidParameterValue.TagNotSupportTag Unsupported tag.
    InvalidParameterValue.TagResourceFormatError 'The tag resource format error.
    InvalidParameterValue.TagTimestampExceeded Exceeded the quota of tag timestamp.
    InvalidParameterValue.TagValNotExists The tag value does not exist.
    InvalidParameterValue.TooLong Invalid parameter value. The parameter value is too long.
    InvalidVpcId.Malformed Invalid VPC. The VPC instance ID is invalid.
    InvalidVpcId.NotFound Invalid VPC. The VPC resource does not exist.
    LimitExceeded.AddressQuotaLimitExceeded The number of EIPs applied for exceeds the upper limit.
    LimitExceeded.DailyAllocateAddressQuotaLimitExceeded The number of EIPs applied for per day exceeds the upper limit.
    LimitExceeded.NatGatewayLimitExceeded Reached the upper limit of NAT gateways.
    LimitExceeded.NatGatewayPerVpcLimitExceeded The number of NAT gateways created by the VPC has reached the upper limit.
    LimitExceeded.PublicIpAddressPerNatGatewayLimitExceeded The number of EIPs bound to the NAT gateway has reached the upper limit.
    LimitExceeded.TagKeyExceeded Reached the upper limit of tag keys.
    LimitExceeded.TagKeyPerResourceExceeded Reached the upper limit of tags keys per resource.
    LimitExceeded.TagNotEnoughQuota Insufficient tag quota.
    LimitExceeded.TagQuota Exceeded the tag quota. Unable to create resources.
    LimitExceeded.TagQuotaExceeded Reached the upper limit of tag quota.
    LimitExceeded.TagTagsExceeded Reached the number limit of tag keys.
    ResourceInUse.Address The specified IP address is already in use.
    ResourceInsufficient.Instance
    ResourceNotFound The resource does not exist.
    UnauthorizedOperation.NoRealNameAuthentication Identity verification has not been completed for the account.
    UnsupportedOperation Unsupported operation.
    UnsupportedOperation.InsufficientFunds Insufficient account balance.
    UnsupportedOperation.InsufficientInternetServiceProviders
    UnsupportedOperation.InvalidState Invalid resource status.
    UnsupportedOperation.NatGatewayHadEipUnassociate There are IPs associated with this NAT gateway.
    UnsupportedOperation.NotSupportZone
    UnsupportedOperation.PublicIpAddressIsNotBGPIp The EIP bound to the NAT gateway is not a BGP IP.
    UnsupportedOperation.PublicIpAddressIsNotExisted The EIP bound to the NAT gateway does not exist.
    UnsupportedOperation.PublicIpAddressNotBilledByTraffic The EIP bound to the NAT gateway is not bill-by-traffic.
    UnsupportedOperation.TagAllocate Tags are being assigned.
    UnsupportedOperation.TagFree Tags are being released.
    UnsupportedOperation.TagNotPermit Unauthorized for this tag.
    UnsupportedOperation.TagSystemReservedTagKey The specified tag key is reserved for system usage.