Получение списка номеров SKU для продукта (по странам или регионам)
Вы можете получить коллекцию номеров SKU, доступных в стране или регионе для определенного продукта с помощью API Центра партнеров.
Необходимые компоненты
Учетные данные, описанные в статье о проверке подлинности в Центре партнеров. Этот сценарий поддерживает проверку подлинности с помощью автономных учетных данных приложения и приложения и пользователя.
Идентификатор продукта.
C#
Чтобы получить список номеров SKU для продукта, выполните указанные ниже действия.
Получите интерфейс для операций конкретного продукта, выполнив действия, описанные в разделе "Получение продукта по идентификатору".
В интерфейсе выберите свойство Skus , чтобы получить интерфейс с доступными операциями для номеров SKU.
Вызовите метод Get() или GetAsync(), чтобы получить коллекцию доступных номеров SKU для продукта.
(Необязательно) Выберите область резервирования с помощью метода ByReservationScope().
(Необязательно) Используйте метод ByTargetSegment() для фильтрации номеров SKU по целевому сегменту перед вызовом Get() или GetAsync().
IAggregatePartner partnerOperations;
string countryCode;
string productId;
string productIdForAzureReservation;
string targetSegment;
// Get the available SKUs.
var skus = partnerOperations.Products.ByCountry(countryCode).ById(productId).Skus.Get();
// Get the available SKUs, filtered by target segment.
var segmentSkus = partnerOperations.Products.ByCountry(countryCode).ById(productId).Skus.ByTargetSegment(targetSegment).Get();
// Get the skus for an Azure reservation product which are applicable to Microsoft Azure (MS-AZR-0145P) subscriptions only.
var skus = partnerOperations.Products.ByCountry(countryCode).ById(productIdForAzureReservation).Skus.Get();
// Get the skus for an Azure reservation product which are applicable to Azure plans only.
var skus = partnerOperations.Products.ByCountry(countryCode).ById(productIdForAzureReservation).Skus.ByReservationScope("AzurePlan").Get();
Java
Пакет SDK для Java центра партнеров можно использовать для управления ресурсами Центра партнеров. Это проект с открытым исходным кодом, поддерживаемый сообществом партнеров и официально не поддерживаемый корпорацией Майкрософт. При необходимости вы можете получить помощь от сообщества или опубликовать проблему в GitHub.
Чтобы получить список номеров SKU для продукта, выполните указанные ниже действия.
Получите интерфейс для операций конкретного продукта, выполнив действия, описанные в разделе "Получение продукта по идентификатору".
В интерфейсе выберите функцию getSkus , чтобы получить интерфейс с доступными операциями для SKU.
Вызовите функцию get(), чтобы получить коллекцию доступных номеров SKU для продукта.
(Необязательно) Используйте функцию byTargetSegment(), чтобы отфильтровать номера SKU по целевому сегменту перед вызовом функции get().
// IAggregatePartner partnerOperations;
// String countryCode;
// String productId;
// String targetSegment;
// Get the available SKUs.
ResourceCollection<Sku> skus = partnerOperations.getProducts().byCountry(countryCode).byId(productId).getSkus().get();
// Get the available SKUs, filtered by target segment.
var segmentSkus = partnerOperations.getProducts().byCountry(countryCode).byId(productId).getSkus().byTargetSegment(targetSegment).get();
PowerShell
Модуль PowerShell Центра партнеров можно использовать для управления ресурсами Центра партнеров. Это проект с открытым исходным кодом, поддерживаемый сообществом партнеров и официально не поддерживаемый корпорацией Майкрософт. При необходимости вы можете получить помощь от сообщества или опубликовать проблему в GitHub.
Чтобы получить список номеров SKU для продукта, выполните указанные ниже действия.
(Необязательно) Укажите параметр "Сегмент", чтобы отфильтровать номера SKU по целевому сегменту.
# $productId
# $targetSegment
# Get the available SKUs.
Get-PartnerProductSku -ProductId $productId
# Get the available SKUs, filtered by target segment.
Get-PartnerProductSku -ProductId $productId -Segment $targetSegment
Запрос REST
Синтаксис запроса
Способ | URI запроса |
---|---|
GET | {baseURL}/v1/products/{product-id}/skus?country={country-code}&targetSegment={target-segment} HTTP/1.1 |
Параметры универсального кода ресурса (URI)
Используйте следующий путь и параметры запроса, чтобы получить список номеров SKU для продукта.
Имя. | Type | Обязательно | Описание |
---|---|---|---|
product-id | строка | Да | Строка, определяющая продукт. |
код страны | строка | Да | Идентификатор страны или региона. |
целевой сегмент | строка | Нет | Строка, определяющая целевой сегмент, используемый для фильтрации. |
резервированиеScope | строка | Нет | При запросе списка номеров SKU для продукта резервирования Azure укажите reservationScope=AzurePlan , чтобы получить список номеров SKU, применимых к AzurePlan. Исключите этот параметр, чтобы получить список номеров SKU для продуктов резервирования Azure, применимых к подпискам Microsoft Azure (MS-AZR-0145P). |
Заголовки запросов
Дополнительные сведения см. в статье о заголовках REST Центра партнеров.
Текст запроса
Нет.
Примеры запросов
Получите список номеров SKU для данного продукта:
GET http://api.partnercenter.microsoft.com/v1/products/DZH318Z0BPS6/skus?country=US HTTP/1.1
Authorization: Bearer <token>
Accept: application/json
MS-RequestId: 18b41adf-29b5-48eb-b14f-c9683a4e5b7d
MS-CorrelationId: aaaa0000-bb11-2222-33cc-444444dddddd
Получите список номеров SKU для продукта резервирования Azure. Включайте только номера SKU, применимые к планам Azure, а не подписки Microsoft Azure (MS-AZR-0145P):
GET http://api.partnercenter.microsoft.com/v1/products/DZH318Z0BQ5S/skus?country=US&reservationScope=AzurePlan HTTP/1.1
Authorization: Bearer <token>
Accept: application/json
MS-RequestId: 18b41adf-29b5-48eb-b14f-c9683a4e5b7d
MS-CorrelationId: aaaa0000-bb11-2222-33cc-444444dddddd
Получите список номеров SKU для продукта резервирования Azure. Включайте только номера SKU, применимые к подпискам Microsoft Azure (MS-AZR-0145P), а не к планам Azure:
GET http://api.partnercenter.microsoft.com/v1/products/DZH318Z0BQ5S/skus?country=US HTTP/1.1
Authorization: Bearer <token>
Accept: application/json
MS-RequestId: 18b41adf-29b5-48eb-b14f-c9683a4e5b7d
MS-CorrelationId: aaaa0000-bb11-2222-33cc-444444dddddd
Ответ REST
В случае успешного выполнения текст ответа содержит коллекцию ресурсов SKU .
Коды успешного выполнения и ошибок в ответе
Каждый ответ сопровождается кодом состояния HTTP, обозначающим успешное или неудачное выполнение, и дополнительными сведениями для отладки. Используйте средство трассировки сети, чтобы просматривать этот код, тип ошибки и дополнительные параметры. Полный список см. в разделе "Коды ошибок Центра партнеров".
Этот метод возвращает следующие коды ошибок:
Код состояния HTTP | Код ошибки | Description |
---|---|---|
403 | 400030 | Доступ к запрошенной целиSegment запрещен. |
404 | 400013 | Родительский продукт не найден. |
Пример ответа для резервирования виртуальных машин 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: 18b41adf-29b5-48eb-b14f-c9683a4e5b7d,18b41adf-29b5-48eb-b14f-c9683a4e5b7d
X-Locale: en-US,en-US
X-SourceFiles: =?UTF-8?B?QzpcVXNlcnNcbWFtZW5kZVxkZXZcZHBzLXJwZVxSUEUuUGFydG5lci5TZXJ2aWNlLkNhdGFsb2dcV2ViQXBpc1xDYXRhbG9nU2VydmljZS5WMi5XZWJcdjFccHJvZHVjdHNcRFpIMzE4WjBCUTVTXHNrdXM=?=
X-Powered-By: ASP.NET
Date: Thu, 15 Mar 2018 21:06:03 GMT
Content-Length: 50917
{
"totalCount": 40,
"items": [
{
"id": "0001",
"productId": "DZH318Z0BQ5S",
"title": "Reserved VM Instance, Standard_ND12s, US West 2, 1 Year",
"description": "Reserved Virtual Machines Instance, Standard_ND12s, US West 2, 1 Year",
"minimumQuantity": 1,
"maximumQuantity": 999999999,
"isTrial": false,
"supportedBillingCycles": [
"one_time"
],
"purchasePrerequisites": [
"AzureSubscriptionRegistration",
"InventoryCheck"
],
"provisioningVariables": [
"Scope",
"SubscriptionId"
],
"dynamicAttributes": {
"armSkuName": "Standard_ND12s",
"cores": "12",
"ram": "224",
"skuDisplayName": "ND12",
"category": "GPU",
"armRegionName": "westus2",
"duration": "1Year",
"region": "US West 2",
"diskType": "Hdd"
},
"links": {
"availabilities": {
"uri": "/products/DZH318Z0BQ5S/skus/0001/availabilities?country=US",
"method": "GET",
"headers": []
},
"self": {
"uri": "/products/DZH318Z0BQ5S/skus/0001?country=US",
"method": "GET",
"headers": []
}
}
},
{
"id": "0002",
"productId": "DZH318Z0BQ5S",
"title": "Reserved VM Instance, Standard_ND6s, US West 2, 1 Year",
"description": "Reserved Virtual Machines Instance, Standard_ND6s, US West 2, 1 Year",
"minimumQuantity": 1,
"maximumQuantity": 999999999,
"isTrial": false,
"supportedBillingCycles": [
"one_time"
],
"purchasePrerequisites": [
"AzureSubscriptionRegistration",
"InventoryCheck"
],
"provisioningVariables": [
"Scope",
"SubscriptionId"
],
"dynamicAttributes": {
"armSkuName": "Standard_ND6s",
"cores": "6",
"ram": "112",
"skuDisplayName": "ND6",
"category": "GPU",
"armRegionName": "westus2",
"duration": "1Year",
"region": "US West 2",
"diskType": "Hdd"
},
"links": {
"availabilities": {
"uri": "/products/DZH318Z0BQ5S/skus/0002/availabilities?country=US",
"method": "GET",
"headers": []
},
"self": {
"uri": "/products/DZH318Z0BQ5S/skus/0002?country=US",
"method": "GET",
"headers": []
}
}
}
[...]
],
"links": {
"self": {
"uri": "/products/DZH318Z0BQ5S/skus?country=US",
"method": "GET",
"headers": []
}
},
"attributes": {
"objectType": "Collection"
}
}
Пример ответа для новых коммерческих служб на основе лицензий
Примечание.
Новые возможности коммерческой торговли для служб на основе лицензий включают множество новых возможностей и доступны для всех поставщик облачных решений (ПОСТАВЩИКОВ УСЛУГ). Дополнительные сведения см . в обзоре новых коммерческих возможностей.
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: 18b41adf-29b5-48eb-b14f-c9683a4e5b7d,18b41adf-29b5-48eb-b14f-c9683a4e5b7d
X-Locale: en-US,en-US
X-SourceFiles: =?UTF-8?B?QzpcVXNlcnNcbWFtZW5kZVxkZXZcZHBzLXJwZVxSUEUuUGFydG5lci5TZXJ2aWNlLkNhdGFsb2dcV2ViQXBpc1xDYXRhbG9nU2VydmljZS5WMi5XZWJcdjFccHJvZHVjdHNcRFpIMzE4WjBCUTVTXHNrdXM=?=
X-Powered-By: ASP.NET
Date: Thu, 15 Mar 2018 21:06:03 GMT
Content-Length: 50917
{
"totalCount": 40,
"items": [
{
{
"id": "0001",
"productId": "CFQ7TTC0LH18",
"title": "Microsoft 365 Business Basic",
"description": "Best for businesses that need professional email, cloud file storage, and online meetings & chat. Desktop versions of Office apps like Excel, Word, and PowerPoint not included. For businesses with up to 300 employees.",
"minimumQuantity": 1,
"maximumQuantity": 300,
"isTrial": false,
"supportedBillingCycles": [
"annual",
"monthly"
],
"purchasePrerequisites": [
"MicrosoftCloudAgreement"
],
"inventoryVariables": [],
"provisioningVariables": [],
"actions": [
"Refund"
],
"dynamicAttributes": {
"isMicrosoftProduct": true,
"hasConstraints": true,
"isAddon": false,
"prerequisiteSkus": [],
"isSoftwareAssuranceApplicable": false,
"upgradeTargetOffers": [
"CFQ7TTC0LDPB:0001",
"CFQ7TTC0LF8Q:0001"
…
],
"provisioningId": "3b555118-da6a-4418-894f-7df1e2096870",
"internal": false
},
"links": {
"availabilities": {
"uri": "/products/CFQ7TTC0LH18/skus/0001/availabilities?country=US",
"method": "GET",
"headers": []
},
"self": {
"uri": "/products/CFQ7TTC0LH18/skus/0001?country=US",
"method": "GET",
"headers": []
}
}
} [...]
],
"links": {
"self": {
"uri": "/products/DZH318Z0BQ5S/skus?country=US",
"method": "GET",
"headers": []
}
},
"attributes": {
"objectType": "Collection"
}
}