:original_name: vpc_sharebandwidth_0001.html .. _vpc_sharebandwidth_0001: Assigning a Shared Bandwidth ============================ Function -------- This API is used to assign a shared bandwidth. URI --- POST /v2.0/{project_id}/bandwidths :ref:`Table 1 ` describes the parameters. .. _vpc_sharebandwidth_0001__table40002310: .. table:: **Table 1** Parameter description ========== ========= ========================= Name Mandatory Description ========== ========= ========================= project_id Yes Specifies the project ID. ========== ========= ========================= Request Message --------------- - Request parameter .. table:: **Table 2** Request parameter +-----------+-----------+------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------+ | Name | Mandatory | Type | Description | +===========+===========+==================================================================+============================================================================================================+ | bandwidth | Yes | :ref:`bandwidth ` object | Specifies the bandwidth objects. For details, see :ref:`Table 3 `. | +-----------+-----------+------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------+ .. _vpc_sharebandwidth_0001__table11041789: .. table:: **Table 3** Description of the **bandwidth** field +-----------------------+-----------------+-----------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | Name | Mandatory | Type | Description | +=======================+=================+=================+================================================================================================================================================================================================================+ | name | Yes | String | Specifies the bandwidth name. | | | | | | | | | | The value can contain 1 to 64 characters, including letters, digits, underscores (_), hyphens (-), and periods (.). | +-----------------------+-----------------+-----------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | size | Yes | Integer | - Specifies the bandwidth size. The shared bandwidth has a minimum limit, which may vary depending on sites. The default minimum value is 5 Mbit/s. | | | | | - The value ranges from 5 Mbit/s to 1000 Mbit/s by default. (The specific range may vary depending on the configuration in each region. You can see the available bandwidth range on the management console.) | | | | | - If a decimal fraction (for example **10.2**) or a character string (for example **"10"**) is specified, the specified value will be automatically converted to an integer. | | | | | - The minimum increment for bandwidth adjustment varies depending on the bandwidth range. The details are as follows: | | | | | | | | | | - The minimum increment is 1 Mbit/s if the allowed bandwidth ranges from 0 Mbit/s to 300 Mbit/s (with 300 Mbit/s included). | | | | | - The minimum increment is 50 Mbit/s if the allowed bandwidth ranges from 300 Mbit/s to 1000 Mbit/s (with 1000 Mbit/s included). | | | | | - The minimum increment is 500 Mbit/s if the allowed bandwidth is greater than 1000 Mbit/s. | +-----------------------+-----------------+-----------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | enterprise_project_id | No | String | - Specifies the enterprise project ID. The value is **0** or a string that contains a maximum of 36 characters in UUID format with hyphens (-). Value **0** indicates the default enterprise project. | | | | | - When creating a shared bandwidth, associate the enterprise project ID with the shared bandwidth. | | | | | | | | | | .. note:: | | | | | | | | | | This parameter is unsupported. Do not use it. | +-----------------------+-----------------+-----------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - Example request .. code-block:: text POST https://{Endpoint}/v2.0/{project_id}/bandwidths { "bandwidth": { "name": "bandwidth123", "size": 10, "enterprise_project_id":"b261ac1f-2489-4bc7-b31b-c33c3346a439" } } Response Message ---------------- - Response parameter .. table:: **Table 4** Response parameter +-----------+------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------+ | Name | Type | Description | +===========+==================================================================+============================================================================================================+ | bandwidth | :ref:`bandwidth ` object | Specifies the bandwidth objects. For details, see :ref:`Table 5 `. | +-----------+------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------+ .. _vpc_sharebandwidth_0001__table60972066: .. table:: **Table 5** Description of the **bandwidth** field +-----------------------+--------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | Name | Type | Description | +=======================+================================================================================+================================================================================================================================================================================================================+ | name | String | - Specifies the bandwidth name. | | | | - The value can contain 1 to 64 characters, including letters, digits, underscores (_), hyphens (-), and periods (.). | +-----------------------+--------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | size | Integer | - Specifies the bandwidth size. | | | | - The value ranges from 5 Mbit/s to 1000 Mbit/s by default. (The specific range may vary depending on the configuration in each region. You can see the available bandwidth range on the management console.) | +-----------------------+--------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | id | String | Specifies the bandwidth ID, which uniquely identifies the bandwidth. | +-----------------------+--------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | share_type | String | - Specifies whether the bandwidth is shared or dedicated. | | | | - The value can be **PER** or **WHOLE**. | | | | | | | | - **WHOLE**: Shared bandwidth | | | | - **PER**: Dedicated bandwidth | +-----------------------+--------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | publicip_info | Array of :ref:`publicip_info ` objects | - Specifies information about the EIP that uses the bandwidth. For details, see :ref:`Table 6 `. | | | | - The bandwidth, whose type is **WHOLE**, can be used by multiple EIPs. The bandwidth, whose type is **PER**, can be used by only one EIP. | +-----------------------+--------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | tenant_id | String | Specifies the project ID. | +-----------------------+--------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | bandwidth_type | String | - Specifies the bandwidth type. The default value for the shared bandwidth is **share**. | +-----------------------+--------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | charge_mode | String | - Specifies that the bandwidth is billed by bandwidth. | | | | - The value can be **traffic**. | +-----------------------+--------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | billing_info | String | Specifies the bill information. | | | | | | | | If **billing_info** is specified, the bandwidth is in yearly/monthly billing mode. | +-----------------------+--------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | enterprise_project_id | String | - Specifies the enterprise project ID. The value is **0** or a UUID that can contain a maximum of 36 characters, including hyphens (-). Value **0** indicates the default enterprise project. | | | | - When creating a shared bandwidth, associate the enterprise project ID with the shared bandwidth. | | | | | | | | .. note:: | | | | | | | | This parameter is unsupported. Do not use it. | +-----------------------+--------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | status | String | - Specifies the bandwidth status. | | | | - Possible values are as follows: | | | | | | | | - **FREEZED** (Frozen) | | | | - **NORMAL** (Normal) | +-----------------------+--------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | created_at | String | - Specifies the time (UTC) when the bandwidth is created. | | | | - Format: *yyyy-MM-ddTHH:mm:ss* | +-----------------------+--------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | updated_at | String | - Specifies the time (UTC) when the bandwidth is updated. | | | | - Format: *yyyy-MM-ddTHH:mm:ss* | +-----------------------+--------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ .. _vpc_sharebandwidth_0001__table30936422: .. table:: **Table 6** **publicip_info** object +-----------------------+-----------------------+---------------------------------------------------------------------------------------------------------------------------------------+ | Name | Type | Description | +=======================+=======================+=======================================================================================================================================+ | publicip_id | String | Specifies the ID of the EIP that uses the bandwidth. | +-----------------------+-----------------------+---------------------------------------------------------------------------------------------------------------------------------------+ | publicip_address | String | Specifies the obtained EIP if only IPv4 EIPs are available. | +-----------------------+-----------------------+---------------------------------------------------------------------------------------------------------------------------------------+ | publicip_type | String | - Specifies the EIP type. | | | | - The value can be **5_bgp** (Dynamic BGP), **5_mailbgp** (Mail BGP), or **5_gray** (Dedicated load balancer, shared load balancer). | | | | - Constraints: | | | | | | | | - The configured value must be supported by the system. | | | | - **publicip_id** is an IPv4 port. If **publicip_type** is not specified, the default value is **5_bgp**. | +-----------------------+-----------------------+---------------------------------------------------------------------------------------------------------------------------------------+ - Example response .. code-block:: { "bandwidth": { "id": "1bffc5f2-ff19-45a6-96d2-dfdca49cc387", "name": "bandwidth123", "size": 10, "share_type": "WHOLE", "publicip_info": [], "tenant_id": "26ae5181a416420998eb2093aaed84d9", "bandwidth_type": "share", "charge_mode": "traffic", "billing_info": "", "enterprise_project_id": "0", "status": "NORMAL", "created_at": "2020-04-21T07:58:02Z", "updated_at": "2020-04-21T07:58:02Z" } } Status Code ----------- See :ref:`Status Codes `. Error Code ---------- See :ref:`Error Codes `.