Obter a disponibilidade por ID
Obtém a disponibilidade para o produto especificado e a SKU usando uma ID de disponibilidade. Os IDs de disponibilidade são mutáveis e dinâmicos, são reemitidos regularmente. Os parceiros devem sempre certificar-se de obter a disponibilidade atual ao enviar itens de linha do carrinho ou executar outras atividades que exijam o ID de disponibilidade.
Pré-requisitos
Credenciais conforme descrito na autenticação do Partner Center. Este cenário oferece suporte à autenticação com credenciais autônomas de Aplicativo e Aplicativo+Usuário.
Um ID de produto.
UM ID DE SKU.
Um ID de disponibilidade.
C#
Para obter detalhes de uma disponibilidade específica, comece usando as etapas em Obter uma SKU por ID para obter a interface para as operações de uma SKU específica. Na interface resultante, selecione a propriedade Availabilities para obter uma interface com as operações disponíveis para Disponibilidades. Depois disso, passe o ID de disponibilidade para o método ById() para obter as operações para essa disponibilidade específica e, em seguida, chame Get() ou GetAsync() para recuperar os detalhes de disponibilidade.
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
O SDK Java do Partner Center pode ser usado para gerenciar recursos do Partner Center. É um projeto de código aberto mantido pela comunidade de parceiros e não suportado oficialmente pela Microsoft. Você pode obter ajuda da comunidade ou abrir um problema no GitHub se tiver um problema.
Para obter detalhes de uma disponibilidade específica, comece usando as etapas em Obter uma SKU por ID para obter a interface para as operações de uma SKU específica. Na interface resultante, selecione a função getAvailabilities para obter uma interface com as operações disponíveis para Disponibilidades. Depois disso, passe o ID de disponibilidade para a função byId() para obter as operações para essa disponibilidade específica e, em seguida, chame a função get() para recuperar os detalhes de disponibilidade.
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
O módulo PowerShell do Partner Center pode ser usado para gerenciar recursos do Partner Center. É um projeto de código aberto mantido pela comunidade de parceiros e não suportado oficialmente pela Microsoft. Você pode obter ajuda da comunidade ou abrir um problema no GitHub se tiver um problema.
Para obter detalhes de uma disponibilidade específica, execute Get-PartnerProductAvailability e especifique os parâmetros AvailabilityId, CountryCode, ProductId e SkuId para recuperar os detalhes de disponibilidade.
Get-PartnerProductAvailability -Product $productId -SkuId $skuId -AvailabilityId $availabilityId
Pedido REST
Sintaxe da solicitação
Método | URI do pedido |
---|---|
GET | {baseURL}/v1/products/{product-id}/skus/{sku-id}/availabilities/{availability-id}?country={country-code} HTTP/1.1 |
Parâmetro URI
Use o caminho a seguir e os parâmetros de consulta para obter uma disponibilidade específica usando uma ID de disponibilidade.
Nome | Type | Obrigatório | Description |
---|---|---|---|
identificação do produto | string | Sim | Uma cadeia de caracteres formatada em GUID que identifica o produto. |
ID de SKU | string | Sim | Uma cadeia de caracteres formatada em GUID que identifica a SKU. |
ID de disponibilidade | string | Sim | Uma cadeia de caracteres formatada em GUID que identifica a disponibilidade. |
Código do país | string | Sim | Um ID de país/região. |
Cabeçalhos do pedido
Para obter mais informações, consulte Cabeçalhos REST do Partner Center.
Corpo do pedido
Nenhum.
Exemplo de solicitação
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: 83b644b5-e54a-4bdc-b354-f96c525b3c58
X-Locale: en-US
MS-PartnerCenter-Client: Partner Center .NET SDK
Host: api.partnercenter.microsoft.com
Importante
A partir de junho de 2023, a versão 3.4.0 mais recente do SDK do .NET do Partner Center foi arquivada. Você pode baixar a versão do SDK do GitHub, juntamente com um arquivo readme que contém informações úteis.
Os parceiros são incentivados a continuar a usar as APIs REST do Partner Center.
Resposta do REST
Se for bem-sucedida, o corpo da resposta conterá um recurso de Disponibilidade .
Códigos de sucesso e erro de resposta
Cada resposta vem com um código de status HTTP que indica sucesso ou falha e informações adicionais de depuração. Use uma ferramenta de rastreamento de rede para ler esse código, tipo de erro e parâmetros adicionais. Para obter a lista completa, consulte Códigos de erro do Partner Center.
Esse método retorna os seguintes códigos de erro:
Código de estado HTTP | Código de erro | Description |
---|---|---|
404 | 400013 | O produto não foi encontrado. |
404 | 400018 | SKU não foi encontrado. |
404 | 400019 | Disponibilidade não encontrada. Este erro pode ocorrer ao fazer check-out de um carrinho. Os parceiros que receberem esse erro devem emitir um novo GET para garantir que tenham o ID de disponibilidade atual e repetir o check-out do carrinho. |
Exemplo de resposta para reservas de VM do Azure (plano do Azure)
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
Server: Microsoft-IIS/10.0
MS-CorrelationId: 83b644b5-e54a-4bdc-b354-f96c525b3c58,83b644b5-e54a-4bdc-b354-f96c525b3c58
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": []
}
}
}
Exemplo de resposta para novos serviços baseados em licença de comércio
Nota
As novas experiências de comércio para serviços baseados em licença incluem muitos recursos novos e estão disponíveis para todos os CSPs (Provedor de Soluções na Nuvem). Para obter mais informações, consulte Visão geral de novas experiências comerciais.
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
Server: Microsoft-IIS/10.0
MS-CorrelationId: 83b644b5-e54a-4bdc-b354-f96c525b3c58,83b644b5-e54a-4bdc-b354-f96c525b3c58
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",
"cancellationPolicies": [
{
"refundOptions": [
{
"sequenceId": 0,
"type": "Full",
"expiresAfter": "P1D"
}
]
}
]
},
…
],
"product": { ... },
"sku": { ... },
"links": {
"self": {
"uri": "/products/CFQ7TTC0LH18/skus/0001/availabilities/CFQ7TTC0K971?country=US",
"method": "GET",
"headers": []
}
}
}