Conversión de una suscripción de prueba a pago mediante las API del Centro de partners
Nota:
Estos pasos no son aplicables a nuevos productos comerciales. Consulte la documentación de transición de una nueva suscripción comercial para convertir nuevas pruebas de Comercio en suscripciones de pago.
Puede convertir una suscripción de prueba a pago.
Requisitos previos
Credenciales tal como se describen en el artículo Autenticación del Centro de partners. Este escenario admite la autenticación solo con credenciales de aplicación y usuario.
Un id. de cliente (
customer-tenant-id
). Si no conoce el identificador del cliente, puede buscarlo en el Centro de partners seleccionando el área de trabajo Clientes , luego el cliente de la lista de clientes y, a continuación , Cuenta. En la página Cuenta del cliente, busque el identificador de Microsoft en la sección Información de la cuenta de cliente. El id. de Microsoft es el mismo que el de cliente (customer-tenant-id
).Identificador de suscripción para una suscripción de prueba activa.
Una oferta de conversión disponible.
Conversión de una suscripción de prueba a una suscripción de pago mediante código
Para convertir una suscripción de prueba a una de pago, primero debe obtener una colección de las conversiones de prueba disponibles. A continuación, debe elegir la oferta de conversión que desea comprar.
Las ofertas de conversión especificarán una cantidad que tiene como valor predeterminado el mismo número de licencias que la suscripción de prueba. Puede cambiar esta cantidad estableciendo la propiedad Quantity en el número de licencias que desea comprar.
Nota:
Independientemente del número de licencias adquiridas, el identificador de suscripción de la prueba se reutiliza para las licencias compradas. Como resultado, la prueba en vigor desaparece y se reemplaza por la compra.
Siga estos pasos para convertir una suscripción de prueba mediante código:
Obtenga una interfaz para las operaciones de suscripción disponibles. Debe identificar al cliente y especificar el identificador de suscripción de la suscripción de prueba.
var subscriptionOperations = partnerOperations.Customers.ById(customerId).Subscriptions.ById(subscriptionId);
Obtenga una colección de las ofertas de conversión disponibles. Para obtener más información y detalles sobre la solicitud o respuesta de este método, consulte Obtener una lista de ofertas de conversión de prueba.
var conversions = subscriptionOperations.Conversions.Get();
Elija una oferta de conversión. El código siguiente elige la primera oferta de conversión de la colección.
var selectedConversion = conversions.Items.ToList()[0];
Opcionalmente, especifique el número de licencias que se van a comprar. El valor predeterminado es el número de licencias de la suscripción de prueba.
selectedConversion.Quantity = 10;
Llame al método Create o CreateAsync para convertir la suscripción de prueba a pago.
var convertResult = subscriptionOperations.Conversions.Create(selectedConversion);
C#
Para convertir una suscripción de prueba a una de pago:
Use el método IAggregatePartner.Customers.ById con el id. de cliente para identificar el cliente.
Obtenga una interfaz para las operaciones de suscripción llamando al método Subscriptions.ById con el identificador de suscripción de prueba. Guarde una referencia a la interfaz de operaciones de suscripción en una variable local.
Utilice la propiedad Conversions para obtener una interfaz a las operaciones disponibles en las conversiones y, a continuación, llame al método Get o GetAsync para recuperar una colección de ofertas de conversión disponibles. Debe elegir una. El ejemplo siguiente tiene como valor predeterminado la primera conversión disponible.
Utilice la referencia a la interfaz de operaciones de suscripción que guardó en una variable local y la propiedad Conversions para obtener una interfaz a las operaciones disponibles en las conversiones.
Pase el objeto de oferta de conversión seleccionado al método Create o CreateAsync para intentar la conversión de prueba.
Ejemplo de C#
// IAggregatePartner partnerOperations;
// string customerId;
// string subscriptionId;
// Get subscription operations for the trial subscription.
var subscriptionOperations = partnerOperations.Customers.ById(customerId).Subscriptions.ById(subscriptionId);
// Get the available conversions.
var conversions = subscriptionOperations.Conversions.Get();
// If there are no conversions available, we're done.
// Otherwise, convert the trial to the first available conversion offer.
if (conversions.TotalCount <= 0)
{
System.Console.WriteLine("This subscription has no conversions");
}
else
{
// Default to the first conversion.
var selectedConversion = conversions.Items.ToList()[0];
// Convert the trial and return the result.
var convertResult = subscriptionOperations.Conversions.Create(selectedConversion);
}
Solicitud REST
Sintaxis de la solicitud
Método | URI de solicitud |
---|---|
POST | {baseURL}/v1/customers/{customer-id}/subscriptions/{subscription-id}/conversions HTTP/1.1 |
Parámetro de URI
Use los siguientes parámetros de ruta de acceso para identificar la suscripción de prueba y el cliente.
Nombre | Tipo | Requerido | Descripción |
---|---|---|---|
customer-id | cadena | Sí | Cadena con formato GUID que identifica al cliente. |
subscription-id | cadena | Sí | Cadena con formato GUID que identifica la suscripción de prueba. |
Encabezados de solicitud
Para obtener más información, consulta Encabezados REST del Centro de partners.
Cuerpo de la solicitud
Un recurso de conversión rellenado debe incluirse en el cuerpo de la solicitud.
Ejemplo de solicitud
POST https://api.partnercenter.microsoft.com/v1/customers/0c39d6d5-c70d-4c55-bc02-f620844f3fd1/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/conversions HTTP/1.1
Authorization: Bearer <token>
Accept: application/json
MS-RequestId: bd0cde7f-ba87-4010-8a73-1190b641f2a4
MS-CorrelationId: aaaa0000-bb11-2222-33cc-444444dddddd
X-Locale: en-US
Content-Type: application/json
Host: api.partnercenter.microsoft.com
Content-Length: 234
Expect: 100-continue
{
"OfferId": "C0BD2E08-11AC-4836-BDC7-3712E744922F",
"TargetOfferId": "031C9E47-4802-4248-838E-778FB1D2CC05",
"OrderId": "D51A052E-043C-4A2A-AA37-2BB938CEF6C1",
"Quantity": 25,
"BillingCycle": "monthly",
"Attributes": {
"ObjectType": "Conversion"
}
}
Respuesta REST
Si se ejecuta correctamente, el cuerpo de la respuesta contiene un recurso ConversionResult .
Códigos de error y de respuesta correctos
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. Use una herramienta de seguimiento de red para leer este código, el tipo de error y los parámetros adicionales. Para obtener la lista completa, consulte Códigos de error del Centro de partners.
Ejemplo de respuesta
HTTP/1.1 200 OK
Content-Length: 211
Content-Type: application/json; charset=utf-8
MS-CorrelationId: aaaa0000-bb11-2222-33cc-444444dddddd
MS-RequestId: bd0cde7f-ba87-4010-8a73-1190b641f2a4
MS-CV: kW4GzmhvHEqCq1ls.0
MS-ServerId: 030020643
Date: Thu, 15 Jun 2017 23:10:40 GMT
{
"subscriptionId": "aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e",
"offerId": "C0BD2E08-11AC-4836-BDC7-3712E744922F",
"targetOfferId": "031C9E47-4802-4248-838E-778FB1D2CC05",
"attributes": {
"objectType": "ConversionResult"
}
}