Eliminar una cuenta de cliente desde el espacio aislado de integración
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 explica cómo interrumpir la relación entre el asociado y la cuenta de cliente y recuperar la cuota de pruebas en el espacio aislado de integración de producción (sugerencia).
Importante
Al eliminar una cuenta de cliente, se purgarán todos los recursos asociados a ese inquilino de cliente.
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+user.
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 , el cliente de la lista de clientes y, a continuación, Cuenta. En la página Cuenta del cliente, busca el Id. de Microsoft en la sección Información de la cuenta del cliente. El id. de Microsoft es el mismo que el de cliente (customer-tenant-id
).Todas las instancias reservadas de máquina virtual de Azure y los pedidos de compra de software deben cancelarse antes de eliminar un cliente del espacio aislado de integración de propinas.
C#
Para eliminar un cliente del espacio aislado de integración de propinas:
Pase las credenciales de la cuenta de propina al método CreatePartnerOperations para obtener una interfaz IPartner a las operaciones de asociados.
Use la interfaz de operaciones del asociado para recuperar la colección de derechos:
Llame al método Customers.ById() con el identificador de cliente para especificar el cliente.
Llame a la propiedad Entitlements .
Llame al método Get o GetAsync para recuperar la colección Entitlement .
Asegúrese de que todas las instancias reservadas de máquina virtual de Azure y los pedidos de compra de software para ese cliente se cancelan. Para cada entitlement de la colección:
Utilice el entitlement.ReferenceOrder.Id para obtener una copia local del pedido correspondiente de la colección de pedidos del cliente.
Establezca la propiedad Order.Status en "Canceled".
Use el método Patch() para actualizar el pedido.
Cancele todos los pedidos. Por ejemplo, el ejemplo de código siguiente usa un bucle para sondear cada orden hasta que su estado sea "Cancelado".
// IPartnerCredentials tipAccountCredentials; // Customer tenant Id to be deleted. // string customerTenantId; IPartner tipAccountPartnerOperations = PartnerService.Instance.CreatePartnerOperations(tipAccountCredentials); // Get all entitlements whose order must be canceled. ResourceCollection<Entitlement> entitlements = tipAccountPartnerOperations.Customers.ById(customerTenantId).Entitlements.Get(); // Cancel all orders foreach (var entitlement in entitlements) { var order = tipAccountPartnerOperations.Customers.ById(customerTenantId).Orders.ById(entitlement.ReferenceOrder.Id).Get(); order.Status = "Cancelled"; order = tipAccountPartnerOperations.Customers.ById(customerTenantId).Orders.ById(order.Id).Patch(order); } // Keep polling until the status of all orders is "Cancelled". bool proceed = true; do { // Check if all the orders were canceled. foreach (var entitlement in entitlements) { var order = tipAccountPartnerOperations.Customers.ById(customerTenantId).Orders.ById(entitlement.ReferenceOrder.Id).Get(); if (!order.Status.Equals("Cancelled", StringComparison.OrdinalIgnoreCase)) { proceed = false; } } // Wait for a few seconds. Thread.Sleep(5000); } while (proceed == false); tipAccountPartnerOperations.Customers.ById(customerTenantId).Delete();
Asegúrese de que todos los pedidos se cancelan llamando al método Delete para el cliente.
Ejemplo: aplicación de prueba de consola. Project: PartnerCenterSDK.FeaturesSamples (Clase: DeleteCustomerFromTipAccount.cs)
Solicitud REST
Sintaxis de la solicitud
Método | URI de solicitud |
---|---|
Delete | {baseURL}/v1/customers/{customer-tenant-id} HTTP/1.1 |
Parámetro de URI
Use el siguiente parámetro de consulta para eliminar un cliente.
Nombre | Tipo | 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. |
Encabezados de solicitud
Para obtener más información, consulta Encabezados REST del Centro de partners.
Cuerpo de la solicitud
Ninguno.
Ejemplo de solicitud
DELETE https://api.partnercenter.microsoft.com/v1/customers/<customer-tenant-id> HTTP/1.1
Accept: application/json
MS-RequestId: 655890ba-4d2b-4d09-a95f-4ea1348686a5
MS-CorrelationId: aaaa0000-bb11-2222-33cc-444444dddddd
Content-Length: 0
Respuesta REST
Si se ejecuta correctamente, este método devuelve una respuesta vacía.
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, consulta Códigos de error de REST del Centro de partners.
Ejemplo de respuesta
HTTP/1.1 204 No Content
Content-Length: 0
MS-CorrelationId: aaaa0000-bb11-2222-33cc-444444dddddd
MS-RequestId: 655890ba-4d2b-4d09-a95f-4ea1348686a5
Date: Wed, 16 Mar 2016 00:43:02 GMT