跳转至

使用 API 创建服务密钥

本主题介绍通过 API 创建服务密钥的流程,包括如何获取 Port ID(productUid),以及使用服务密钥创建 VXC。

有关服务密钥的概览,请参阅 设置服务密钥管理服务密钥。有关服务密钥 API 的更多信息,请参阅 Service Keys (API Documentation)

先决条件

在创建 service key 之前,确保您具备:

  • 访问 Megaport Portal 的权限。
  • 在 Megaport 网络上拥有一个 Port、MCR 或 MVE。

  • 一个有效的访问令牌。有关更多信息,请参阅 创建 API 密钥

获取 Port 的 productUid

  1. 在 Postman 中,单击左侧导航中的 Product Details(产品详情),然后选择 GET Product List(GET 产品列表)

  2. 单击 Send(发送)

  3. 在返回的产品详情中,找到要为其创建服务密钥的 Port 的 productUid 值。

    本示例使用以下 Port:

    "productName": "CoreSite LA1" 位于 "city": "洛杉矶" 
    其 "productUid": "8611b645-ea50-46eb-b400-1c2fb858a303"
    

创建服务密钥

在找到要为其创建服务密钥的产品的 productUid 值后,可以使用 Megaport API 创建服务密钥。

创建服务密钥

  1. 在 Postman 中,单击左侧导航中的 Connections(连接),然后选择 Service Keys > POST Generate Service Key(服务密钥 > POST 生成服务密钥)

  2. 复制接入点(Port)的 productUid,并更新请求体。

    在本示例中,Port 的 productUid 值为 8611b645-ea50-46eb-b400-1c2fb858a303

    {
        "productUid": "8611b645-ea50-46eb-b400-1c2fb858a303",
        "description": "Documentation Service Key - Single Use",
        "active": true,
        "_set_singleUse_to_false_to_make_service_key_multiUse": true,
        "singleUse": true,
        "maxSpeed": "500",
        "preApproved": true,
        "vlan": 3,
        "validFor": {
             "_make_start_timestamp_equal_to_now": 1608506197135,
             "start": 1608506197135,
             "_make_end_timestamp_equal_to_1_month_forward": 1612015200000,
             "end": 1612015200000
        }
    }
    
  3. 在 Body 中指定其他参数,例如速率限制(maxSpeed)、密钥的有效期限(validFor),以及您是否需要一次性密钥("singleUse": true)或多次使用密钥("singleUse": false)。日期以 UNIX 时间戳格式输入。您可以使用工具如 https://www.epochconverter.com/https://it-tools.tech/date-converter 来确定要输入的正确值。

    仅对于一次性密钥,指定 VLAN ID(vlan),或将 vlan 设置为 -1,以创建未打标签的 VXC。

    注意

    只有当相关 MVE vNIC 或 Port 上不存在未打标签的连接时,您才能创建一次性未打标签服务密钥。

    这是 B 端的 VLAN ID。如果您指定了 VLAN ID,Megaport 会检查所请求的 VLAN ID 是否可用。当客户使用该服务密钥在您的 Port 上创建连接时,他们可以为 A 端指定 VLAN ID。

    有关 VLAN ID 的更多信息,请参阅管理 VLAN ID

  4. 完成后,点击 Send 发送请求。

    POST /v2/service/key
    

成功响应会通过验证,并返回 200 OK 状态。

{
    "message": "New service key [106e38ae-eb59-415f-ac81-526a5299851d] generated",
    "terms": "This data is subject to the Acceptable Use Policy https://www.megaport.com/legal/acceptable-use-policy",
    "data": {
        "key": "106e38ae-eb59-415f-ac81-526a5299851d",
        "createDate": 1712277262872,
        "companyId": 1153,
        "companyUid": "160208ae-01e4-4cb9-8d57-03a197bd47a8",
        "companyName": "Megaport Lab",
        "description": "Documentation Service Key - Single Use",
        "productId": 193076,
        "productUid": "8611b645-ea50-46eb-b400-1c2fb858a303",
        "productName": "My new Port",
        "vlan": 3,
        "maxSpeed": 500,
        "preApproved": true,
        "singleUse": true,
        "lastUsed": null,
        "active": true,
        "validFor": {
            "start": 1608506197135,
            "end": 1612015200000
        },
        "expired": true,
        "valid": false,
        "promoCode": null,
        "productDto": {
            "productUid": "8611b645-ea50-46eb-b400-1c2fb858a303",
            "productName": "My new Port",
            "portSpeed": 1000,
            "locationId": 60,
            "vxcPermitted": true,
            "companyUid": "160208ae-01e4-4cb9-8d57-03a197bd47a8",
            "companyName": "Megaport Lab",
            "connectType": "DEFAULT",
            "productId": 193076,
            "productType": "MEGAPORT",
            "provisioningStatus": "LIVE",
            "createDate": 1712268634020,
            "createdBy": "0b367492-186d-47ab-96e0-34ca03d29dcd",
            "terminateDate": null,
            "liveDate": 1712268694790,
            "market": "US",
            "costCentre": "Optional finance reference",
            "usageAlgorithm": "NOT_POST_PAID",
            "marketplaceVisibility": false,
            "secondaryName": null,
            "lagPrimary": false,
            "lagId": null,
            "aggregationId": null,
            "contractStartDate": 1712268694807,
            "contractEndDate": 1714831200000,
            "contractTermMonths": 1,
            "associatedVxcs": [],
            "associatedIxs": [],
            "attributeTags": {},
            "virtual": false,
            "buyoutPort": false,
            "locked": false,
            "adminLocked": false,
            "diversityZone": null,
            "nserviceId": 521477,
            "cancelable": true
        }
    }
}

新的服务密钥现在会显示在 Megaport Portal 中。

编辑或禁用密钥

您可以编辑服务密钥的详细信息或永久禁用它。

您可能会出于多种原因需要禁用密钥。例如,您为某个 Port 创建了一个服务密钥并与您的客户共享,但在客户使用该密钥创建连接之前,该 Port 变得不可用,您希望阻止客户使用这个服务密钥。

编辑或禁用服务密钥的方法

  1. 在 Postman 中,打开左侧导航栏的 Connections 文件夹,并选择 Service Keys > PUT Update Service Key

  2. 根据需要编辑服务密钥的详细信息。

  3. 若要永久禁用服务密钥,请将 active 参数设置为 false

共享密钥

您可以按照自己的偏好共享服务密钥,例如通过电子邮件或即时消息。

注意

服务密钥的接收方无法更改或修改服务密钥参数。

使用服务密钥创建 VXC

收到服务密钥后,您可以使用服务密钥创建 VXC,以连接服务密钥中定义的 A 端接入点和您的 B 端接入点。

使用服务密钥创建 VXC 的方法

  1. 在 Postman 中,打开左侧导航栏的 Connections 文件夹,并选择 Service Keys > POST Create VXC with a Service Key

  2. 在请求的 Body 中指定配置信息。

    • productUid - 输入您在 Megaport 站点的 Port 的 productUid

    • bEnd: productUid - 输入来自服务密钥查询的 productUid 位置。

    • serviceKey- Enter the full service key.

    • ratelimit - 指定一个不超过服务密钥上设置的最大速率的 ratelimit

    • term - 指定 VXC 的合约期限。有效值为 1、12、24、36、48 和 60 个月。如果在订购 VXC 时未指定 term,则默认为 1(无最低期限)。

    • shutdown - 您可以临时关闭并重新启用 VXC。有效值为 true(关闭)和 false(启用)。如果未提供,则默认为 false(启用)。

    • promoCode - 您可以为服务订单输入促销代码。该代码不会被验证,因此如果代码不存在或不适用于该服务,调用仍会成功。

    • vlan - (可选)首选 A 端 VLAN。为此连接指定一个未使用的 VLAN ID。

      此 VLAN ID 必须在该 Port 上唯一,范围为 2 至 4093。如果您指定的 VLAN ID 已被使用,系统会显示下一个可用的 VLAN 号码。VLAN ID 必须唯一才能继续下单。如果您未指定值,Megaport 将自动分配。

      提供方侧终端的 B 端 VLAN 会根据服务密钥自动填充。

    {
        "productUid": "7fba50bb-ac35-465b-9b8b-9a6d7335ec7a",
        "associatedVxcs": [
            {
                "productName": "VXC from service key",
                "rateLimit": 100,
                "term": 12,
                "shutdown": false,
                "promoCode": "promox3mnthfree2",
                "serviceKey": "106e38ae-eb59-415f-ac81-526a5299851d",
                "aEnd": {
                    "vlan": 2
                },
                "bEnd": {
                    "productUid": "8611b645-ea50-46eb-b400-1c2fb858a303"
                }
            }
        ]
    }
    
  3. 完成后,点击 Send 发送请求。

    POST /v3/networkdesign/buy
    

    提示

    如需在下单前测试请求并查看价格详情,请使用同样的 Body 配置调用 /v3/networkdesign/validate 端点。

成功响应会通过校验,并具有 200 OK 状态码。

{
  "message": "VXC [399f0fd8-8a69-4e15-abdb-537b0cb8a858] created. ",
  "terms": "This data is subject to the Acceptable Use Policy https://www.megaport.com/legal/acceptable-use-policy",
  "data": [
    {
      "createDate": 1610140443499,
      "vxcOrderId": 55791,
      "payerMegaPortId": 74841,
      "nonPayerMegaPortId": 39950,
      "payerMegaPortName": "My LA API Port",
      "nonPayerMegaPortName": "BNE5-01-10G",
      "payerCompanyId": 15,
      "nonPayerCompanyId": 28,
      "payerLocationId": 60,
      "nonPayerLocationId": 44,
      "salesId": null,
      "payerCompanyName": "Megaport Lab",
      "nonPayerCompanyName": "6YS",
      "payerMegaPortNsId": 167551,
      "nonPayerMegaPortNsId": 90147,
      "payerVlanId": 2,
      "nonPayerVlanId": 373,
      "payerInnerVlanId": null,
      "nonPayerInnerVlanId": null,
      "payerApproverName": "Test Name",
      "payerApproverId": 32278,
      "nonPayerApproverName": null,
      "nonPayerApproverId": null,
      "payerApproval": 1610140443263,
      "nonPayerApproval": 1610140443308,
      "fixedTerm": true,
      "duration": 1,
      "rollover": true,
      "serviceName": "from My LA API Port to BNE5-01-10G",
      "payerStatus": "APPROVED",
      "nonPayerStatus": "APPROVED",
      "speed": 100,
      "distanceBand": "ZONE",
      "intercapPath": "",
      "awsId": null,
      "promoCode": null,
      "rateType": "MONTHLY",
      "vxcJTechnicalServiceId": 74842,
      "vxcJTechnicalServiceUid": "399f0fd8-8a69-4e15-abdb-537b0cb8a858",
      "provisionDate": 1610140443232,
      "orderType": "NEW",
      "monthlyDiscountAmount": null,
      "discountMonths": null,
      "amazonDirectConnectConfigDto": null,
      "amsixConnectConfigDto": null,
      "webAirProvItem": null,
      "sdrcProvItem": null,
      "rate": null,
      "setup": null,
      "asn": null,
      "bgpPassword": null,
      "usageAlgorithm": "POST_PAID_HOURLY_SPEED_LONG_HAUL_VXC",
      "costCentre": null,
      "azureServiceKey": null,
      "oracleVirtualCircuitId": null,
      "serviceKey": "106e38ae-eb59-415f-ac81-526a5299851d",
      "connectType": "DEFAULT",
      "payerConfig": {},
      "nonPayerConfig": {},
      "attributeTags": {},
      "fullyApproved": true
    }
  ]
}

在订购服务密钥 VXC 之后,系统会向你要连接的公司发送通知,接收方公司可以接受或拒绝该密钥。其不能更改密钥,但可以在接受之前请求修改服务密钥参数。

该服务密钥 VXC 将显示在两家公司的 Megaport Portal 中。