ALIYUN::ApiGateway::Instance is used to create a dedicated instance.

Syntax

{
  "Type": "ALIYUN::ApiGateway::Instance",
  "Properties": {
    "InstanceName": String,
    "DeletionForce": Boolean,
    "InstanceSpec": String,
    "HttpsPolicy": String,
    "ZoneId": String,
    "PricingCycle": String,
    "ChargeType": String,
    "Duration": Number,
    "AutoPay": Boolean
  }
}

Properties

Property Type Required Editable Description Constraint
InstanceName String Yes No The name of the instance. The name must be 1 to 50 characters in length, and can contain letters, digits, and special characters. Special characters include - / . _
DeletionForce Boolean No No Specifies whether to forcibly delete the instance. Default value: false. Valid values:
  • true
  • false
InstanceSpec String Yes No The instance type of the instance.

None.

HttpsPolicy String Yes No The HTTPS security policy. Valid values:
  • HTTPS1_1_TLS1_0
  • HTTPS2_TLS1_0
  • HTTPS2_TLS1_2

For more information, see Configure an HTTPS security policy.

ZoneId String Yes No The zone ID of the instance. None.
PricingCycle String No No The unit of the subscription duration for the instance. Default value: Month. Valid values:
  • Month
  • Year
ChargeType String No No The billing method of the instance. Default value: PostPaid. Valid values:
  • PrePaid: the subscription billing method
  • PostPaid: the pay-as-you-go billing method
Duration Number No No The billing cycle of the instance.
  • Valid values if the PricingCycle property is set to Month: 1 to 9
  • Valid values if the PricingCycle property is set to Year: 1 to 3
AutoPay Boolean No No Specifies whether to enable auto-renewal when the instance expires. Default value: false. Valid values:
  • true
  • false

Return values

Fn::GetAtt

  • InstanceType: the type of the instance.
  • InstanceId: the ID of the instance.
  • VpcEgressAddress: the outbound IP address in virtual private clouds (VPCs).
  • InternetEgressAddress: the outbound public IP address.
  • EgressIpv6Enable: indicates whether outbound IPv6 traffic is supported.
  • VpcIntranetEnable: indicates whether VPCs are supported.
  • SupportIpv6: indicates whether IPv6 traffic is supported.
  • VpcSlbIntranetEnable: indicates whether internal-facing Server Load Balancer (SLB) instances are supported.

Examples

JSON format

{
  "Parameters": {
    "InstanceName": {
      "Type": "String",
      "Description": "Instance name"
    },
    "InstanceSpec": {
      "Type": "String",
      "Description": "Instance specification. For example: api.s1.small"
    },
    "HttpsPolicy": {
      "Type": "String",
      "Description": "HTTPS security policy. Valid values: HTTPS2_TLS1_0, HTTPS2_TLS1_2, HTTPS1_1_TLS1_0"
    },
    "DeletionForce": {
      "Type": "Boolean",
      "Description": "Whether force delete the instance even if its status is START_FAILED. Default value is false.",
      "AllowedValues": [
        "True",
        "true",
        "False",
        "false"
      ],
      "Default": false
    },
    "ZoneId": {
      "Type": "String",
      "Description": "Zone to which the instance belongs. For example: cn-beijing-MAZ2(f,g).\nPleas call DescribeZones to get supported zone list."
    },
    "ChargeType": {
      "Type": "String",
      "Description": "The billing method of the router interface. Valid values: PrePaid (Subscription), PostPaid (default, Pay-As-You-Go). Default value: PostPaid.",
      "AllowedValues": [
        "PrePaid",
        "PostPaid"
      ],
      "Default": "PostPaid"
    },
    "PricingCycle": {
      "Type": "String",
      "Description": "Unit of the payment cycle. It could be Month (default) or Year.",
      "AllowedValues": [
        "Month",
        "Year"
      ]
    },
    "Duration": {
      "Type": "Number",
      "Description": "Prepaid time period. It could be from 1 to 9 when PricingCycle is Month, or 1 to 3 when PricingCycle is Year. Default value is 3.",
      "AllowedValues": [
        1,
        2,
        3,
        4,
        5,
        6,
        7,
        8,
        9
      ]
    },
    "AutoPay": {
      "Type": "Boolean",
      "Description": "Indicates whether automatic payment is enabled. Valid values:false: Automatic payment is disabled. You need to go to Orders to make the payment once an order is generated. true: Automatic payment is enabled. The payment is automatically made.",
      "AllowedValues": [
        "True",
        "true",
        "False",
        "false"
      ]
    }
  },
  "ROSTemplateFormatVersion": "2015-09-01",
  "Outputs": {
    "EgressIpv6Enable": {
      "Description": "Whether enable egress IPv6.",
      "Value": {
        "Fn::GetAtt": [
          "Instance",
          "EgressIpv6Enable"
        ]
      }
    },
    "VpcEgressAddress": {
      "Description": "VPC network egress address.",
      "Value": {
        "Fn::GetAtt": [
          "Instance",
          "VpcEgressAddress"
        ]
      }
    },
    "InternetEgressAddress": {
      "Description": "Internet egress dddress.",
      "Value": {
        "Fn::GetAtt": [
          "Instance",
          "InternetEgressAddress"
        ]
      }
    },
    "InstanceId": {
      "Description": "Instance ID.",
      "Value": {
        "Fn::GetAtt": [
          "Instance",
          "InstanceId"
        ]
      }
    },
    "VpcIntranetEnable": {
      "Description": "Whether enable VPC intranet.",
      "Value": {
        "Fn::GetAtt": [
          "Instance",
          "VpcIntranetEnable"
        ]
      }
    },
    "SupportIpv6": {
      "Description": "Whether support IPv6.",
      "Value": {
        "Fn::GetAtt": [
          "Instance",
          "SupportIpv6"
        ]
      }
    },
    "InstanceType": {
      "Description": "Instance type.",
      "Value": {
        "Fn::GetAtt": [
          "Instance",
          "InstanceType"
        ]
      }
    },
    "VpcSlbIntranetEnable": {
      "Description": "Whether enable VPC SLB intranet.",
      "Value": {
        "Fn::GetAtt": [
          "Instance",
          "VpcSlbIntranetEnable"
        ]
      }
    }
  },
  "Resources": {
    "Instance": {
      "Type": "ALIYUN::ApiGateway::Instance",
      "Properties": {
        "InstanceName": {
          "Ref": "InstanceName"
        },
        "InstanceSpec": {
          "Ref": "InstanceSpec"
        },
        "HttpsPolicy": {
          "Ref": "HttpsPolicy"
        },
        "DeletionForce": {
          "Ref": "DeletionForce"
        },
        "ZoneId": {
          "Ref": "ZoneId"
        },
        "ChargeType": {
          "Ref": "ChargeType"
        },
        "PricingCycle": {
          "Ref": "PricingCycle"
        },
        "Duration": {
          "Ref": "Duration"
        },
        "AutoPay": {
          "Ref": "AutoPay"
        }
      }
    }
  }
}

YAML format

Parameters:
  InstanceName:
    Type: String
    Description: Instance name
  InstanceSpec:
    Type: String
    Description: 'Instance specification. For example: api.s1.small'
  HttpsPolicy:
    Type: String
    Description: >-
      HTTPS security policy. Valid values: HTTPS2_TLS1_0, HTTPS2_TLS1_2,
      HTTPS1_1_TLS1_0
  DeletionForce:
    Type: Boolean
    Description: >-
      Whether force delete the instance even if its status is START_FAILED.
      Default value is false.
    AllowedValues:
      - 'True'
      - 'true'
      - 'False'
      - 'false'
    Default: false
  ZoneId:
    Type: String
    Description: |-
      Zone to which the instance belongs. For example: cn-beijing-MAZ2(f,g).
      Pleas call DescribeZones to get supported zone list.
  ChargeType:
    Type: String
    Description: >-
      The billing method of the router interface. Valid values: PrePaid
      (Subscription), PostPaid (default, Pay-As-You-Go). Default value:
      PostPaid.
    AllowedValues:
      - PrePaid
      - PostPaid
    Default: PostPaid
  PricingCycle:
    Type: String
    Description: Unit of the payment cycle. It could be Month (default) or Year.
    AllowedValues:
      - Month
      - Year
  Duration:
    Type: Number
    Description: >-
      Prepaid time period. It could be from 1 to 9 when PricingCycle is Month,
      or 1 to 3 when PricingCycle is Year. Default value is 3.
    AllowedValues:
      - 1
      - 2
      - 3
      - 4
      - 5
      - 6
      - 7
      - 8
      - 9
  AutoPay:
    Type: Boolean
    Description: >-
      Indicates whether automatic payment is enabled. Valid values:false:
      Automatic payment is disabled. You need to go to Orders to make the
      payment once an order is generated. true: Automatic payment is enabled.
      The payment is automatically made.
    AllowedValues:
      - 'True'
      - 'true'
      - 'False'
      - 'false'
ROSTemplateFormatVersion: '2015-09-01'
Outputs:
  EgressIpv6Enable:
    Description: Whether enable egress IPv6.
    Value:
      'Fn::GetAtt':
        - Instance
        - EgressIpv6Enable
  VpcEgressAddress:
    Description: VPC network egress address.
    Value:
      'Fn::GetAtt':
        - Instance
        - VpcEgressAddress
  InternetEgressAddress:
    Description: Internet egress dddress.
    Value:
      'Fn::GetAtt':
        - Instance
        - InternetEgressAddress
  InstanceId:
    Description: Instance ID.
    Value:
      'Fn::GetAtt':
        - Instance
        - InstanceId
  VpcIntranetEnable:
    Description: Whether enable VPC intranet.
    Value:
      'Fn::GetAtt':
        - Instance
        - VpcIntranetEnable
  SupportIpv6:
    Description: Whether support IPv6.
    Value:
      'Fn::GetAtt':
        - Instance
        - SupportIpv6
  InstanceType:
    Description: Instance type.
    Value:
      'Fn::GetAtt':
        - Instance
        - InstanceType
  VpcSlbIntranetEnable:
    Description: Whether enable VPC SLB intranet.
    Value:
      'Fn::GetAtt':
        - Instance
        - VpcSlbIntranetEnable
Resources:
  Instance:
    Type: 'ALIYUN::ApiGateway::Instance'
    Properties:
      InstanceName:
        Ref: InstanceName
      InstanceSpec:
        Ref: InstanceSpec
      HttpsPolicy:
        Ref: HttpsPolicy
      DeletionForce:
        Ref: DeletionForce
      ZoneId:
        Ref: ZoneId
      ChargeType:
        Ref: ChargeType
      PricingCycle:
        Ref: PricingCycle
      Duration:
        Ref: Duration
      AutoPay:
        Ref: AutoPay
            

To view more examples, visit Instance.json and Instance.yml.