:original_name: CreateEnterpriseRouter.html .. _CreateEnterpriseRouter: Creating an Enterprise Router ============================= Function -------- This API is used to create an enterprise router. If both Default Route Table Association and Default Route Table Propagation are enabled, the system will create a route table as both the default association route table and the default propagation route table. URI --- POST /v3/{project_id}/enterprise-router/instances .. table:: **Table 1** Path Parameters ========== ========= ====== =========== Parameter Mandatory Type Description ========== ========= ====== =========== project_id Yes String Project ID ========== ========= ====== =========== Request Parameters ------------------ .. table:: **Table 2** Request header parameters +-----------------+-----------------+-----------------+------------------------+ | Parameter | Mandatory | Type | Description | +=================+=================+=================+========================+ | X-Client-Token | No | String | Idempotence identifier | | | | | | | | | | Minimum: **1** | | | | | | | | | | Maximum: **64** | +-----------------+-----------------+-----------------+------------------------+ .. table:: **Table 3** Request body parameters +-----------+-----------+-----------------------------------------------------------------------------------------------+-------------------+ | Parameter | Mandatory | Type | Description | +===========+===========+===============================================================================================+===================+ | instance | Yes | :ref:`CreateEnterpriseRouter ` object | Enterprise router | +-----------+-----------+-----------------------------------------------------------------------------------------------+-------------------+ .. _createenterpriserouter__request_createenterpriserouter: .. table:: **Table 4** CreateEnterpriseRouter +--------------------------------+-----------------+-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------+ | Parameter | Mandatory | Type | Description | +================================+=================+===================================================================+=================================================================================================================================================================+ | name | Yes | String | Enterprise router name. The value can contain 1 to 64 characters, including letters, digits, underscores (_), hyphens (-), and periods (.). | | | | | | | | | | Minimum: **1** | | | | | | | | | | Maximum: **64** | +--------------------------------+-----------------+-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------+ | description | No | String | Supplementary information about an enterprise router | | | | | | | | | | Minimum: **0** | | | | | | | | | | Maximum: **255** | +--------------------------------+-----------------+-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------+ | asn | Yes | Long | Enterprise router BGP ASN. Specify a dedicated ASN in the range of 64512-65534 or 4200000000-4294967294. ASN can only be set during enterprise router creation. | +--------------------------------+-----------------+-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------+ | enterprise_project_id | No | String | Enterprise project ID | +--------------------------------+-----------------+-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------+ | charge_mode | No | String | Default: **postPaid** | +--------------------------------+-----------------+-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------+ | tags | No | Array of :ref:`Tag ` objects | Tag information | +--------------------------------+-----------------+-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------+ | enable_default_propagation | No | Boolean | Whether to enable the Default Route Table Propagation function. The default value is **false**, indicating that the function is disabled. | | | | | | | | | | Default: **false** | +--------------------------------+-----------------+-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------+ | enable_default_association | No | Boolean | Whether to enable the Default Route Table Association function. The default value is **false**, indicating that the function is disabled. | | | | | | | | | | Default: **false** | +--------------------------------+-----------------+-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------+ | availability_zone_ids | Yes | Array of strings | AZs where the enterprise router is located | | | | | | | | | | Minimum: **0** | | | | | | | | | | Maximum: **128** | +--------------------------------+-----------------+-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------+ | auto_accept_shared_attachments | No | Boolean | Whether to enable Auto Accept Shared Attachments. The default value is **false**, indicating that the function is disabled. | | | | | | | | | | Default: **false** | +--------------------------------+-----------------+-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------+ | cidr_blocks | No | Array of strings | Enterprise router CIDR block. This parameter is not supported for now. | | | | | | | | | | Minimum: **1** | | | | | | | | | | Maximum: **64** | | | | | | | | | | Array Length: **0 - 100** | +--------------------------------+-----------------+-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------+ .. _createenterpriserouter__request_tag: .. table:: **Table 5** Tag +-----------------+-----------------+-----------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | Parameter | Mandatory | Type | Description | +=================+=================+=================+==================================================================================================================================================================================================+ | key | No | String | Tag key. The value contain up to 128 characters (36 characters on the console), including uppercase letters, lowercase letters, digits, hyphens (-), underscores (_), and at signs (@). | | | | | | | | | | Minimum: **1** | | | | | | | | | | Maximum: **128** | +-----------------+-----------------+-----------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | value | No | String | Tag value. The value contain up to 128 characters in API (43 characters on the console), including uppercase letters, lowercase letters, digits, hyphens (-), underscores (_), and at signs (@). | | | | | | | | | | Minimum: **0** | | | | | | | | | | Maximum: **128** | +-----------------+-----------------+-----------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ Response Parameters ------------------- **Status code: 202** .. table:: **Table 6** Response header parameters ============== ===== ====================== Parameter Type Description ============== ===== ====================== X-Client-Token ``-`` Idempotence identifier ============== ===== ====================== .. table:: **Table 7** Response body parameters +------------+------------------------------------------------------------------------------------+-------------------+ | Parameter | Type | Description | +============+====================================================================================+===================+ | instance | :ref:`EnterpriseRouter ` object | Enterprise router | +------------+------------------------------------------------------------------------------------+-------------------+ | request_id | String | Request ID | +------------+------------------------------------------------------------------------------------+-------------------+ .. _createenterpriserouter__response_enterpriserouter: .. table:: **Table 8** EnterpriseRouter +------------------------------------+--------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------+ | Parameter | Type | Description | +====================================+====================================================================+===========================================================================================================================================+ | id | String | Enterprise router ID | +------------------------------------+--------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------+ | name | String | Enterprise router name | +------------------------------------+--------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------+ | description | String | Supplementary information about an enterprise router | +------------------------------------+--------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------+ | state | String | Enterprise router status. Value options: **pending**, **available**, **modifying**, **deleting**, **deleted**, and **failed** | +------------------------------------+--------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------+ | tags | Array of :ref:`Tag ` objects | Tag information | +------------------------------------+--------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------+ | charge_mode | String | Default: **postPaid** | +------------------------------------+--------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------+ | created_at | String | Creation time in the format YYYY-MM-DDTHH:mm:ss.sssZ | +------------------------------------+--------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------+ | updated_at | String | Update time in the format YYYY-MM-DDTHH:mm:ss.sssZ | +------------------------------------+--------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------+ | enterprise_project_id | String | Enterprise project ID | +------------------------------------+--------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------+ | project_id | String | Project ID | +------------------------------------+--------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------+ | asn | Long | Enterprise router BGP ASN | +------------------------------------+--------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------+ | enable_default_propagation | Boolean | Whether to enable the Default Route Table Propagation function. The default value is **false**, indicating that the function is disabled. | +------------------------------------+--------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------+ | enable_default_association | Boolean | Whether to enable the Default Route Table Association function. The default value is **false**, indicating that the function is disabled. | +------------------------------------+--------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------+ | default_propagation_route_table_id | String | Default propagation route table ID | +------------------------------------+--------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------+ | default_association_route_table_id | String | Default association route table ID | +------------------------------------+--------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------+ | availability_zone_ids | Array of strings | AZs where the enterprise router is located | +------------------------------------+--------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------+ | auto_accept_shared_attachments | Boolean | Whether to automatically accept shared attachments. The default value is **false**, indicating that the function is disabled. | +------------------------------------+--------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------+ | cidr_blocks | Array of strings | Enterprise router CIDR block. This parameter is not supported for now. | +------------------------------------+--------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------+ .. _createenterpriserouter__response_tag: .. table:: **Table 9** Tag +-----------------------+-----------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | Parameter | Type | Description | +=======================+=======================+==================================================================================================================================================================================================+ | key | String | Tag key. The value contain up to 128 characters (36 characters on the console), including uppercase letters, lowercase letters, digits, hyphens (-), underscores (_), and at signs (@). | | | | | | | | Minimum: **1** | | | | | | | | Maximum: **128** | +-----------------------+-----------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | value | String | Tag value. The value contain up to 128 characters in API (43 characters on the console), including uppercase letters, lowercase letters, digits, hyphens (-), underscores (_), and at signs (@). | | | | | | | | Minimum: **0** | | | | | | | | Maximum: **128** | +-----------------------+-----------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ Example Requests ---------------- Creating an enterprise router .. code-block:: text POST https://{erouter_endpoint}/v3/08d5a9564a704afda6039ae2babbef3c/enterprise-router/instances { "instance" : { "name" : "my_er", "description" : "this is my first enterprise router", "asn" : 64512, "enable_default_association" : true, "enable_default_propagation" : true, "tags" : [ { "key" : "key1", "value" : "value1" } ], "availability_zone_ids" : [ "az1", "az2" ] } } Example Responses ----------------- **Status code: 202** Accepted .. code-block:: { "instance" : { "id" : "94c2b814-99dc-939a-e811-ae84c61ea3ff", "name" : "my_er", "description" : "this is my first enterprise router", "asn" : 64512, "project_id" : "08d5a9564a704afda6039ae2babbef3c", "enable_default_association" : true, "enable_default_propagation" : true, "default_association_route_table_id" : "7f7f738f-453c-40b1-be26-28e7b9e390c1", "default_propagation_route_table_id" : "7f7f738f-453c-40b1-be26-28e7b9e390c1", "auto_accept_shared_attachments" : false, "created_at" : "2019-09-06 02:11:13Z", "updated_at" : "2019-09-06 02:11:13Z", "tags" : [ { "key" : "key1", "value" : "value1" } ], "enterprise_project_id" : 0, "availability_zone_ids" : [ "az1", "az2" ] }, "request_id" : "14c2b814-99dc-939a-e811-ae84c61ea3f4" } Status Codes ------------ =========== =========== Status Code Description =========== =========== 202 Accepted =========== =========== Error Codes ----------- See :ref:`Error Codes `.