Condividi tramite


Annullare un ordine dalla sandbox di integrazione usando le API del Centro per i partner

Si applica a: Centro per i partner | Centro per i partner gestito da 21Vianet | Centro per i partner per Microsoft Cloud per il governo degli Stati Uniti

Questo articolo descrive come usare le API del Centro per i partner per annullare diversi tipi di ordini di sottoscrizione dagli account sandbox di integrazione. Tali ordini possono includere istanze riservate, software e ordini di sottoscrizione Software as a Service (SaaS) del marketplace commerciale.

La tabella seguente illustra l'ordine di annullamento nella sandbox e nell'ambiente di produzione.

Tipo di prodotto Ordine di aggiornamento sandbox Sottoscrizione di aggiornamento sandbox Ordine di aggiornamento di produzione Sottoscrizione di aggiornamento di produzione
Istanze riservate di Azure Y N N N
Software perpetuo Y N Y N
Sottoscrizioni del software S Y Y S
Nuovo commercio N Y N Y
Marketplace commerciale N Y N Y
piano di Azure N Y N Y

Nota

Gli annullamenti di un'istanza riservata o gli ordini di sottoscrizione SaaS del marketplace commerciale sono possibili solo dagli account sandbox di integrazione. Non è possibile annullare tutti gli ordini sandbox precedenti a 60 giorni dal Centro per i partner.Any sandbox orders are older than 60 days can't be cancelled from Partner Center.

Per annullare gli ordini di produzione del software tramite l'API, usare cancel-software-purchases. È anche possibile annullare gli ordini di produzione del software tramite il dashboard usando l'annullamento di un acquisto.

Prerequisiti

  • Credenziali descritte in Autenticazione del Centro per i partner. Questo scenario supporta l'autenticazione con le credenziali app autonome e App+Utente.

  • Un account partner sandbox di integrazione con un cliente con un'istanza riservata attiva/software/ordini di sottoscrizione SaaS di terze parti.

C#

Per annullare un ordine dalla sandbox di integrazione, passare le credenziali dell'account al CreatePartnerOperations metodo per ottenere un'interfaccia IPartner per ottenere le operazioni dei partner.

Per selezionare un ordine specifico, usare le operazioni del partner e il metodo di chiamata Customers.ById() con l'identificatore del cliente per specificare il cliente, seguito da Orders.ById() con l'identificatore dell'ordine per specificare l'ordine e infine Get o GetAsync il metodo da recuperare.

Impostare la Order.Status proprietà su cancelled e utilizzare il Patch() metodo per aggiornare l'ordine.

// 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);

Richiesta REST

Sintassi della richiesta

metodo URI della richiesta
PATCH {baseURL}/v1/customers/{customer-tenant-id}/orders/{order-id} HTTP/1.1

Parametro URI

Usare il parametro di query seguente per eliminare un cliente.

Nome Digita Obbligatorio Descrizione
customer-tenant-id guid Y Il valore è un GUID formattato customer-tenant-id che consente al rivenditore di filtrare i risultati per un determinato cliente appartenente al rivenditore.
order-id string Y Il valore è una stringa che indica gli ID ordine che devono essere annullati.

Intestazioni delle richieste

Per altre informazioni, vedi Intestazioni REST del Centro per i partner.

Testo della richiesta

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

Esempio di richiesta

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: aaaa0000-bb11-2222-33cc-444444dddddd

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

Risposta REST

In caso di esito positivo, questo metodo restituisce l'ordine annullato.

Codici di errore e di esito della risposta

Ogni risposta viene fornita con un codice di stato HTTP che indica l'esito positivo o negativo e altre informazioni di debug. Usare uno strumento di traccia di rete per leggere questo codice, il tipo di errore e altri parametri. Per l'elenco completo, vedi Codici di errore REST del Centro per i partner.

Risposta di esempio

HTTP/1.1 200 OK
Content-Length: 866
MS-CorrelationId: aaaa0000-bb11-2222-33cc-444444dddddd
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"
    }
}