Delen via


Een order annuleren vanuit de integratie-sandbox met behulp van Partnercentrum-API's

Van toepassing op: Partnercentrum | Partnercentrum beheerd door 21Vianet | Partnercentrum voor Microsoft Cloud voor de Amerikaanse overheid

In dit artikel wordt beschreven hoe u partnercentrum-API's gebruikt om verschillende typen abonnementsorders van integratie-sandboxaccounts te annuleren. Dergelijke orders kunnen gereserveerde instanties, software en commerciële marketplace SaaS-abonnementsorders (Software as a Service) omvatten.

In de volgende tabel ziet u de annuleringsorder in sandbox en productie.

Producttype Volgorde van sandbox-update Abonnement op sandbox-update Productie-updatevolgorde Productie-updateabonnement
Gereserveerde Azure-instanties J N N N
Eeuwigdurende software J N Y N
Software-abonnementen J J J J
Nieuwe handel N Y N J
Commerciële marketplace N Y N J
Azure-plan N Y N J

Notitie

Annuleringen van een gereserveerde instantie of bestellingen voor SaaS-abonnementen op de commerciële marketplace zijn alleen mogelijk vanuit sandbox-accounts voor integratie. Sandboxorders die ouder zijn dan 60 dagen, kunnen niet worden geannuleerd vanuit het Partnercentrum.

Als u productieorders van software via API wilt annuleren, gebruikt u cancel-software-aankopen. U kunt ook productieorders van software annuleren via het dashboard door een aankoop te annuleren.

Vereisten

  • Referenties zoals beschreven in verificatie in partnercentrum. Dit scenario ondersteunt verificatie met zowel zelfstandige app- als app+gebruikersreferenties.

  • Een integratie sandbox-partneraccount met een klant met actieve gereserveerde instantie/software/bestellingen van saaS-abonnementen van derden.

C#

Als u een order van de integratie-sandbox wilt annuleren, geeft u uw accountreferenties door aan de CreatePartnerOperations methode om een IPartner interface op te halen om partnerbewerkingen op te halen.

Als u een bepaalde order wilt selecteren, gebruikt u de partnerbewerkingen en de aanroepmethode Customers.ById() met de klant-id om de klant op te geven, gevolgd door Orders.ById() de order-id om de order en ten slotte Get of GetAsync methode op te geven om deze op te halen.

Stel de Order.Status eigenschap in cancelled op en gebruik de Patch() methode om de volgorde bij te werken.

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

REST-aanvraag

Aanvraagsyntaxis

Wijze Aanvraag-URI
PATCH {baseURL}/v1/customers/{customer-tenant-id}/orders/{order-id} HTTP/1.1

URI-parameter

Gebruik de volgende queryparameter om een klant te verwijderen.

Name Type Vereist Beschrijving
klant-tenant-id Guid J De waarde is een door een GUID opgemaakte klant-tenant-id waarmee de reseller de resultaten kan filteren op een bepaalde klant die deel uitmaakt van de reseller.
order-id Tekenreeks J De waarde is een tekenreeks die de order-id's aangeeft die moeten worden geannuleerd.

Aanvraagheaders

Zie Rest-headers in Partnercentrum voor meer informatie.

Aanvraagtekst

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

Aanvraagvoorbeeld

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

REST-antwoord

Als dit lukt, retourneert deze methode de geannuleerde bestelling.

Geslaagde antwoorden en foutcodes

Elk antwoord wordt geleverd met een HTTP-statuscode die aangeeft dat het succes of de fout optreedt en meer informatie over foutopsporing. Gebruik een hulpprogramma voor netwerktracering om deze code, het fouttype en andere parameters te lezen. Zie rest-foutcodes in Partnercentrum voor de volledige lijst.

Responsvoorbeeld

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