Uppdatera en kundvagn
Så här uppdaterar du en beställning för en kund i en kundvagn.
Observera att kundvagnar upphör att gälla sju dagar från det att de först skapades.
Förutsättningar
Autentiseringsuppgifter enligt beskrivningen i PartnerCenter-autentisering. Det här scenariot stöder autentisering med både fristående app- och App+User-autentiseringsuppgifter.
Ett kund-ID (
customer-tenant-id
). Om du inte känner till kundens ID kan du leta upp det i Partnercenter genom att välja arbetsytan Kunder, sedan kunden från kundlistan och sedan konto. På kundens kontosida letar du efter Microsoft-ID i avsnittet Kundkontoinformation. Microsoft-ID:t är detsamma som kund-ID :t (customer-tenant-id
).Ett kundvagns-ID för en befintlig kundvagn.
C#
Om du vill uppdatera en beställning för en kund hämtar du kundvagnen med hjälp av metoden Get() genom att skicka kund- och kundvagns-ID:t med hjälp av funktionen ById(). Gör nödvändiga ändringar i kundvagnen. Anropa nu Put-metoden med kund- och kundvagns-ID genom att använda ById()-metoden.
Anropa slutligen metoden Put() eller PutAsync() för att skapa ordningen.
IAggregatePartner partnerOperations;
string customerId;
string cartId;
var cart = partnerOperations.Customers.ById(customerId).Cart.ById(cartId).Get();
cart.LineItems.ToArray()[0].Quantity++;
var updatedCart = partnerOperations.Customers.ById(customerId).Cart.ById(cartId).Put(cart);
Information om hur du slutför attesteringen och inkludera andra återförsäljare finns i följande exempel.
API-exempel – Gå till kassan
{
"orders": [
{
"id": "f76c6b7f449d",
"alternateId": "f76c6b7f449d",
"referenceCustomerId": "f81d98dd-c2f4-499e-a194-5619e260344e",
"billingCycle": "monthly",
"currencyCode": "USD",
"currencySymbol": "$",
"lineItems": [
{
"lineItemNumber": 0,
"offerId": "CFQ7TTC0LH0Z:0001:CFQ7TTC0K18P",
"subscriptionId": "aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e",
"termDuration": "P1M",
"transactionType": "New",
"friendlyName": "AI Builder Capacity add-on",
"quantity": 1,
"links": {
"product": {
"uri": "/products/CFQ7TTC0LH0Z?country=US",
"method": "GET",
"headers": []
},
"sku": {
"uri": "/products/CFQ7TTC0LH0Z/skus/0001?country=US",
"method": "GET",
"headers": []
},
"availability": {
"uri": "/products/CFQ7TTC0LH0Z/skus/0001/availabilities/CFQ7TTC0K18P?country=US",
"method": "GET",
"headers": []
}
}
},
{
"lineItemNumber": 1,
"offerId": "CFQ7TTC0LFLS:0002:CFQ7TTC0KDLJ",
"subscriptionId": "bbbb1b1b-cc2c-dd3d-ee4e-ffffff5f5f5f",
"termDuration": "P1Y",
"transactionType": "New",
"friendlyName": "Azure Active Directory Premium P1",
"quantity": 2,
"partnerIdOnRecord": "517285",
"additionalPartnerIdsOnRecord":
"5357564",
"5357563"
],
"links": {
"product": {
"uri": "/products/CFQ7TTC0LFLS?country=US",
"method": "GET",
"headers": []
},
"sku": {
"uri": "/products/CFQ7TTC0LFLS/skus/0002?country=US",
"method": "GET",
"headers": []
},
"availability": {
"uri": "/products/CFQ7TTC0LFLS/skus/0002/availabilities/CFQ7TTC0KDLJ?country=US",
"method": "GET",
"headers": []
}
}
}
],
"creationDate": "2021-08-18T07:52:23.1921872Z",
"status": "pending",
"transactionType": "UserPurchase",
"links": {
"self": {
"uri": "/customers/f81d98dd-c2f4-499e-a194-5619e260344e/orders/f76c6b7f449d",
"method": "GET",
"headers": []
},
"provisioningStatus": {
"uri": "/customers/f81d98dd-c2f4-499e-a194-5619e260344e/orders/f76c6b7f449d/provisioningstatus",
"method": "GET",
"headers": []
},
"patchOperation": {
"uri": "/customers/f81d98dd-c2f4-499e-a194-5619e260344e/orders/f76c6b7f449d",
"method": "PATCH",
"headers": []
}
},
"client": {},
"attributes": {
"objectType": "Order"
}
}
],
"attributes": {
"objectType": "CartCheckoutResult"
}
}
REST-begäran
Syntax för begäran
Metod | Begärande-URI |
---|---|
PUT | {baseURL}/v1/customers/{customer-id}/carts/{cart-id} HTTP/1.1 |
URI-parametrar
Använd följande sökvägsparametrar för att identifiera kunden och ange vilken kundvagn som ska uppdateras.
Namn | Typ | Krävs | Beskrivning |
---|---|---|---|
kund-ID | sträng | Ja | Ett GUID-formaterat kund-ID som identifierar kunden. |
kundvagns-ID | sträng | Ja | Ett GUID-formaterat kundvagns-ID som identifierar kundvagnen. |
Begäranhuvuden
Mer information finns i Partnercenter REST-huvuden.
Begärandetext
I den här tabellen beskrivs egenskaperna Cart i begärandetexten.
Egenskap | Typ | Krävs | Beskrivning |
---|---|---|---|
Id | sträng | Nej | En kundvagnsidentifierare som tillhandahålls när kundvagnen har skapats. |
creationTimeStamp | DatumTid | Nej | Det datum då kundvagnen skapades i datum-tid-format. Tillämpas när kundvagnen har skapats. |
lastModifiedTimeStamp | DatumTid | Nej | Datumet då kundvagnen senast uppdaterades, i datum-tid-format. Tillämpas när kundvagnen har skapats. |
utgångstidsstämpel | Datum och tid | Nej | Datumet då kundvagnen upphör att gälla, i datum-tid-format. Tillämpas när kundvagnen har skapats. |
senastModifieradAnvändare | sträng | Nej | Användaren som senast uppdaterade kundvagnen. Tillämpas när kundvagnen har skapats. |
lineItems | Matris med objekt | Ja | En matris med CartLineItem resurser. |
I den här tabellen beskrivs egenskaperna CartLineItem i begärandetexten.
Egenskap | Typ | Krävs | Beskrivning |
---|---|---|---|
Id | sträng | Nej | En unik identifierare för ett kundvagnsradobjekt. Tillämpas när kundvagnen har skapats. |
catalogId | sträng | Ja | Katalogobjektidentifieraren. |
vänligtNamn | sträng | Nej | Valfri. Det vänliga namnet på det objekt som definierats av partnern för att undvika tvetydighet. |
promotionId | sträng | Nej | Valfri. De flesta NCE-kampanjer tillämpas automatiskt, men för valfria kampanjer (till exempel Bridge to the Cloud 2) för att gälla för ett kundvagnslinjeobjekt måste partner inkludera kampanj-ID:t i begäran om att lägga till i kundvagnen. |
kvantitet | Int | Ja | Antalet licenser eller instanser. |
valutakod | sträng | Nej | Valutakoden. |
billingCycle | Objekt | Ja | Typ av faktureringsperiod som angetts för den aktuella perioden. |
Deltagare | Lista över objektsträngspar | Nej | En samling deltagare vid köpet. |
försörjningskontext | Ordlista<sträng, sträng> | Nej | En kontext som används för provisionering av erbjudande. |
beställningsgrupp | sträng | Nej | En grupp som anger vilka objekt som kan placeras tillsammans. |
fel | Objekt | Nej | Tillämpas efter att kundvagnen har skapats i ett fel. |
Ytterligare Partner-ID:n i register | Sträng | Nej | När en indirekt leverantör gör en beställning åt en indirekt återförsäljare fyller du i det här fältet med PartnerID för Ytterligare indirekt återförsäljare endast (aldrig ID:t för den indirekta leverantören). Incitament gäller inte för dessa andra återförsäljare. Endast fem indirekta återförsäljare kan anges. Detta är endast tillämpliga partner som handlar inom EU/EFTA-länder/regioner. |
Exempel på begäran
PUT /v1/customers/d6bf25b7-e0a8-4f2d-a31b-97b55cfc774d/carts/65faf57b-0205-47ee-92b3-08dcf233ea73/ HTTP/1.1
Authorization: Bearer <token>
Accept: application/json
MS-RequestId: 4fa6dad6-a89f-4875-8247-8294a10ae1cf
MS-CorrelationId: aaaa0000-bb11-2222-33cc-444444dddddd
X-Locale: en-US
MS-PartnerCenter-Client: Partner Center .NET SDK
Content-Type: application/json
Host: api.partnercenter.microsoft.com
Content-Length: 496
Expect: 100-continue
{
{
"Id":"b4c8fdea-cbe4-4d17-9576-13fcacbf9605",
"CreationTimestamp":"2018-03-15T17:15:02.3840528Z",
"LastModifiedTimestamp":"2018-03-15T17:15:02.3840528Z",
"ExpirationTimestamp":"0001-01-01T00:00:00",
"LastModifiedUser":"2713ccd7-ea3b-470a-9cfb-451d5d0482cc",
"LineItems":[
{
"Id":0,
"CatalogItemId":"DG7GMGF0DWTL:0001:DG7GMGF0DSJB",
"FriendlyName":"A_sample_Azure_RI",
"Quantity":2,
"BillingCycle":"one_time",
"ProvisioningContext": {
"SubscriptionId": "cccc2c2c-dd3d-ee4e-ff5f-aaaaaa6a6a6a",
"Scope": "shared",
"Duration": "1Year"
}
}
],
}
}
Viktig
Från och med juni 2023 arkiveras nu den senaste Partner Center .NET SDK-versionen 3.4.0. Du kan ladda ned SDK-versionen från GitHub, tillsammans med en readme-fil som innehåller användbar information.
Partner uppmanas att fortsätta att använda rest-API:erna för Partnercenter.
REST-svar
Om det lyckas returnerar den här metoden den ifyllda resursen Cart i svarstexten.
Svarsframgång och felkoder
Varje svar levereras med en HTTP-statuskod som anger lyckad eller misslyckad och ytterligare felsökningsinformation. Använd ett verktyg för nätverksspårning för att läsa den här koden, feltypen och fler parametrar. Den fullständiga listan finns i Felkoder.
Svarsexempel
HTTP/1.1 201 Created
Content-Length: 764
Content-Type: application/json; charset=utf-8
MS-CorrelationId: aaaa0000-bb11-2222-33cc-444444dddddd
MS-RequestId: 4fa6dad6-a89f-4875-8247-8294a10ae1cf
X-Locale: en-US,en-US
MS-CV: sF/wRa2ih0CzbABc.0
MS-ServerId: 000001
Date: Thu, 15 Mar 2018 17:15:01 GMT
{
"id": "b4c8fdea-cbe4-4d17-9576-13fcacbf9605",
"creationTimestamp": "2018-03-15T17:15:02.3840528Z",
"lastModifiedTimestamp": "2018-03-15T17:15:02.3840528Z",
"lastModifiedUser": "2713ccd7-ea3b-470a-9cfb-451d5d0482cc",
"lineItems": [
{
"id": 0,
"catalogItemId": "DG7GMGF0DWTL:0001:DG7GMGF0DSJB",
"friendlyName": "A_sample_Azure_RI",
"quantity": 2,
"currencyCode": "USD",
"billingCycle": "one_time",
"ProvisioningContext": {
"subscriptionId": "cccc2c2c-dd3d-ee4e-ff5f-aaaaaa6a6a6a",
"scope": "shared",
"duration": "1Year"
}
"orderGroup": "0"
}
],
"links": {
"self": {
"uri": "/v1/customers/d6bf25b7-e0a8-4f2d-a31b-97b55cfc774d/carts/b4c8fdea-cbe4-4d17-9576-13fcacbf9605/",
"method": "GET",
"headers": []
}
},
"attributes": {
"objectType": "Cart"
}
}