forked from docs/virtual-private-cloud
217 lines
26 KiB
ReStructuredText
217 lines
26 KiB
ReStructuredText
:original_name: vpc_eip_0003.html
|
|
|
|
.. _vpc_eip_0003:
|
|
|
|
Querying EIPs
|
|
=============
|
|
|
|
Function
|
|
--------
|
|
|
|
This API is used to query EIPs.
|
|
|
|
URI
|
|
---
|
|
|
|
GET /v1/{project_id}/publicips
|
|
|
|
:ref:`Table 1 <vpc_eip_0003__table51200735>` describes the parameters.
|
|
|
|
.. _vpc_eip_0003__table51200735:
|
|
|
|
.. table:: **Table 1** Parameter description
|
|
|
|
+-----------------------+-----------------+-----------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
|
| Name | Mandatory | Type | Description |
|
|
+=======================+=================+=================+=============================================================================================================================================================================================================================================================+
|
|
| project_id | Yes | String | Specifies the project ID. |
|
|
+-----------------------+-----------------+-----------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
|
| marker | No | String | Specifies a resource ID for pagination query, indicating that the query starts from the next record of the specified resource ID. |
|
|
| | | | |
|
|
| | | | This parameter can work together with the parameter **limit**. |
|
|
| | | | |
|
|
| | | | - If parameters **marker** and **limit** are not passed, all resource records will be returned. |
|
|
| | | | - If the parameter **marker** is not passed and the value of parameter **limit** is set to **10**, the first 10 resource records will be returned. |
|
|
| | | | - If the value of the parameter **marker** is set to the resource ID of the 10th record and the value of parameter **limit** is set to **10**, the 11th to 20th resource records will be returned. |
|
|
| | | | - If the value of the parameter **marker** is set to the resource ID of the 10th record and the parameter **limit** is not passed, resource records starting from the 11th records (including 11th) will be returned. |
|
|
+-----------------------+-----------------+-----------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
|
| limit | No | Integer | Specifies the number of records that will be returned on each page. The value is from 0 to intmax. |
|
|
| | | | |
|
|
| | | | **limit** can be used together with **marker**. For details, see the parameter description of **marker**. |
|
|
+-----------------------+-----------------+-----------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
|
| enterprise_project_id | No | String | - Specifies the enterprise project ID. This field can be used to filter the EIPs of an enterprise project. |
|
|
| | | | - 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. To obtain the EIPs bound to all enterprise projects of the user, set **all_granted_eps**. |
|
|
| | | | |
|
|
| | | | .. note:: |
|
|
| | | | |
|
|
| | | | This parameter is unsupported. Do not use it. |
|
|
+-----------------------+-----------------+-----------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
|
|
|
Request Message
|
|
---------------
|
|
|
|
- Request parameter
|
|
|
|
None
|
|
|
|
- Example request
|
|
|
|
.. code-block:: text
|
|
|
|
GET https://{Endpoint}/v1/{project_id}/publicips?limit={limit}&marker={marker}
|
|
|
|
Response Message
|
|
----------------
|
|
|
|
- Response parameter
|
|
|
|
.. table:: **Table 2** Response parameter
|
|
|
|
+-----------+--------------------------------------------------------------------+---------------------------------------------------------------------------------------------+
|
|
| Name | Type | Description |
|
|
+===========+====================================================================+=============================================================================================+
|
|
| publicips | Array of :ref:`publicips <vpc_eip_0003__table83964341880>` objects | Specifies the EIP object. For details, see :ref:`Table 3 <vpc_eip_0003__table83964341880>`. |
|
|
+-----------+--------------------------------------------------------------------+---------------------------------------------------------------------------------------------+
|
|
|
|
.. _vpc_eip_0003__table83964341880:
|
|
|
|
.. table:: **Table 3** Description of the **publicips** field
|
|
|
|
+-----------------------+-----------------------+--------------------------------------------------------------------------------------------------------------------------------------------------+
|
|
| Name | Type | Description |
|
|
+=======================+=======================+==================================================================================================================================================+
|
|
| id | String | Specifies the unique identifier of an EIP. |
|
|
+-----------------------+-----------------------+--------------------------------------------------------------------------------------------------------------------------------------------------+
|
|
| status | String | - Specifies the EIP status. |
|
|
| | | - Possible values are as follows: |
|
|
| | | |
|
|
| | | - **FREEZED** (Frozen) |
|
|
| | | - **BIND_ERROR** (Binding failed) |
|
|
| | | - **BINDING** (Binding) |
|
|
| | | - **PENDING_DELETE** (Releasing) |
|
|
| | | - **PENDING_CREATE** (Assigning) |
|
|
| | | - **PENDING_UPDATE** (Updating) |
|
|
| | | - **DOWN** (Unbound) |
|
|
| | | - **ACTIVE** (Bound) |
|
|
| | | - **ELB** (Bound to a load balancer) |
|
|
| | | - **ERROR** (Exceptions) |
|
|
+-----------------------+-----------------------+--------------------------------------------------------------------------------------------------------------------------------------------------+
|
|
| profile | Object | Specifies the additional parameters, including the order ID and product ID. For details, see :ref:`Table 4 <vpc_eip_0003__table66651219193417>`. |
|
|
+-----------------------+-----------------------+--------------------------------------------------------------------------------------------------------------------------------------------------+
|
|
| 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**. |
|
|
+-----------------------+-----------------------+--------------------------------------------------------------------------------------------------------------------------------------------------+
|
|
| public_ip_address | String | Specifies the obtained EIP if only IPv4 EIPs are available. |
|
|
+-----------------------+-----------------------+--------------------------------------------------------------------------------------------------------------------------------------------------+
|
|
| ip_version | Integer | Specifies the IP address version. The value can be **4** or **6**. |
|
|
| | | |
|
|
| | | - **4**: IPv4 |
|
|
| | | - **6**: IPv6 (IPv6 is not supported currently.) |
|
|
+-----------------------+-----------------------+--------------------------------------------------------------------------------------------------------------------------------------------------+
|
|
| private_ip_address | String | - Specifies the private IP address bound to the EIP. |
|
|
| | | - This parameter is returned only if the private IP address is bound to the EIP. |
|
|
| | | |
|
|
| | | .. note:: |
|
|
| | | |
|
|
| | | The value of **private_ip_address** is **null** if the EIP is bound to a dedicated load balancer. |
|
|
+-----------------------+-----------------------+--------------------------------------------------------------------------------------------------------------------------------------------------+
|
|
| port_id | String | - Specifies the port ID. |
|
|
| | | - This parameter is returned only when a port is associated with the EIP. |
|
|
| | | |
|
|
| | | .. note:: |
|
|
| | | |
|
|
| | | The value of **port_id** is null if the EIP is bound to a dedicated load balancer. |
|
|
+-----------------------+-----------------------+--------------------------------------------------------------------------------------------------------------------------------------------------+
|
|
| tenant_id | String | Specifies the project ID. |
|
|
+-----------------------+-----------------------+--------------------------------------------------------------------------------------------------------------------------------------------------+
|
|
| create_time | String | Specifies the time (UTC) when the EIP is assigned. |
|
|
+-----------------------+-----------------------+--------------------------------------------------------------------------------------------------------------------------------------------------+
|
|
| bandwidth_id | String | Specifies the ID of the EIP bandwidth. |
|
|
+-----------------------+-----------------------+--------------------------------------------------------------------------------------------------------------------------------------------------+
|
|
| bandwidth_size | Integer | Specifies the bandwidth (Mbit/s). |
|
|
+-----------------------+-----------------------+--------------------------------------------------------------------------------------------------------------------------------------------------+
|
|
| bandwidth_share_type | String | - Specifies the EIP bandwidth type. |
|
|
| | | - The value can be **PER** or **WHOLE**. |
|
|
| | | |
|
|
| | | - **PER**: Dedicated bandwidth |
|
|
| | | - **WHOLE**: Shared bandwidth |
|
|
+-----------------------+-----------------------+--------------------------------------------------------------------------------------------------------------------------------------------------+
|
|
| bandwidth_name | String | Specifies the bandwidth name. |
|
|
+-----------------------+-----------------------+--------------------------------------------------------------------------------------------------------------------------------------------------+
|
|
| enterprise_project_id | 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 (-). |
|
|
| | | - When assigning an EIP, you need to associate an enterprise project ID with the EIP. |
|
|
| | | - If this parameter is not specified, the default value is **0**, which indicates that the default enterprise project is used. |
|
|
| | | |
|
|
| | | .. note:: |
|
|
| | | |
|
|
| | | This parameter is unsupported. Do not use it. |
|
|
+-----------------------+-----------------------+--------------------------------------------------------------------------------------------------------------------------------------------------+
|
|
|
|
.. _vpc_eip_0003__table66651219193417:
|
|
|
|
.. table:: **Table 4** Description of the **profile** field
|
|
|
|
========== ====== =========================
|
|
Name Type Description
|
|
========== ====== =========================
|
|
order_id String Specifies the order ID.
|
|
product_id String Specifies the product ID.
|
|
region_id String Specifies the region ID.
|
|
user_id String Specifies the user ID.
|
|
========== ====== =========================
|
|
|
|
- Example response
|
|
|
|
.. code-block::
|
|
|
|
{
|
|
"publicips": [
|
|
{
|
|
"id": "6285e7be-fd9f-497c-bc2d-dd0bdea6efe0",
|
|
"status": "DOWN",
|
|
"profile": {},
|
|
"type": "5_bgp",
|
|
"public_ip_address": "161.xx.xx.9",
|
|
"private_ip_address": "192.168.10.5",
|
|
"tenant_id": "8b7e35ad379141fc9df3e178bd64f55c",
|
|
"create_time": "2015-07-16 04:22:32",
|
|
"bandwidth_id": "3fa5b383-5a73-4dcb-a314-c6128546d855",
|
|
"bandwidth_share_type": "PER",
|
|
"bandwidth_size": 5,
|
|
"bandwidth_name": "bandwidth-test",
|
|
"enterprise_project_id":"b261ac1f-2489-4bc7-b31b-c33c3346a439",
|
|
"ip_version": 4
|
|
},
|
|
{
|
|
"id": "80d5b82e-43b9-4f82-809a-37bec5793bd4",
|
|
"status": "DOWN",
|
|
"profile": {},
|
|
"type": "5_bgp",
|
|
"public_ip_address": "161.xx.xx.10",
|
|
"private_ip_address": "192.168.10.6",
|
|
"tenant_id": "8b7e35ad379141fc9df3e178bd64f55c",
|
|
"create_time": "2015-07-16 04:23:03",
|
|
"bandwidth_id": "a79fd11a-047b-4f5b-8f12-99c178cc780a",
|
|
"bandwidth_share_type": "PER",
|
|
"bandwidth_size": 5,
|
|
"bandwidth_name": "bandwidth-test1",
|
|
"enterprise_project_id":"0",
|
|
"ip_version": 4
|
|
}
|
|
]
|
|
}
|
|
|
|
Status Code
|
|
-----------
|
|
|
|
See :ref:`Status Codes <vpc_api_0002>`.
|
|
|
|
Error Code
|
|
----------
|
|
|
|
See :ref:`Error Codes <vpc_api_0003>`.
|