
# 查询终端节点服务列表 - ListEndpointService
#### 功能介绍
查询当前用户下的终端节点服务的列表。
#### 调用方法
请参见[如何调用API](https://support.huaweicloud.com/api-vpcep/vpcep_03_0000.html)。
#### 授权信息
账号具备所有API的调用权限，如果使用账号下的IAM用户调用当前API，该IAM用户需具备调用API所需的权限。
- 如果使用角色与策略授权，具体权限要求请参见[权限和授权项](https://support.huaweicloud.com/api-vpcep/vpcep_07_0000.html)。
- 如果使用身份策略授权，需具备如下身份策略权限。
  
  | 授权项                         | 访问级别 | 资源类型（\*为必须）         | 条件键                   | 别名                    | 依赖的授权项 |
  |:---|:---|:---|:---|:---|:---|
  | vpcep:endpointServices:list | List | endpointServices \* | -                     | vpcep:epservices:list | -      |
  | vpcep:endpointServices:list | List | -                   | g:EnterpriseProjectId | vpcep:epservices:list | -      |
     
  
 
#### URI
GET /v1/{project_id}/vpc-endpoint-services
表1路径参数 
| 参数         | 是否必选 | 参数类型   | 描述   |
|:---|:---|:---|:---|
| project_id | 是    | String | 项目ID |
   
表2Query参数 
| 参数                    | 是否必选 | 参数类型    | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
|:---|:---|:---|:---|
| endpoint_service_name | 否    | String  | 终端节点服务的名称，支持大小写，前后模糊匹配。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| id                    | 否    | String  | 终端节点服务的ID，唯一标识。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| status                | 否    | String  | 终端节点服务的状态。 - creating：创建中   - available：可连接   - failed：失败   - deleting：删除中    |
| sort_key              | 否    | String  | 查询结果中终端节点服务列表的排序字段，取值为： - create_at：终端节点服务的创建时间   - update_at：终端节点服务的更新时间    默认值为create_at。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| sort_dir              | 否    | String  | 查询结果中终端节点服务列表的排序方式，取值为： - desc：降序排序   - asc：升序排序    默认值为desc。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| limit                 | 否    | Integer | 查询返回的终端节点服务数量限制，即每页返回的终端节点服务的个数。 取值范围：0\~1000，取值一般为10，20或者50，默认为10。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| offset                | 否    | Integer | 偏移量。 偏移量为一个大于0小于终端节点服务总个数的整数， 表示从偏移量后面的终端节点服务开始查询。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| public_border_group   | 否    | String  | 筛选结果中匹配边缘属性的EPS                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| net_type              | 否    | String  | 后端类型。取值范围： - vlan：查询vlan类型终端节点服务   - vxlan：查询vxlan类型终端节点服务   - all：查询所有类型终端节点服务                                                                                                                                                                                                                                                          |
   
#### 请求参数
表3请求Header参数 
| 参数           | 是否必选 | 参数类型   | 描述                                                                        |
|:---|:---|:---|:---|
| X-Auth-Token | 是    | String | 用户Token。通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。                  |
| Content-Type | 否    | String | 发送的实体的MIME类型。推荐用户默认使用application/json，如果API是对象、镜像上传等接口，媒体类型可按照流类型的不同进行确定。 |
   
#### 响应参数
**状态码：200**
表4响应Body参数 
| 参数                | 参数类型                                                                                                    | 描述                                        |
|:---|:---|:---|
| endpoint_services | Array of [ServiceList] objects | 终端节点服务列表                                  |
| total_count       | Integer                                                                                                 | 满足查询条件的终端节点服务总条数，不受分页（即limit、offset参数）影响。 |
   
 表5ServiceList 
| 参数                  | 参数类型                                                                                              | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
|:---|:---|:---|
| id                  | String                                                                                            | 终端节点服务的ID，唯一标识。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| port_id             | String                                                                                            | 标识终端节点服务后端资源的ID，格式为通用唯一识别码（Universally Unique Identifier，下文简称UUID）。 取值为： - LB类型：负载均衡器内网IP对应的端口ID。   - VM类型：弹性云服务器IP地址对应的网卡ID。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| service_name        | String                                                                                            | 终端节点服务的名称。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| server_type         | String                                                                                            | 资源类型。 - VM：云服务器。   - LB：增强负载均衡型。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| vpc_id              | String                                                                                            | 终端节点服务对应后端资源所在的VPC的ID。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| approval_enabled    | Boolean                                                                                           | 是否需要审批。 - false：不需要审批，创建的终端节点连接直接为accepted状态。   - true：需要审批，创建的终端节点连接为pendingAcceptance状态，    需要终端节点服务所属用户审核后方可使用。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| status              | String                                                                                            | 终端节点服务的状态。 - creating：创建中   - available：可连接   - failed：失败   - deleting：删除中                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| service_type        | String                                                                                            | 终端节点服务类型。 终端节点服务类型包括"网关（gateway）型"和"接口（interface）型"： - gateway：由运维人员配置。用户无需创建，可直接使用。   - interface：包括运维人员配置的云服务和用户自己创建的私有服务。    其中，运维人员配置的云服务无需创建，用户可直接使用。 您可以通过创建终端节点创建访问Gateway和Interface类型终端节点服务的终端节点。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| created_at          | String                                                                                            | 终端节点服务的创建时间。 采用UTC时间格式，格式为：YYYY-MM-DDTHH:MM:SSZ                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| updated_at          | String                                                                                            | 终端节点服务的更新时间。 采用UTC时间格式，格式为：YYYY-MM-DDTHH:MM:SSZ                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| project_id          | String                                                                                            | 项目ID，获取方法请参见[获取项目ID](https://support.huaweicloud.com/api-vpcep/vpcep_08_0003.html)。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| domain_id           | String                                                                                            | Domain ID                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| ports               | Array of [PortList] objects | 服务开放的端口映射列表。 同一个终端节点服务下，不允许重复的端口映射。若多个终端节点服务共用一个port_id，则终端节点服务之间的所有端口映射的server_port和protocol的组合不能重复。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| ip                  | String                                                                                            | 接口型VLAN场景服务端IPv4地址或域名                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| tags                | Array of [TagList] objects   | 资源标签列表                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| connection_count    | Integer                                                                                           | 终端节点服务下连接的状态为"创建中"或"已接受"的终端节点的个数。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| tcp_proxy           | String                                                                                            | **参数解释：** 用于控制将哪些信息（如客户端源IP、源端口、marker_id等）携带到服务端。 **约束限制：** 支持携带的客户端信息包括如下两种类型： - TCP TOA：表示将客户端信息插入到tcp option字段中携带至服务端。仅当后端资源为OBS时，支持TCP TOA类型信息携带方式。   - Proxy Protocol：表示将客户端信息插入到tcp payload字段中携带至服务端。仅当服务端支持解析上述字段时，该参数设置才有效。    **取值范围：** - close：表示关闭代理协议。   - proxy_open：表示开启"proxy_protocol"代理协议。    **默认取值：** close |
| error               | Array of [Error] objects       | 提交任务异常时返回的异常信息                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| description         | String                                                                                            | 描述字段，支持中英文字母、数字等字符，不支持"\<"或"\>"字符。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| supported_editions  | Array of strings                                                                                  | 终端节点服务支持的类型，取值范围为profession-专业型，basic-基础型                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| public_border_group | String                                                                                            | 终端节点服务对应Pool的Public Border Group信息                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| enable_policy       | Boolean                                                                                           | 是否允许自定义终端节点策略。 - false：不支持设置终端节点策略   - true：支持设置终端节点策略    默认为false                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
   
 表6PortList 
| 参数          | 参数类型    | 描述                                                                                                                |
|:---|:---|:---|
| client_port | Integer | 终端节点访问的端口。 终端节点提供给用户，作为访问终端节点服务的端口，范围1-65535。 |
| server_port | Integer | 终端节点服务的端口。 终端节点服务绑定了后端资源，作为提供服务的端口，范围1-65535。 |
| protocol    | String  | 端口映射协议，支持TCP。                                                                                                     |
   
 表7TagList 
| 参数    | 参数类型   | 描述                                                                                                                                                                                                                                                                                                                                                                                                                      |
|:---|:---|:---|
| key   | String | 键。 key不能为空，长度1\~128个字符（中文也可以输入128个字符）。 可用 UTF-8 格式表示的字母(包含中文、西班牙语、葡语等)、数字和空格，以及以下字符： _ . : = + - @。 _sys_开头属于系统标签，租户不能输入。 key两头不能有空格字符。 |
| value | String | 值。 长度0\~255个字符（中文也可以输入255个字符）。 可用 UTF-8 格式表示的字母(包含中文、西班牙语、葡语等)、数字和空格，以及以下字符： _ . : / = + - @。 资源标签值可以为空字符串。                                                                                                 |
   
 表8Error 
| 参数      | 参数类型   | 描述         |
|:---|:---|:---|
| message | String | 任务异常错误信息描述 |
| code    | String | 任务异常错误信息编码 |
   
#### 请求示例
查询终端节点服务列表
```
GET https://{endpoint}/v1/{project_id}/vpc-endpoint-services?endpoint_service_name={endpoint_service_name}&id={id}&sort_key={sort_key}&sort_dir={sort_dir}&limit={limit}&offset={offset}&status={status}
```
#### 响应示例
**状态码：200**
服务器已成功处理了请求
```
{
  "endpoint_services" : [ {
    "id" : "4189d3c2-8882-4871-a3c2-d380272eed83",
    "port_id" : "4189d3c2-8882-4871-a3c2-d380272eed88",
    "vpc_id" : "4189d3c2-8882-4871-a3c2-d380272eed80",
    "status" : "available",
    "approval_enabled" : false,
    "service_name" : "test123",
    "server_type" : "VM",
    "service_type" : "interface",
    "ports" : [ {
      "client_port" : 8080,
      "server_port" : 80,
      "protocol" : "TCP"
    }, {
      "client_port" : 8081,
      "server_port" : 80,
      "protocol" : "TCP"
    } ],
    "project_id" : "6e9dfd51d1124e8d8498dce894923a0d",
    "created_at" : "2022-04-14T09:35:47Z",
    "updated_at" : "2022-04-14T09:36:47Z",
    "public_border_group" : "br-abc-aaa1",
    "supported_editions" : [ "basic", "profession" ]
  } ],
  "total_count" : 1
}
```
#### SDK代码示例
SDK代码示例如下。
- [Java]
  ```
  package com.huaweicloud.sdk.test;
  import com.huaweicloud.sdk.core.auth.ICredential;
  import com.huaweicloud.sdk.core.auth.BasicCredentials;
  import com.huaweicloud.sdk.core.exception.ConnectionException;
  import com.huaweicloud.sdk.core.exception.RequestTimeoutException;
  import com.huaweicloud.sdk.core.exception.ServiceResponseException;
  import com.huaweicloud.sdk.vpcep.v1.region.VpcepRegion;
  import com.huaweicloud.sdk.vpcep.v1.*;
  import com.huaweicloud.sdk.vpcep.v1.model.*;
  public class ListEndpointServiceSolution {
      public static void main(String[] args) {
          // The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security.
          // In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment
          String ak = System.getenv("CLOUD_SDK_AK");
          String sk = System.getenv("CLOUD_SDK_SK");
          String projectId = "{project_id}";
          ICredential auth = new BasicCredentials()
                  .withProjectId(projectId)
                  .withAk(ak)
                  .withSk(sk);
          VpcepClient client = VpcepClient.newBuilder()
                  .withCredential(auth)
                  .withRegion(VpcepRegion.valueOf("<YOUR REGION>"))
                  .build();
          ListEndpointServiceRequest request = new ListEndpointServiceRequest();
          try {
              ListEndpointServiceResponse response = client.listEndpointService(request);
              System.out.println(response.toString());
          } catch (ConnectionException e) {
              e.printStackTrace();
          } catch (RequestTimeoutException e) {
              e.printStackTrace();
          } catch (ServiceResponseException e) {
              e.printStackTrace();
              System.out.println(e.getHttpStatusCode());
              System.out.println(e.getRequestId());
              System.out.println(e.getErrorCode());
              System.out.println(e.getErrorMsg());
          }
      }
  }
  ```
- [Python]
  ```
  # coding: utf-8
  import os
  from huaweicloudsdkcore.auth.credentials import BasicCredentials
  from huaweicloudsdkvpcep.v1.region.vpcep_region import VpcepRegion
  from huaweicloudsdkcore.exceptions import exceptions
  from huaweicloudsdkvpcep.v1 import *
  if __name__ == "__main__":
      # The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security.
      # In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment
      ak = os.environ["CLOUD_SDK_AK"]
      sk = os.environ["CLOUD_SDK_SK"]
      projectId = "{project_id}"
      credentials = BasicCredentials(ak, sk, projectId)
      client = VpcepClient.new_builder() \
          .with_credentials(credentials) \
          .with_region(VpcepRegion.value_of("<YOUR REGION>")) \
          .build()
      try:
          request = ListEndpointServiceRequest()
          response = client.list_endpoint_service(request)
          print(response)
      except exceptions.ClientRequestException as e:
          print(e.status_code)
          print(e.request_id)
          print(e.error_code)
          print(e.error_msg)
  ```
- [Go]
  ```
  package main
  import (
  "fmt"
  "github.com/huaweicloud/huaweicloud-sdk-go-v3/core/auth/basic"
      vpcep "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/vpcep/v1"
  "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/vpcep/v1/model"
      region "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/vpcep/v1/region"
  )
  func main() {
      // The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security.
      // In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment
      ak := os.Getenv("CLOUD_SDK_AK")
      sk := os.Getenv("CLOUD_SDK_SK")
      projectId := "{project_id}"
      auth, err := basic.NewCredentialsBuilder().
          WithAk(ak).
          WithSk(sk).
          WithProjectId(projectId).
          SafeBuild()
      if err != nil {
          fmt.Println(err)
          return
      }
      hcClient, err := vpcep.VpcepClientBuilder().
           WithRegion(region.ValueOf("<YOUR REGION>")).
           WithCredential(auth).
           SafeBuild()
      if err != nil {
          fmt.Println(err)
          return
      }
      client := vpcep.NewVpcepClient(hcClient)
      request := &model.ListEndpointServiceRequest{}
  response, err := client.ListEndpointService(request)
  if err == nil {
          fmt.Printf("%+v\n", response)
      } else {
          fmt.Println(err)
      }
  }
  ```
- [更多]
  更多编程语言的SDK代码示例，请参见[API Explorer](https://console.huaweicloud.com/apiexplorer/#/openapi/VPCEP/sdk?api=ListEndpointService)的代码示例页签，可生成自动对应的SDK代码示例。
#### 状态码
| 状态码 | 描述          |
|:---|:---|
| 200 | 服务器已成功处理了请求 |
   
#### 错误码
请参见[错误码](https://support.huaweicloud.com/api-vpcep/ErrorCode.html)。
