Cancelación de un pedido desde el espacio aislado de integración mediante las API del Centro de partners

Se aplica a: Centro de partners | Centro de partners operado por 21Vianet | Centro de partners para Microsoft Cloud for US Government

En este artículo se describe cómo usar las API del Centro de partners para cancelar distintos tipos de pedidos de suscripción de cuentas de espacio aislado de integración. Estos pedidos pueden incluir instancias reservadas, software y pedidos de suscripción de software como servicio (SaaS).

En la tabla siguiente se muestra el orden de cancelación en espacio aislado y producción.

Tipo de producto Orden de actualización del espacio aislado Suscripción de actualización de espacio aislado Orden de actualización de producción Suscripción de actualización de producción
Instancias reservadas de Azure Y N N N
Software perpetuo Y N Y No
Suscripciones de software Y Y Y Y
Nuevo comercio N Y N Y
Marketplace comercial N Y N Y
plan de Azure N Y N Y

Nota:

Las cancelaciones de una instancia reservada o los pedidos de suscripción de SaaS de Marketplace comercial solo son posibles en las cuentas de espacio aislado de integración. Los pedidos de espacio aislado que tienen más de 60 días no se pueden cancelar desde el Centro de partners.

Para cancelar los pedidos de producción de software a través de la API, use cancel-software-purchases. También puede cancelar los pedidos de producción de software a través del panel mediante la cancelación de una compra.

Requisitos previos

  • Credenciales tal como se describen en el artículo Autenticación del Centro de partners. Este escenario admite la autenticación con credenciales de aplicación independiente y app+usuario.

  • Una cuenta de asociado de espacio aislado de integración con un cliente que tenga una instancia reservada activa, un software o pedidos de suscripción de SaaS de terceros.

C#

Para cancelar un pedido desde el espacio aislado de integración, pase las credenciales de la cuenta al CreatePartnerOperations método para obtener una IPartner interfaz para obtener operaciones de asociados.

Para seleccionar un pedido determinado, use las operaciones del asociado y el método de llamada Customers.ById() con el identificador de cliente para especificar el cliente, seguido del Orders.ById() identificador de pedido para especificar el pedido y, por últimoGet, o GetAsync el método para recuperarlo.

Establezca la Order.Status propiedad cancelled en y use el Patch() método para actualizar el pedido.

// IPartnerCredentials tipAccountCredentials;
// Customer tenant Id to be deleted.
// string customerTenantId;

IPartner tipAccountPartnerOperations = PartnerService.Instance.CreatePartnerOperations(tipAccountCredentials);

// Cancel order
var order = tipAccountPartnerOperations.Customers.ById(customerTenantId).Orders.ById(orderId).Get();
order.Status = "cancelled";
order = tipAccountPartnerOperations.Customers.ById(customerTenantId).Orders.ById(orderId).Patch(order);

Solicitud REST

Sintaxis de la solicitud

Método URI de solicitud
PATCH {baseURL}/v1/customers/{customer-tenant-id}/orders/{order-id} HTTP/1.1

Parámetro de URI

Use el siguiente parámetro de consulta para eliminar un cliente.

Nombre Type Obligatorio Descripción
customer-tenant-id guid Y El valor es un GUID con formato customer-tenant-id que permite al revendedor filtrar los resultados de un cliente determinado que pertenece al revendedor.
order-id string Y El valor es una cadena que indica los identificadores de orden que deben cancelarse.

Encabezados de solicitud

Para obtener más información, consulta Encabezados REST del Centro de partners.

Cuerpo de la solicitud

{
    "id": "UKXASSO1dezh3HdxClHxSp5UEFXGbAnt1",
    "status": "cancelled",
}

Ejemplo de solicitud

PATCH https://api.partnercenter.microsoft.com/v1/customers/<customer-tenant-id>/orders/<order-id> HTTP/1.1
Accept: application/json
MS-RequestId: 655890ba-4d2b-4d09-a95f-4ea1348686a5
MS-CorrelationId: 1438ea3d-b515-45c7-9ec1-27ee0cc8e6bd

{
    "id": "UKXASSO1dezh3HdxClHxSp5UEFXGbAnt1",
    "status": "cancelled",
}

Respuesta REST

Si se ejecuta correctamente, este método devuelve el orden cancelado.

Códigos de error y de respuesta correctos

Cada respuesta incluye un código de estado HTTP que indica éxito o error y más información de depuración. Use una herramienta de seguimiento de red para leer este código, tipo de error y otros parámetros. Para obtener la lista completa, consulta Códigos de error de REST del Centro de partners.

Ejemplo de respuesta

HTTP/1.1 200 OK
Content-Length: 866
MS-CorrelationId: 1438ea3d-b515-45c7-9ec1-27ee0cc8e6bd
MS-RequestId: 655890ba-4d2b-4d09-a95f-4ea1348686a5

{
    "id": "UKXASSO1dezh3HdxClHxSp5UEFXGbAnt1",
    "alternateId": "11fc4bdfd47a",
    "referenceCustomerId": "bd59b416-37f9-4d8f-8df3-5750111fc615",
    "billingCycle": "one_time",
    "currencyCode": "USD",
    "currencySymbol": "$",
    "lineItems": [
        {
            "lineItemNumber": 0,
            "offerId": "DG7GMGF0DWT0:0001:DG7GMGF0DSQR",
            "termDuration": "",
            "transactionType": "New",
            "friendlyName": "Microsoft Identity Manager 2016 - 1 User CAL",
            "quantity": 1,
            "links": {
                "product": {
                    "uri": "/products/DG7GMGF0DWT0?country=US",
                    "method": "GET",
                    "headers": []
                },
                "sku": {
                    "uri": "/products/DG7GMGF0DWT0/skus/0001?country=US",
                    "method": "GET",
                    "headers": []
                },
                "availability": {
                    "uri": "/products/DG7GMGF0DWT0/skus/0001/availabilities/DG7GMGF0DSQR?country=US",
                    "method": "GET",
                    "headers": []
                }
            }
        }
    ],
    "creationDate": "2019-02-21T17:56:21.1335741Z",
    "status": "cancelled",
    "transactionType": "UserPurchase",
    "attributes": {
        "objectType": "Order"
    }
}