使用可用性識別碼取得指定產品和 SKU 的可用性。 可用性標識碼是可變且動態的,會定期重新發行。 合作夥伴在提交購物車項目或執行其他需要可用性 ID 的活動時,應始終確保獲取當前可用性。
必要條件
憑證,如合作夥伴中心身份驗證所述。 此案例支援使用獨立應用程式和 App+使用者認證進行驗證。
產品標識碼。
SKU 標識碼。
可用性識別碼。
C#
若要取得特定可用性的詳細資訊,請先使用依 ID 取得 SKU中的步驟,來取得特定SKU 作業的介面。 從產生的介面中,選取 Availabilities屬性以取得具有Availabilities 可用作業的介面。 之後,請將可用性標識符傳遞至 ById() 方法來取得該特定可用性的作業,然後呼叫 Get() 或 GetAsync() 以擷取可用性詳細數據。
IAggregatePartner partnerOperations;
string countryCode;
string productId;
string skuId;
string availabilityId;
// Get the availability details.
var availability = partnerOperations.Products.ByCountry(countryCode).ById(productId).Skus.ById(skuId).Availabilities.ById(availabilityId).Get();
Java
合作夥伴中心 Java SDK 可用來管理合作夥伴中心資源。 這是合作夥伴社群維護的開放原始碼專案,Microsoft未正式支援。 如果您遇到問題,可以從社群取得協助或在 GitHub 上提出問題。
若要取得特定可用性的詳細資訊,請先使用依 ID 取得 SKU中的步驟,來取得特定SKU 作業的介面。 從產生的介面中,選取 getAvailabilities 函式,以取得具有 Availabilities 可用作業的介面。 之後,請將可用性標識符傳遞至 byId() 函式以取得該特定可用性的作業,然後呼叫 get() 函式以擷取可用性詳細數據。
IAggregatePartner partnerOperations;
String countryCode;
String productId;
String skuId;
String availabilityId;
// Get the availability details.
Availability availability = partnerOperations.getProducts().byCountry(countryCode).byId(productId).getSkus().byId(skuId).getAvailabilities().byId(availabilityId).get();
PowerShell
合作夥伴中心 PowerShell 模組可用來管理合作夥伴中心資源。 這是合作夥伴社群維護的開放原始碼專案,Microsoft未正式支援。 如果您遇到問題,可以從社群取得協助或在 GitHub 上提出問題。
若要取得特定可用性的詳細數據,請執行 Get-PartnerProductAvailability 並指定 AvailabilityId、CountryCode、ProductId 和 SkuId 參數來擷取可用性詳細數據。
Get-PartnerProductAvailability -Product $productId -SkuId $skuId -AvailabilityId $availabilityId
REST 要求
請求語法
| 方法 | 要求 URI |
|---|---|
| GET | {baseURL}/v1/products/{product-id}/skus/{sku-id}/availabilities/{availability-id}?country={country-code} HTTP/1.1 |
URI 參數
使用下列路徑和查詢參數,以使用可用性識別碼取得特定可用性。
| 名稱 | 類型 | 必要 | 描述 |
|---|---|---|---|
| 產品編號 | 字串 | Yes | 識別產品的 GUID 格式化字串。 |
| sku-id | 字串 | Yes | 識別 SKU 的 GUID 格式字串。 |
| availability-id(可用性識別碼) | 字串 | Yes | 識別可用性的一串 GUID 格式化字串。 |
| 國家代碼 | 字串 | Yes | 國家/地區標識碼。 |
| 包括生命週期狀態 | 字串 | 否 | 字串型旗標,可設定為 true 以傳回新商務授權型產品的生命周期狀態值。 如果未包含旗標,則不會傳回這些值。 |
請求標頭
如需詳細資訊,請參閱合作夥伴中心 REST 標頭。
請求主體
無。
要求範例
GET http://api.partnercenter.microsoft.com/v1/products/DZH318Z0BQ3Q/skus/0001/availabilities/DZH318XZXPHL?country=US HTTP/1.1
Authorization: Bearer <token>
Accept: application/json
MS-RequestId: 2e12a576-ded5-437e-a5ec-dbfbcbd1624c
MS-CorrelationId: aaaa0000-bb11-2222-33cc-444444dddddd
X-Locale: en-US
MS-PartnerCenter-Client: Partner Center .NET SDK
Host: api.partnercenter.microsoft.com
重要
自 2023 年 6 月起,最新的合作夥伴中心 .NET SDK 3.4.0 版現已封存。 您可以從 GitHub 下載 SDK 版本,以及 包含實用資訊的自述檔 。
鼓勵合作夥伴繼續使用 合作夥伴中心 REST API。
REST 回應
如果成功,回應內容會包含一個可用性資源。
回應成功和錯誤碼
每個回應都有一個 HTTP 狀態代碼,指出成功或失敗和額外的偵錯資訊。 使用網路追蹤工具來讀取此程式代碼、錯誤類型和其他參數。 如需完整清單,請參閱 合作夥伴中心錯誤碼。
此方法會傳回下列錯誤碼:
| HTTP 狀態碼 | 錯誤碼 | 描述 |
|---|---|---|
| 404 | 400013 | 找不到產品。 |
| 404 | 400018 | 找不到 SKU。 |
| 404 | 400019 | 找不到可用性。 結帳購物車時,可能會發生此錯誤。 收到此錯誤的合作夥伴應發出新的 GET 請求,以確保其具有目前的可用性 ID,然後重試購物車結帳。 |
Azure 虛擬機器保留的回應範例(Azure 方案)
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
Server: Microsoft-IIS/10.0
MS-CorrelationId: aaaa0000-bb11-2222-33cc-444444dddddd,aaaa0000-bb11-2222-33cc-444444dddddd
MS-RequestId: 2e12a576-ded5-437e-a5ec-dbfbcbd1624c,2e12a576-ded5-437e-a5ec-dbfbcbd1624c
X-Locale: en-US,en-US
X-SourceFiles: =?UTF-8?B?QzpcVXNlcnNcbWFtZW5kZVxkZXZcZHBzLXJwZVxSUEUuUGFydG5lci5TZXJ2aWNlLkNhdGFsb2dcV2ViQXBpc1xDYXRhbG9nU2VydmljZS5WMi5XZWJcdjFccHJvZHVjdHNcRFpIMzE4WjBCUTNRXHNrdXNcMDAwMVxhdmFpbGFiaWxpdGllc1xEWkgzMThaMEhNS1E=?=
X-Powered-By: ASP.NET
Date: Wed, 14 Mar 2018 22:19:43 GMT
Content-Length: 440
{
"id": "DZH318XZXPHL",
"productId": "DZH318Z0BQ3Q",
"skuId": "0001",
"catalogItemId": "DZH318Z0BQ3Q:0001:DZH318XZXPHL",
"defaultCurrency": {
"code": "USD",
"symbol": "$"
},
"segment": "commercial",
"country": "US",
"isPurchasable": true,
"isRenewable": false,
"terms": [{
"duration": "P1Y",
"description": "1 Year Prepaid"
}],
"product": { ... },
"sku": { ... },
"links": {
"self": {
"uri": "/products/DZH318Z0BQ3Q/skus/0001/availabilities/DZH318XZXPHL?country=US",
"method": "GET",
"headers": []
}
}
}
新商務授權型服務的回應範例
注意
授權型服務的新商務體驗包含許多新功能,且適用於所有 雲端解決方案提供者 (CSP)。 如需詳細資訊,請參閱 新的商務體驗概觀。
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
Server: Microsoft-IIS/10.0
MS-CorrelationId: aaaa0000-bb11-2222-33cc-444444dddddd,aaaa0000-bb11-2222-33cc-444444dddddd
MS-RequestId: 70324727-62d8-4195-8f99-70ea25058d02,70324727-62d8-4195-8f99-70ea25058d02
X-Locale: en-US,en-US
X-SourceFiles: =?UTF-8?B?QzpcVXNlcnNcbWFtZW5kZVxkZXZcZHBzLXJwZVxSUEUuUGFydG5lci5TZXJ2aWNlLkNhdGFsb2dcV2ViQXBpc1xDYXRhbG9nU2VydmljZS5WMi5XZWJcdjFccHJvZHVjdHNcRFpIMzE4WjBCUTNRXHNrdXNcMDAwMVxhdmFpbGFiaWxpdGllcw==?=
X-Powered-By: ASP.NET
Date: Wed, 14 Mar 2018 22:19:37 GMT
Content-Length: 808
{
"id": "CFQ7TTC0K971",
"productId": "CFQ7TTC0LH18",
"skuId": "0001",
"catalogItemId": "CFQ7TTC0LH18:0001:CFQ7TTC0K971",
"defaultCurrency": {
"code": "USD",
"symbol": "$"
},
"segment": "commercial",
"country": "US",
"isPurchasable": true,
"isRenewable": true,
"renewalInstructions": [
{
"applicableTermIds": [
"5aeco6mffyxo"
],
"renewalOptions": [
{
"renewToId": "CFQ7TTC0LH18:0001",
"isAutoRenewable": true
}
]
},
…
],
"terms": [
{
"id": "5aeco6mffyxo",
"duration": "P1Y",
"description": "One-Year commitment for monthly/yearly billing",
"billingCycle": "Annual",
"termLifeCycleState": "GA",
"cancellationPolicies": [
{
"refundOptions": [
{
"sequenceId": 0,
"type": "Full",
"expiresAfter": "P1D"
}
]
}
]
},
…
],
"product": { ... },
"sku": { ... },
"links": {
"self": {
"uri": "/products/CFQ7TTC0LH18/skus/0001/availabilities/CFQ7TTC0K971?country=US",
"method": "GET",
"headers": []
}
}
}