# CreatePrivateConnect

## 1. 接口描述

调用本接口用于创建一条二层网络专线。

#### 准备工作

* **物理端口连接点**：可用通过[DescribePrivateConnectAvailablePorts](https://docs.console.zenlayer.com/api-reference/cn/networking/sdn/private-connect/describeprivateconnectavailableports-1) 接口查询可用于加入二层网络专线的物理端口信息。
* **云接入支持的数据中心查询：**
  * 可以通过 [DescribeGoogleRegions](https://docs.console.zenlayer.com/api-reference/cn/networking/sdn/cloud/describegoogleregions) 查询Goolge 云接入点支持的数据中心信息。
  * 可以通过 [DescribeAWSRegions](https://docs.console.zenlayer.com/api-reference/cn/networking/sdn/cloud/describe-aws-regions) 查询AWS云接入点支持的数据中心信息。
  * 可以通过 [DescribeTencentRegions](https://docs.console.zenlayer.com/api-reference/cn/networking/sdn/cloud/describe-tencent-regions)查询Tencent 云接入点支持的数据中心信息。
* 云接入点的带宽将根据骨干带宽自动调整至最接近的阶梯，如需自定义云接入点的带宽，可以通过调用[`DescribeCloudAvailableBandwidthTiers`](https://docs.console.zenlayer.com/api-reference/cn/networking/sdn/cloud/describecloudavailablebandwidthtiers) 接口查询到云连接可用的带宽阶梯。

{% hint style="info" %}
**注意事项**

* 目前只支持创建后付费固定带宽计费的二层网络专线。
* 云接入操作详见[云接入操作指南](https://docs.console.zenlayer.com/welcome/cloud-networking/get-started/validate-connection-in-public-cloud)
* 本接口为异步接口，当创建实例请求下发成功后会返回一个二层网络专线的`ID`，此时创建操作并未立即完成。在此期间实例的状态将会处于\*\*`DEPLOYING`\*\*，创建结果可以通过调用[**`DescribePrivateConnects`**](https://docs.console.zenlayer.com/api-reference/cn/networking/sdn/private-connect/describeprivateconnects) **接口查询，如果状态(privateConnectStatus)由`DEPLOYING`(创建中)变为AVAILABLE**(可用)，则代表创建成功，如果未查询到任何记录，则代表创建失败，创建过程中不可对二层网络专线进行任何操作。
  {% endhint %}

## 2. 请求参数

以下请求参数列表仅列出了接口中需要的请求参数

<table><thead><tr><th width="214">参数名称</th><th width="78">必选</th><th width="197">类型</th><th>描述</th></tr></thead><tbody><tr><td>privateConnectName</td><td>否</td><td>String</td><td>二层网络专线的名称。<br>长度不能超过255。<br>默认为private-connect-{当前时间戳}。</td></tr><tr><td>endpointA</td><td>是</td><td><a href="../../datastructure#createendpointparam">CreateEndpointParam</a></td><td>创建二层网络其中一端的连接点（A）</td></tr><tr><td>endpointZ</td><td>否</td><td><a href="../../datastructure#createendpointparam">CreateEndpointParam</a></td><td>创建二层网络另一端的连接点（Z）</td></tr><tr><td>bandwidthMbps</td><td>否</td><td>Integer</td><td><p>二层网络专线最大带宽。</p><p>范围是1～500。<br>默认值是1 ，单位：Mbps。</p></td></tr><tr><td>resourceGroupId</td><td>否</td><td>String</td><td><p>资源组的ID。</p><p>如果不传，则会放到默认资源组。</p></td></tr><tr><td>marketingOptions</td><td>否</td><td><a href="../../datastructure#marketingoptions">MarketingOptions</a></td><td>市场营销活动相关信息。</td></tr><tr><td>tags</td><td>否</td><td><a href="../../datastructure#tagassociation">TagAssociation</a></td><td><p>创建二层网络专线时关联的标签。</p><p>注意：关联<code>标签键</code>不能重复。</p></td></tr></tbody></table>

## 3. 响应结果

| 参数名称             | 类型     | 描述                                                       |
| ---------------- | ------ | -------------------------------------------------------- |
| requestId        | String | <p>唯一请求 ID。</p><p>每次请求都会返回。定位问题时需要提供该次请求的 RequestId。</p> |
| privateConnectId | String | 二层网络专线ID。                                                |

## 4. 代码示例

{% tabs %}
{% tab title="示例" %}
**1. 创建1个二层网络专线, A端为数据中心端口，Z端为端口，专线的带宽为10Mbps。**

```json
POST /api/v2/sdn HTTP/1.1
Host: console.zenlayer.com
Content-Type: application/json
X-ZC-Action: CreatePrivateConnect
<Common Request Params>

Request：
{
   "endpointA": {
      "vlanId": 1001,
      "portId": "your port id"
   },
   "privateConnectName": "fra-sel-prviate-line",
   "endpointZ": {
      "vlanId": 2001,
      "portId": "your portId id"
   },
   "bandwidthMbps": 10
}

Response：
{   
  "requestId": "T05992D0C-7E8B-4047-B0C0-780F2CD549D3",
  "response": {
     "requestId": "T98044459-95B2-477E-9A2F-00253A70CC6E"，
     "privateConnectId": "your private connect id"
  }
}
```

{% endtab %}
{% endtabs %}

## 5. 开发者工具

Zenlayer Cloud API 2.0 提供了配套的[开发工具集（SDK）](https://docs.console.zenlayer.com/api-reference/cn/api-introduction/toolkit)，未来会陆续支持更多开发语言，方便快速接入和使用Zenlayer的产品和服务。

## 6. 错误码

下面包含业务逻辑中遇到的错误码，其他错误码见[公共错误码](https://docs.console.zenlayer.com/api-reference/cn/api-introduction/instruction/commonerrorcode)

<table><thead><tr><th width="153">HTTP状态码</th><th width="326">错误码</th><th>说明</th></tr></thead><tbody><tr><td>404</td><td>INVALID_PORT_NOT_FOUND</td><td>数据中心端口不存在</td></tr><tr><td>400</td><td>INVALID_PORT_STATUS</td><td>数据中心连通性状态不是UP，无法操作</td></tr><tr><td>400</td><td>INVALID_ENDPOINT_PARAMETER</td><td>端点的参数不正确，无法判断类型</td></tr><tr><td>400</td><td>INVALID_CONNECT_ENDPOINT_CONFLICT</td><td>A-Z 两端的信息不能一样</td></tr></tbody></table>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.console.zenlayer.com/api-reference/cn/networking/sdn/private-connect/createprivateconnect.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
