Udostępnij za pośrednictwem


Anulowanie komercyjnej platformy handlowej lub nowej subskrypcji handlowej przy użyciu interfejsów API Centrum partnerskiego

Dotyczy: Centrum Partnerskie

W tym artykule opisano sposób używania interfejsu API Centrum partnerskiego do anulowania komercyjnej platformy handlowej lub nowego zasobu subskrypcji zgodnego z identyfikatorem klienta i subskrypcji.

Notatka

Nowe środowiska handlowe dla usług opartych na licencjach obejmują wiele nowych funkcji i są dostępne dla wszystkich dostawców rozwiązań w chmurze (CSP). Aby uzyskać więcej informacji, zobacz omówienie nowych doświadczeń handlowych .

Nowe subskrypcje handlowe można anulować w ciągu 7 dni od zakupu lub odnowienia, z wyjątkiem sytuacji, gdy prawo wymaga inaczej. Po upływie tego okna nie można już anulować subskrypcji, a interfejs API zgłosi błąd.

Warunki wstępne

  • Poświadczenia zgodnie z opisem w Uwierzytelnianiu w Centrum Partnerskim. Ten scenariusz obsługuje uwierzytelnianie zarówno za pomocą poświadczeń samej aplikacji, jak i połączenia poświadczeń aplikacji oraz użytkownika.

  • Identyfikator klienta (customer-tenant-id). Jeśli nie znasz identyfikatora klienta, możesz wyszukać go w centrum partnerskim w obszarze roboczym Customers. Wybierz klienta z listy klientów, a następnie wybierz Konto . Na stronie konta klienta poszukaj identyfikatora Microsoft w sekcji Informacje o koncie klienta . Identyfikator Firmy Microsoft jest taki sam jak identyfikator klienta (customer-tenant-id).

  • Identyfikator subskrypcji.

Metoda Centrum partnerskiego

Aby anulować subskrypcję platformy handlowej w Centrum partnerskim:

  1. Wybierz klienta.

  2. Wybierz subskrypcję, którą chcesz anulować.

  3. Wybierz opcję Anuluj subskrypcję, a następnie wybierz pozycję Prześlij.

C#

Aby anulować subskrypcję klienta:

  1. Pobierz subskrypcję według identyfikatora.

  2. Zmień właściwośćstanu subskrypcji. Aby uzyskać informacje na temat kodów stanu , odwołaj się do enumeracji SubscriptionStatus.

  3. Po wprowadzeniu zmiany użyj kolekcji IAggregatePartner.Customers i wywołaj metodęById().

  4. Wywołaj właściwość Subscriptions, a następnie metodę ById().

  5. Wywołaj metodę 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);

Przykładowa aplikacja testowa konsoli

Przykład: testowa aplikacja konsolowa. project: PartnerSDK.FeatureSample Class: UpdateSubscription.cs

Żądanie REST

Składnia żądania

Metoda Request URI
PATCH {baseURL}/v1/customers/{customer-tenant-id}/subscriptions/{subscription-id} HTTP/1.1

Parametr identyfikatora URI

W tej tabeli wymieniono wymagany parametr zapytania, aby zawiesić subskrypcję.

Nazwa Typ Wymagane Opis
identyfikator-najemcy-klienta guid Y Identyfikator GUID odpowiadający klientowi.
identyfikator subskrypcji guid Y Identyfikator GUID odpowiadający subskrypcji.

Nagłówki żądań

Aby uzyskać więcej informacji, zobacz Nagłówki Centrum partnerów REST.

Treść żądania

W treści żądania jest wymagany pełny zasób subskrypcji . Aby anulować subskrypcję, upewnij się, że właściwość statusu została zaktualizowana do wartości deleted.

Pole Typ Wymagane Opis
status ciągu Y Stan subskrypcji. Opcje mogą być następujące: active, suspended, deleted

Przykład żądania

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"},
}

Odpowiedź REST

Jeśli żądanie zakończy się pomyślnie, ta metoda zwraca usunięte właściwości zasobu Subscription w treści odpowiedzi.

Kody sukcesu i błędów odpowiedzi

Każda odpowiedź zawiera kod stanu HTTP, który wskazuje powodzenie lub niepowodzenie i dodatkowe informacje o debugowaniu. Użyj narzędzia do śledzenia sieci, aby odczytać ten kod, typ błędu i dodatkowe parametry. Aby uzyskać pełną listę, zobacz Kody błędów.

Przykład odpowiedzi

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"
    }
}