Condividi tramite


Annullare un marketplace commerciale o una nuova sottoscrizione commerciale usando le API del Centro per i partner

Si applica a: Centro per i partner

Questo articolo descrive come usare l'API del Centro per i partner per annullare un marketplace commerciale o una nuova risorsa di sottoscrizione commerciale corrispondente all'ID cliente e sottoscrizione.

Nota

Le nuove esperienze commerciali per i servizi basati su licenza includono molte nuove funzionalità e sono disponibili per tutti i provider di soluzioni cloud. Per altre informazioni, vedere la panoramica delle nuove esperienze commerciali.

Le nuove sottoscrizioni commerciali possono essere annullate entro 7 giorni, tranne dove diversamente richiesto dalla legge, di acquisto o rinnovo. Dopo aver superato questa finestra, le sottoscrizioni non possono più essere annullate e l'API genererà un errore.

Prerequisiti

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

  • ID cliente (customer-tenant-id). Se non si conosce l'ID del cliente, è possibile cercarlo nel Centro per i partner nell'area di lavoro Clienti . Seleziona il cliente nell'elenco dei clienti e quindi seleziona Account. Nella pagina Account del cliente cercare l'ID Microsoft nella sezione Informazioni sull'account del cliente. L'ID Microsoft corrisponde all'ID del cliente (customer-tenant-id).

  • ID sottoscrizione.

Metodo del Centro per i partner

Per annullare una sottoscrizione del marketplace commerciale nel Centro per i partner:

  1. Selezionare un cliente.

  2. Selezionare la sottoscrizione da annullare.

  3. Scegliere l'opzione Annulla sottoscrizione e quindi selezionare Invia.

C#

Per annullare la sottoscrizione di un cliente:

  1. Ottenere la sottoscrizione in base all'ID.

  2. Modificare la proprietà Status della sottoscrizione. Per informazioni sui codici di lo Status, vedere l'enumerazione SubscriptionStatus.

  3. Dopo aver apportato la modifica, usare la IAggregatePartner.Customers raccolta e chiamare il metodo ById().

  4. Chiamare la proprietà Subscriptions, seguita dal metodo ById().

  5. Chiamare il metodo Patch().

// IAggregatePartner partnerOperations;
// var selectedCustomerId as string;
// Subscription selectedSubscription;

selectedSubscription.Status = SubscriptionStatus.Deleted;
var updatedSubscription = partnerOperations.Customers.ById(selectedCustomerId).Subscriptions.ById(selectedSubscription.Id).Patch(selectedSubscription);

App di test della console di esempio

Esempio: App di test della console. Progetto: Classe PartnerSDK.FeatureSample: UpdateSubscription.cs

Richiesta REST

Sintassi della richiesta

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

Parametro URI

Questa tabella elenca il parametro di query necessario per sospendere la sottoscrizione.

Nome Digita Obbligatorio Descrizione
customer-tenant-id guid Y GUID corrispondente al cliente.
subscription-id guid Y GUID corrispondente alla sottoscrizione.

Intestazioni delle richieste

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

Testo della richiesta

Nel corpo della richiesta è necessaria una risorsa Subscription completa. Per annullare la sottoscrizione, verificare che la proprietà Status sia stata aggiornata al valore di deleted.

Campo Type Obbligatorio Descrizione
status string Y Stato delle sottoscrizioni. Le opzioni possono essere - active, suspended, deleted

Esempio di richiesta

PATCH https://api.partnercenter.microsoft.com/v1/customers/<customer-tenant-id>/subscriptions/<subscription-id> HTTP/1.1
Authorization: Bearer <token>
Accept: application/json
MS-RequestId: ca7c39f7-1a80-43bc-90d8-ee7d1cad3831
MS-CorrelationId: aaaa0000-bb11-2222-33cc-444444dddddd
If-Match: <etag>
Content-Type: application/json
Content-Length: 1029
Expect: 100-continue
Connection: Keep-Alive

{
    "id": "aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e",
    "offerId": "DZH318Z0BXWC:0001:DZH318Z0BMJX",
    "offerName": "offer Name",
    "friendlyName": "friendly Name",
    "quantity": 1,
    "unitType": "License(s)",
    "hasPurchasableAddons": false,
    "creationDate": "2019-01-04T01:00:12.6647304Z",
    "effectiveStartDate": "2019-01-09T00:21:45.9263727+00:00",
    "commitmentEndDate": "2019-02-08T00:21:45.9263727+00:00",
    "status": "deleted",
    "autoRenewEnabled": false,
    "isTrial": false,
    "billingType": "license",
    "billingCycle": "monthly",
    "termDuration": "P1M",
    "refundOptions": [{
        "type": "Full",
        "expiresAt": "2019-01-10T00:21:45.9263727+00:00"
    }],
    "isMicrosoftProduct": false,
    "partnerId": "",
    "contractType": "subscription",
    "publisherName": "publisher Name",
    "orderId": "ImxjLNL4_fOc-2KoyOxGTZcrlIquzls11",
    "attributes": {"objectType": "Subscription"},
}

Risposta REST

Se la richiesta ha esito positivo, questo metodo restituisce le proprietà delle risorse della sottoscrizione eliminate nel corpo della risposta.

Codici di errore e di esito della risposta

Ogni risposta viene fornita con un codice di stato HTTP che ne indica l'esito e con informazioni di debug aggiuntive. Usa uno strumento di traccia di rete per leggere il codice, il tipo di errore e parametri aggiuntivi. Per l'elenco completo, vedi Codici di errore.

Risposta di esempio

HTTP/1.1 200 OK
Content-Length: 1322
Content-Type: application/json; charset=utf-8
MS-RequestId: ca7c39f7-1a80-43bc-90d8-ee7d1cad3831
MS-CorrelationId: aaaa0000-bb11-2222-33cc-444444dddddd
X-Locale: en-US

{
    "id": "aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e",
    "offerId": "DZH318Z0BXWC:0001:DZH318Z0BMJX",
    "offerName": "offer Name",
    "friendlyName": "friendly Name",
    "quantity": 1,
    "unitType": "License(s)",
    "hasPurchasableAddons": false,
    "creationDate": "2019-01-04T01:00:12.6647304Z",
    "effectiveStartDate": "2019-01-09T00:21:45.9263727+00:00",
    "commitmentEndDate": "2019-02-08T00:21:45.9263727+00:00",
    "status": "deleted",
    "autoRenewEnabled": false,
    "isTrial": false,
    "billingType": "license",
    "billingCycle": "monthly",
    "termDuration": "P1M",
    "refundOptions": [
        {
            "type": "Full",
            "expiresAt": "2019-01-10T00:21:45.9263727+00:00"
        }
    ],
    "isMicrosoftProduct": false,
    "partnerId": "",
    "contractType": "subscription",
    "links": {
        "product": {
            "uri": "/products/DZH318Z0BXWC?country=US",
            "method": "GET",
            "headers": []
        },
        "sku": {
            "uri": "/products/DZH318Z0BXWC/skus/0001?country=US",
            "method": "GET",
            "headers": []
        },
        "availability": {
            "uri": "/products/DZH318Z0BXWC/skus/0001/availabilities/DZH318Z0BMJX?country=US",
            "method": "GET",
            "headers": []
        },
        "self": {
            "uri": "/customers/5921f00a-32c0-4457-aaa1-e8018c650895/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e",
            "method": "GET",
            "headers": []
        }
    },
    "publisherName": "publisher Name",
    "orderId": "ImxjLNL4_fOc-2KoyOxGTZcrlIquzls11",
    "attributes": {
        "etag": "",
        "objectType": "Subscription"
    }
}