Obtener una lista de disponibilidad para una SKU (según el país)Get a list of availabilities for a SKU (by country)

Se aplica a:Applies to:

  • Centro de partnersPartner Center

En este artículo se describe cómo obtener una colección de elementos de disponibilidad en un país determinado para un producto y SKU especificados.This article describes how to get a collection of availabilities in a particular country for a specified product and SKU.

Requisitos previosPrerequisites

  • Credenciales tal como se describen en el artículo Autenticación del Centro de partners.Credentials as described in Partner Center authentication. Este escenario admite la autenticación con las credenciales de aplicación y aplicación independientes.This scenario supports authentication with both standalone App and App+User credentials.

  • Identificador del producto.A product identifier.

  • Identificador de SKU.A SKU identifier.

  • Un país.A country.

C#C#

Para obtener la lista de disponibilidad de una SKU:To get the list of availabilities for a SKU:

  1. Siga los pasos descritos en obtención de una SKU por identificador para obtener la interfaz para las operaciones de una SKU específica.Follow the steps in Get a SKU by ID to get the interface for a specific SKU's operations.

  2. En la interfaz de SKU, seleccione la propiedad Availabilities para obtener una interfaz con las operaciones de disponibilidad.From the SKU interface, select the Availabilities property to get an interface with the operations for availabilities.

  3. Opta Use el método ByTargetSegment () para filtrar las disponibilidades por segmento de destino.(Optional) Use the ByTargetSegment() method to filter the availabilities by target segment.

  4. Llame a get () o GetAsync () para recuperar una colección de las disponibilidades para esta SKU.Call Get() or GetAsync() to retrieve a collection of the availabilities for this SKU.

IAggregatePartner partnerOperations;
string countryCode;
string productId;
string skuId;
string targetSegment;
string productIdForAzureReservation;
string skuIdForAzureReservation;

// Get the availabilities.
var availabilities = partnerOperations.Products.ByCountry(countryCode).ById(productId).Skus.ById(skuId).Availabilities.Get();

// Get the availabilities, filtered by target segment.
var availabilities = partnerOperations.Products.ByCountry(countryCode).ById(productId).Skus.ById(skuId).Availabilities.BySegment(targetSegment).Get();

// Get the availabilities for an Azure reservation product and sku which are applicable to Microsoft Azure (MS-AZR-0145P) subscriptions only.
var availabilities = partnerOperations.Products.ByCountry(countryCode).ById(productIdForAzureReservation).Skus.ById(skuIdForAzureReservation).Availabilities.ByReservationScope("AzurePlan").Get();

// Get the availabilities for an Azure reservation product and sku which are applicable to Azure plans only.
var availabilities = partnerOperations.Products.ByCountry(countryCode).ById(productIdForAzureReservation).Skus.ById(skuIdForAzureReservation).Availabilities.Get();

Solicitud RESTREST request

Sintaxis de la solicitudRequest syntax

MétodoMethod URI de la solicitudRequest URI
GETGET {baseurl}/v1/products/{product-ID}/SKUs/{SKU-ID}/Availabilities? Country = {Country-code} &targetSegment = {Target-Segment} http/1.1{baseURL}/v1/products/{product-id}/skus/{sku-id}/availabilities?country={country-code}&targetSegment={target-segment} HTTP/1.1

Parámetros de URIURI parameters

Use la ruta de acceso y los parámetros de consulta siguientes para obtener una lista de disponibilidad para una SKU.Use the following path and query parameters to get a list of availabilities for a SKU.

NombreName TipoType ObligatorioRequired DescripciónDescription
ID. de productoproduct-id stringstring Yes Cadena que identifica el producto.A string that identifies the product.
identificador de SKUsku-id stringstring Yes Cadena que identifica la SKU.A string that identifies the SKU.
país: códigocountry-code stringstring Yes IDENTIFICADOR de país o región.A country/region ID.
segmento de destinotarget-segment stringstring NoNo Cadena que identifica el segmento de destino usado para filtrar.A string that identifies the target segment used for filtering.
reservationScopereservationScope stringstring NoNo Al consultar una lista de disponibilidad para una SKU de reserva de Azure, especifique reservationScope=AzurePlan para obtener una lista de las disponibilidades que se aplican a AzurePlan.When querying for a list of availabilities for an Azure Reservation SKU, specify reservationScope=AzurePlan to get a list of availabilities which are applicable to AzurePlan. Excluya este parámetro para obtener una lista de las disponibilidades que se aplican a las suscripciones de Microsoft Azure (MS-AZR-0145P).Exclude this parameter to get a list of availabilities which are applicable to Microsoft Azure (MS-AZR-0145P) subscriptions.

Encabezados de solicitudRequest headers

Para obtener más información, consulta Encabezados REST del Centro de partners.For more information, see Partner Center REST headers.

Cuerpo de la solicitudRequest body

Ninguno.None.

Ejemplos de solicitudRequest examples

Disponibilidad de SKU por paísAvailabilities for SKU by country

Siga este ejemplo para obtener una lista de disponibilidad para una SKU determinada por país:Follow this example to get a list of availabilities for a given SKU by country:

GET http:// api.partnercenter.microsoft.com/v1/products/DZH318Z0BQ3Q/skus/0001/availabilities?country=US HTTP/1.1
Authorization: Bearer <token>
Accept: application/json
MS-RequestId: 70324727-62d8-4195-8f99-70ea25058d02
MS-CorrelationId: 83b644b5-e54a-4bdc-b354-f96c525b3c58

Disponibilidad para las reservas de máquinas virtuales (plan de Azure)Availabilities for VM reservations (Azure plan)

Siga este ejemplo para obtener una lista de las disponibilidades por país para las SKU de reserva de máquinas virtuales de Azure.Follow this example to get a list of availabilities by country for Azure VM reservation SKUs. Este ejemplo es para las SKU que se aplican a los planes de Azure:This example is for SKUs that apply to Azure plans:

GET https://api.partnercenter.microsoft.com/v1/products/DZH318Z0BQ3Q/skus/0001/availabilities?country=US&targetView=AzureReservationsVM&reservationScope=AzurePlan HTTP/1.1
Authorization: Bearer
Accept: application/json
MS-RequestId: 031160b2-b0b0-4d40-b2b1-aaa9bb84211d
MS-CorrelationId: 7c1f6619-c176-4040-a88f-2c71f3ba4533

Disponibilidad de las reservas de máquinas virtuales para las suscripciones de Microsoft Azure (MS-AZR-0145P)Availabilities for VM reservations for Microsoft Azure (MS-AZR-0145P) subscriptions

Siga este ejemplo para obtener una lista de disponibilidad por país para las reservas de máquinas virtuales de Azure que se aplican a las suscripciones de Microsoft Azure (MS-AZR-0145P).Follow this example to get a list of availabilities by country for Azure VM reservations that are applicable to Microsoft Azure (MS-AZR-0145P) subscriptions.

GET https://api.partnercenter.microsoft.com/v1/productsDZH318Z0BQ3Q/skus/0001/availabilities?country=US&targetView=AzureAzureReservationsVM HTTP/1.1
Authorization: Bearer
Accept: application/json
MS-RequestId: 031160b2-b0b0-4d40-b2b1-aaa9bb84211d
MS-CorrelationId: 7c1f6619-c176-4040-a88f-2c71f3ba4533

Respuesta RESTREST response

Si se realiza correctamente, el cuerpo de respuesta contiene una colección de recursos de disponibilidad .If successful, the response body contains a collection of Availability resources.

Códigos de error y de respuesta correctosResponse success and error codes

Cada respuesta incluye un código de estado HTTP que indica si la operación se ha realizado correctamente o con errores y proporciona información de depuración adicional.Each response comes with an HTTP status code that indicates success or failure and additional debugging information. Use una herramienta de seguimiento de red para leer este código, el tipo de error y los parámetros adicionales.Use a network trace tool to read this code, error type, and additional parameters. Para obtener una lista completa, consulte los códigos de error del centro de Partners.For a full list, see Partner Center error codes.

Este método devuelve los siguientes códigos de error:This method returns the following error codes:

Código de estado HTTPHTTP Status Code Código de errorError code DescripciónDescription
403403 400030400030 No se permite el acceso a la targetSegment solicitada.Access to the requested targetSegment is not allowed.

Ejemplo de respuestaResponse example

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

{
    "totalCount": 1,
    "items": [
        {
            "id": "DZH318XZXVNF",
            "productId": "DZH318Z0BQ3Q",
            "skuId": "0001",
            "catalogItemId": "DZH318Z0BQ3Q:0001:DZH318XZXVNF",
            "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/DZH318Z0HMKQ?country=US",
                    "method": "GET",
                    "headers": []
                }
            }
        }
    ],
    "links": {
        "self": {
            "uri": "/products/DZH318Z0BQ3Q/skus/0001/availabilities?country=US&targetSegment=commercial",
            "method": "GET",
            "headers": []
        }
    },
    "attributes": {
        "objectType": "Collection"
    }
}