Een winkelwagen bijwerken
Een bestelling in een winkelwagen bijwerken voor een klant.
Houd er rekening mee dat winkelwagens zeven dagen na het maken verlopen.
Voorwaarden
Referenties zoals beschreven in Partnercentrum-verificatie. Dit scenario ondersteunt verificatie met zowel zelfstandige app- als app+gebruikersreferenties.
Een klant-id (
customer-tenant-id
). Als u de klant-id niet weet, kunt u deze opzoeken in Partnercentrum door de werkruimte Klanten te selecteren, vervolgens de klant in de lijst met klanten en vervolgens Account. Zoek op de pagina Account van de klant naar de Microsoft-id in de sectie Klantaccountgegevens. De Microsoft-id is hetzelfde als de klant-id (customer-tenant-id
).Een winkelwagen-id voor een bestaande winkelwagen.
C#
Als u een bestelling voor een klant wilt bijwerken, haalt u de winkelwagen op met behulp van de methode Get() door de klant- en winkelwagen-id's door te geven met behulp van de ById() functie. Breng de benodigde wijzigingen aan in de winkelwagen. Roep nu de methode Put aan door de klant-ID en winkelwagen-ID's te gebruiken met de ById() methode.
Roep tot slot de methode Put() of PutAsync() aan om de volgorde te maken.
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);
Zie het volgende voorbeeld om attestation te voltooien en andere resellers op te nemen.
API-voorbeeld - Winkelwagen uitchecken
{
"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-aanvraag
Aanvraagsyntaxis
Methode | Aanvraag-URI |
---|---|
PUT- | {baseURL}/v1/customers/{customer-id}/carts/{cart-id} HTTP/1.1 |
URI parameters
Gebruik de volgende padparameters om de klant te identificeren en geef de winkelwagen op die moet worden bijgewerkt.
Naam | Type | Vereist | Beschrijving |
---|---|---|---|
klant-ID | snaar | Ja | Een GUID-geformatteerde klant-ID die de klant identificeert. |
cart-id | string | Ja | Een met GUID opgemaakte winkelwagen-id die de winkelwagen identificeert. |
Aanvraagheaders
Zie Partnercentrum REST-headersvoor meer informatie.
Aanvraaginhoud
In deze tabel worden de eigenschappen van de Cart in de verzoekbody beschreven.
Eigenschap | Soort | Vereist | Beschrijving |
---|---|---|---|
identificatie | snaar | Nee | Een winkelwagen-id die wordt opgegeven bij het maken van de winkelwagen. |
creationTimeStamp | Datum/tijd | Nee | De datum waarop de winkelwagen is gemaakt, in datum-tijdnotatie. Toegepast bij de succesvolle creatie van het winkelwagentje. |
laatst gewijzigde tijdstempel | Datum/tijd | Nee | De datum waarop de winkelwagen het laatst is bijgewerkt, in datum-tijdnotatie. Toegepast na succesvolle aanmaak van de winkelwagen. |
vervaldatumstempel | Datum/tijd | Nee | De datum waarop de winkelwagen verloopt, in datum-tijdnotatie. Wordt toegepast bij succesvolle aanmaak van de winkelwagen. |
laatstGewijzigdeGebruiker | snaar | Nee | De gebruiker die de winkelwagen voor het laatst heeft bijgewerkt. Toegepast bij succesvolle creatie van een winkelwagen. |
lineItems | Matrix van objecten | Ja | Een matrix van CartLineItem resources. |
In deze tabel worden de eigenschappen CartLineItem in de aanvraagbody beschreven.
Eigenschap | Soort | Vereist | Beschrijving |
---|---|---|---|
identificatie | snaar | Nee | Een unieke id voor een winkelwagenregelitem. Toegepast na succesvolle creatie van de winkelwagen. |
catalogId | string | Ja | De identificatie van het catalogus item. |
vriendelijkeNaam | snaar | Nee | Facultatief. De vriendelijke naam voor het item dat door de partner is gedefinieerd om te helpen bij het verduidelijken. |
promotionId | snaar | Nee | Facultatief. De meeste NCE-promoties worden automatisch toegepast, maar voor optionele promoties (zoals Bridge to the Cloud 2) om toe te passen op een winkelwagenlijnitem, moeten partners de promotie-id opnemen in de add to cart-aanvraag. |
hoeveelheid | Int | Ja | Het aantal licenties of instanties. |
valutacode | (tekenreeks) | Nee | De valutacode. |
billingCycle | Object | Ja | Het type factureringscyclus dat is ingesteld voor de huidige periode. |
Deelnemers | Lijst van object-tekenreeksparen | Nee | Een verzameling deelnemers aan de aankoop. |
provisioningContext | Woordenlijst<tekenreeks, tekenreeks> | Nee | Een context die wordt gebruikt voor het verstrekken van aanbiedingen. |
bestelgroep | string | Nee | Een groep om aan te geven welke items samen kunnen worden geplaatst. |
fout | Object | Nee | Toegepast nadat er een fout is gemaakt bij het aanmaken van de winkelwagen. |
AdditionalPartnerIdsOnRecord | Snaar | Nee | Wanneer een indirecte provider een order plaatst namens een indirecte reseller, vult u dit veld in met de Partner-id van de Aanvullende indirecte reseller alleen (nooit de id van de indirecte provider). Incentives zijn niet van toepassing op deze andere resellers. Er kunnen maximaal vijf indirecte resellers worden ingevoerd. Dit zijn alleen van toepassing zijnde partners die handelen binnen EU/EVA-landen/regio's. |
Aanvraagvoorbeeld
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"
}
}
],
}
}
Belangrijk
Vanaf juni 2023 wordt de nieuwste Versie van Partner Center .NET SDK 3.4.0 gearchiveerd. U kunt de SDK-release downloaden van GitHub, samen met een leesmij-bestand met nuttige informatie.
Partners worden aangemoedigd om de Partner center REST API'ste blijven gebruiken.
REST-antwoord
Als dit lukt, retourneert deze methode de ingevulde Winkelwagen resource in de hoofdtekst van het antwoord.
Geslaagde antwoorden en foutcodes
Elk antwoord wordt geleverd met een HTTP-statuscode die aangeeft of er sprake is van succes of mislukking, en aanvullende foutopsporingsinformatie. Gebruik een hulpprogramma voor netwerktracering om deze code, het fouttype en meer parameters te lezen. Zie Foutcodesvoor de volledige lijst.
Voorbeeld van antwoord
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"
}
}