共用方式為


使用合作夥伴中心 API 計劃新商業訂閱的更改

適用於:合作夥伴中心

本文介紹如何使用合作夥伴中心 API 計劃新商業 訂閱的更改,這些更改僅在續訂時進行。 此 API 支援基於許可的新商業訂閱和軟體訂閱。

備註

授權型服務的新商務體驗包含許多新功能,可供所有 雲端解決方案提供者 (CSP) 使用。 如需詳細資訊,請參閱 新的商務體驗概觀

通過創建計劃的更改,您可以在下次續訂時自動修改訂閱。 通過計劃更改,您可以選擇增加或減少許可證數量、修改計費期限和頻率,甚至選擇升級 SKU。 通過安排更改,您可以在續訂時對訂閱進行修改,而不是在當前期限內立即進行修改。

這很重要

如果您在續訂日期之前進行中期(即時)更改,則之前計劃在續訂時發生的所有計劃更改都將被刪除。

先決條件

  • 合作夥伴中心身份驗證中所述的憑證。 此案例支援使用獨立應用程式和 App+使用者認證進行驗證。

  • 客戶識別碼 (customer-tenant-id)。 如果您不知道客戶的標識碼,您可以在 合作夥伴中心 中選取 [客戶] 工作區,然後從客戶清單中找到該客戶,接著選取 [帳戶]。 在客戶的 [帳戶] 頁面上,在 [客戶帳戶資訊] 區段中尋找 Microsoft ID。 Microsoft ID 與客戶 ID (customer-tenant-id) 相同。

  • 訂用帳戶標識碼。

  • 在訂閱上啟用了自動續訂。

合作夥伴中心方法論

若要在合作夥伴中心計劃訂閱的更改,請執行以下作:

  1. 選取客戶

  2. 選擇要為其計劃更改的訂閱。

  3. 啟用 Auto-renew。

  4. 選擇 管理續訂

  5. 對訂閱進行修改,以便在續訂時進行。

  6. 選擇 Ok關閉 側面板。

  7. 選擇 提交 以保存更改。

備註

續訂將在學期的最後一天后處理,從第二天的 12:00 AM UTC 開始。 續訂在佇列中處理,最多可能需要 24 小時才能處理。

C#

要為客戶的訂閱安排更改,請執行以下作:

  1. 按ID獲取訂閱
  2. 獲取 Scheduled transition eligibility type 的過渡資格
  3. 創建一個 ScheduledNextTermInstructions 物件並將其設置為訂閱的屬性。
  4. 調用 Patch() 方法以使用計畫的更改更新訂閱。
var selectedSubscription = subscriptionOperations.Get();
selectedSubscription.ScheduledNextTermInstructions = new ScheduledNextTermInstructions
{
    Product = new ProductTerm
    {
        ProductId = changeToProductId,
        SkuId = changeToSkuId,
        AvailabilityId = changeToAvailabilityId,
        BillingCycle = changeToBillingCycle,
        TermDuration = changeToTermDuration,
    },
    Quantity = changeToQuantity,
    customTermEndDate = DateTime,
};
var updatedSubscription = subscriptionOperations.Patch(selectedSubscription);

要為客戶的訂閱安排更改,其中所需的計劃更改是針對其他產品:

  1. 按ID獲取訂閱
  2. 獲取 Scheduled transition eligibility type 的過渡資格
  3. 調用 Patch() 方法以使用計畫的更改更新訂閱。

REST 要求

請求語法

方法 請求網址識別碼 (URI)
補丁 {baseURL}/v1/customers/{customer-tenant-id}/subscriptions/{subscription-id} HTTP/1.1

URI 參數

下表列出了調用 API 所需的查詢參數。

名稱 類型 為必填項目 說明
客戶租戶識別碼 (customer-tenant-id) 全域唯一識別碼 (GUID) 與客戶對應的 GUID。
訂閱ID 全域唯一識別碼 (GUID) 與訂閱對應的 GUID。

請求標頭

如需詳細資訊,請參閱合作夥伴中心 REST 標頭

請求主體

請求正文中需要一個完整的 Subscription 資源,並 scheduledNextTermInstructions 定義了 property。 要為您的訂閱安排更改,請確保將 AutoRenewEnabled 屬性設置為 true

有關具有轉化的銷售結束 (EndofSaleWithConversions) 選件的可用性 ID:

  1. GetTransitionEligibility 返回 CatalogItemID。

    一。 確保設置 Scheduled eligibility type (計劃資格類型),否則預設為 immediate。

  2. 然後使用 CatalogItemID 提取 availabilityID。

備註

如果您使用 GET 可用性來確定 scheduledNextTerm 說明的可用性,並且所有條款都處於 EOS 狀態,您將收到一個空清單。 確定有效路徑的最佳方法是調用 GetTransitionEligibilty API 以返回有效選項。

領域 類型 為必填項目 說明
scheduledNextTerm說明 物件 定義訂閱的 next term 說明。 該屬性包含 product 物件和 quantity 欄位。

範例請求

PATCH https://api.partnercenter.microsoft.com/v1/customers/<customer-tenant-id>/subscriptions/<subscription-id> HTTP/1.1
Authorization: Bearer <token>
Accept: application/json
MS-RequestId: ca7c39f7-1a80-43bc-90d8-ee7d1cad3831
MS-CorrelationId: aaaa0000-bb11-2222-33cc-444444dddddd
If-Match: <etag>
Content-Type: application/json
Content-Length: 1029
Expect: 100-continue
Connection: Keep-Alive

{
    "id": "6e7aa601-629e-461b-8933-0898c3cc3c7c",
    "offerId": "DZH318Z0BXWC:0001:DZH318Z0BMJX",
    "offerName": "offer Name",
    "friendlyName": "friendly Name",
    "quantity": 1,
    "customTermEndDate": "2019-01-09T00:21:45.9263727",
    "unitType": "License(s)",
    "hasPurchasableAddons": false,
    "creationDate": "2019-01-04T01:00:12.6647304Z",
    "effectiveStartDate": "2019-01-09T00:21:45.9263727+00:00",
    "commitmentEndDate": "2019-02-08T00:21:45.9263727+00:00",
    "status": "active",
    "autoRenewEnabled": true,
    "scheduledNextTermInstructions": { 
      "product": { 
         "productId":  "DG7GMGF0DVSV", 
         "skuId":  "000P", 
         "availabilityId":  "DG7GMGF0F3Q9", 
         "billingCycle":  "Annual", 
         "termDuration":  "P3Y",
         "promotionId": "39NFJQT1PFPJ:000H:39NFJQT1Q5DK"
        }, 
      "quantity":  1 
      "customTermEndDate" : "2019-01-09T00:21:45.9263727",
     },  // original value = null 
    "isTrial": false,
    "billingType": "license",
    "billingCycle": "monthly",
    "termDuration": "P1M",
    "refundOptions": [{
        "type": "Full",
        "expiresAt": "2019-01-10T00:21:45.9263727+00:00"
    }],
    "isMicrosoftProduct": false,
    "partnerId": "",
    "contractType": "subscription",
    "publisherName": "publisher Name",
    "orderId": "ImxjLNL4_fOc-2KoyOxGTZcrlIquzls11",
    "attributes": {"objectType": "Subscription"},
}

REST 響應

如果請求成功,此方法將在回應正文中返回更新的 Subscription 資源屬性。

回應成功和錯誤碼

每個回應都附帶一個指示成功或失敗的 HTTP 狀態代碼,以及其他調試資訊。 使用網路追蹤工具來讀取此程式代碼、錯誤類型和其他參數。 如需完整清單,請參閱錯誤代碼

回應範例

HTTP/1.1 200 OK
Content-Length: 1322
Content-Type: application/json; charset=utf-8
MS-RequestId: ca7c39f7-1a80-43bc-90d8-ee7d1cad3831
MS-CorrelationId: aaaa0000-bb11-2222-33cc-444444dddddd
X-Locale: en-US

{
    "id": "6e7aa601-629e-461b-8933-0898c3cc3c7c",
    "offerId": "DZH318Z0BXWC:0001:DZH318Z0BMJX",
    "offerName": "offer Name",
    "friendlyName": "friendly Name",
    "quantity": 1,
    "customTermEndDate": "2019-01-09T00:21:45.9263727",
    "unitType": "License(s)",
    "hasPurchasableAddons": false,
    "creationDate": "2019-01-04T01:00:12.6647304Z",
    "effectiveStartDate": "2019-01-09T00:21:45.9263727+00:00",
    "commitmentEndDate": "2019-02-08T00:21:45.9263727+00:00",
    "status": "active",
    "autoRenewEnabled": true,
    "scheduledNextTermInstructions": { 
      "product": { 
         "productId":  "DG7GMGF0DVSV", 
         "skuId":  "000P", 
         "availabilityId":  "DG7GMGF0F3Q9", 
         "billingCycle":  "Annual", 
         "termDuration":  "P3Y",
         "promotionId": "39NFJQT1PFPJ:000H:39NFJQT1Q5DK"
        }, 
      "quantity":  1 
      "customTermEndDate": "2019-01-09T00:21:45.9263727",
     },  // original value = null 
    "isTrial": false,
    "billingType": "license",
    "billingCycle": "monthly",
    "termDuration": "P1M",
    "refundOptions": [{
        "type": "Full",
        "expiresAt": "2019-01-10T00:21:45.9263727+00:00"
    }],
    "isMicrosoftProduct": false,
    "partnerId": "",
    "contractType": "subscription",
    "publisherName": "publisher Name",
    "orderId": "ImxjLNL4_fOc-2KoyOxGTZcrlIquzls11",
    "attributes": {"objectType": "Subscription"},
}