Kosár létrehozása vevői megrendeléssel
A következőre vonatkozik: Partnerközpont | A 21Vianet által üzemeltetett Partnerközpont | Partnerközpont a Microsoft Cloud for US Government számára
Egy ügyfél megrendelését kosárba helyezheti. A jelenleg elérhető értékesítésről további információt a Felhőszolgáltató programban található Partnerajánlatok című témakörben talál.
Feljegyzés
A kocsik a kezdeti létrehozástól számított 7 napon belül lejárnak.
Előfeltételek
Hitelesítő adatok a Partnerközpont hitelesítésében leírtak szerint. Ez a forgatókönyv támogatja az önálló alkalmazással és az App+Felhasználói hitelesítő adatokkal való hitelesítést is.
Ügyfélazonosító (
customer-tenant-id
). Ha nem ismeri az ügyfél azonosítóját, megkeresheti a Partnerközpontban az Ügyfelek munkaterület kiválasztásával, majd az ügyféllistából, majd a Fiók listában. Az ügyfél Fiók lapján keresse meg a Microsoft-azonosítót az Ügyfélfiók adatai szakaszban. A Microsoft-azonosító megegyezik az ügyfél-azonosítóval (customer-tenant-id
).
C#
Rendelés létrehozása egy ügyfél számára:
Cart objektum példányosítása.
Hozzon létre egy CartLineItem objektumlistát, és rendelje hozzá a listát a kosár LineItems tulajdonságához. Minden egyes kosársorelem egy termék vásárlási adatait tartalmazza. Legalább egy kosársorelemnek rendelkeznie kell.
Szerezze be a kosárműveletek felületét az IAggregatePartner.Customers.ById metódus meghívásával az ügyfélazonosítóval az ügyfél azonosításához, majd az interfész lekéréséhez a Cart tulajdonságból.
A kosár létrehozásához hívja meg a Create vagy a CreateAsync metódust.
Az igazolás befejezéséhez és más viszonteladókhoz való hozzáadásához tekintse meg a következő mintakérési és válaszmintákat:
Minta kérése
{
"PartnerOnRecordAttestationAccepted":true, "lineItems": [
{
"id": 0,
"catalogItemId": "CFQ7TTC0LH0Z:0001:CFQ7TTC0K18P",
"quantity": 1,
"billingCycle": "monthly",
"termDuration": "P1M",
"renewsTo": null,
"provisioningContext": {},
"customTermEndDate": "2022-02-19T00:00:00Z"
},
{
"id": 1,
"catalogItemId": "CFQ7TTC0LFLS:0002:CFQ7TTC0KDLJ",
"quantity": 2,
"billingCycle": "monthly",
"termDuration": "P1Y",
"participants": [
{
"key": "transaction_reseller",
"value": "5357564"
},
{
"key": "additional_transaction_reseller",
"value": "517285"
},
{
"key": "additional_transaction_reseller",
"value": "5357563"
}
]
}
]
}
Válaszminta
{
"id": "3e22b548-647d-4223-9675-1fcb6cb57665",
"creationTimestamp": "2021-08-18T17:29:52.3517492Z",
"lastModifiedTimestamp": "2021-08-18T17:29:52.3517553Z",
"expirationTimestamp": "2021-08-25T17:30:11.2406416Z",
"lastModifiedUser": "da62a0dc-35e9-4601-b48e-a047bd3ec7c1",
"status": "Active",
"lineItems": [
{
"id": 0,
"catalogItemId": "CFQ7TTC0LH0Z:0001:CFQ7TTC0K18P",
"quantity": 1,
"currencyCode": "USD",
"billingCycle": "monthly",
"termDuration": "P1M",
"customTermEndDate": "2022-02-19T00:00:00Z";
"provisioningContext": {},
"orderGroup": "0"
},
{
"id": 1,
"catalogItemId": "CFQ7TTC0LFLS:0002:CFQ7TTC0KDLJ",
"quantity": 2,
"currencyCode": "USD",
"billingCycle": "monthly",
"termDuration": "P1Y",
"participants": [
{
"key": "transaction_reseller",
"value": "5357564"
},
{
"key": "additional_transaction_reseller",
"value": "517285"
},
{
"key": "additional_transaction_reseller",
"value": "5357563"
}
],
"provisioningContext": {},
"orderGroup": "0"
}
],
"links": {
"self": {
"uri": "/customers/f81d98dd-c2f4-499e-a194-5619e260344e/carts/3e22b548-647d-4223-9675-1fcb6cb57665",
"method": "GET",
"headers": []
}
},
"attributes": {
"objectType": "Cart"
}
}
C# példa
// IAggregatePartner partnerOperations;
// string customerId;
// string subscriptionId;
var cart = new Cart()
{
LineItems = new List<CartLineItem>()
{
new CartLineItem()
{
/* Microsoft Azure Subscription */
Id = 0,
CatalogItemId = "MS-AZR-0145P",
Quantity = 1,
BillingCycle = BillingCycleType.Monthly,
TermDuration = "P1Y"
},
new CartLineItem()
{
/* Azure Reserved Instance */
Id = 1,
CatalogItemId = "DZH318Z0BQ36:004G:DZH318Z08C0S",
Quantity = 1,
BillingCycle = BillingCycleType.OneTime,
TermDuration = "P1Y",
ProvisioningContext = new Dictionary<string, string>
{
{ "subscriptionId", subscriptionId },
{ "scope", "shared" }
}
},
new CartLineItem()
{
/* Azure Reserved Instance */
Id = 2,
CatalogItemId = "DZH318Z0BQ36:004J:DZH318Z08B8X",
Quantity = 1,
BillingCycle = BillingCycleType.OneTime,
TermDuration = "P3Y",
ProvisioningContext = new Dictionary<string, string>
{
{ "subscriptionId", subscriptionId },
{ "scope", "shared" }
}
},
new CartLineItem()
{
/* Perpetual Software */
Id = 3,
CatalogItemId = "DG7GMGF0DWM3:0002:DG7GMGF0DT1M",
Quantity = 1,
BillingCycle = BillingCycleType.OneTime
},
new CartLineItem()
{
/* SaaS */
Id = 4,
CatalogItemId = "DZH318Z0BXWC:0002:DZH318Z0BMRV",
Quantity = 1,
BillingCycle = BillingCycleType.Monthly,
TermDuration = "P1M"
},
new CartLineItem()
{
/* SaaS Free Trial */
Id = 5,
CatalogItemId = "DZH318Z0C0WF:0001:DZH318Z0BP69",
Quantity = 10,
BillingCycle = BillingCycleType.None,
TermDuration = "P1M",
RenewsTo = new RenewsTo
{
TermDuration = "P1Y"
}
}
}
};
cart = partnerOperations.Customers.ById(customerId).Carts.Create(cart);
Java
A Partnerközpont Java SDK-val kezelheti a Partnerközpont erőforrásait. Ez egy nyílt forráskódú projekt, amelyet a partnerközösség tart fenn, és amelyet a Microsoft hivatalosan nem támogat. Ha problémát tapasztal, segítséget kérhet a közösségtől, vagy problémákat nyithat meg a GitHubon.
Rendelés létrehozása egy ügyfél számára:
Cart objektum példányosítása.
Hozzon létre egy CartLineItem objektumlistát, és rendelje hozzá a listát a kosár sorelemeihez. Minden egyes kosársorelem egy termék vásárlási adatait tartalmazza. Legalább egy kosársorelemnek rendelkeznie kell.
Az IAggregatePartner.getCustomers().byId függvény és az ügyfélazonosító meghívásával szerezze be a kosárműveletek felületét az ügyfél azonosításához, majd kérje le a felületet a getCart függvényből.
A kosár létrehozásához hívja meg a create függvényt.
Java-példa
// IAggregatePartner partnerOperations;
// String customerId;
// String subscriptionId;
// String catalogItemId;
CartLineItem lineItem = new CartLineItem();
lineItem.setBillingCycle(BillingCycleType.OneTime);
lineItem.setCatalogItemId(catalogItemId);
lineItem.setFriendlyName("Sample RI Purchase");
lineItem.setQuantity(1);
Map<String, String> provisioningContext = new HashMap<String,String>();
provisioningContext.put("duration", "3Years");
provisioningContext.put("scope", "shared");
provisioningContext.put("subscriptionId", subscriptionId);
lineItem.setProvisioningContext(provisioningContext);
List<CartLineItem> lineItemList = new ArrayList<CartLineItem>();
lineItemList.add(lineItem);
Cart cart = new Cart();
cart.setLineItems(lineItemList);
Cart cartCreated = partnerOperations.getCustomers().byId(customerId).getCarts().create(cart);
PowerShell
A Partnerközpont PowerShell-modulja a Partnerközpont erőforrásainak kezelésére használható. Ez egy nyílt forráskódú projekt, amelyet a partnerközösség tart fenn, és amelyet a Microsoft hivatalosan nem támogat. Ha problémát tapasztal, segítséget kérhet a közösségtől, vagy problémákat nyithat meg a GitHubon.
Rendelés létrehozása egy ügyfél számára:
Cart objektum példányosítása.
Hozzon létre egy CartLineItem objektumlistát, és rendelje hozzá a listát a kosár sorelemeihez. Minden egyes kosársorelem egy termék vásárlási adatait tartalmazza. Legalább egy kosársorelemnek rendelkeznie kell.
Hajtsa végre a New-PartnerCustomerCart parancsot a kosár létrehozásához.
# $customerId
# $subscriptionId
# $catalogItemId
$lineItem = New-Object -TypeName Microsoft.Store.PartnerCenter.PowerShell.Models.Carts.PSCartLineItem
$lineItem.BillingCycle = 'OneTime'
$lineItem.CatalogItemId = $catalogItemId
$lineItem.FriendlyName = 'Sample RI Purchase'
$lineItem.ProvisioningContext.Add('duration', '1Year')
$lineItem.ProvisioningContext.Add('scope', 'shared')
$lineItem.ProvisioningContext.Add('subscriptionId', $subsciptionId)
$lineItem.Quantity = 10
New-PartnerCustomerCart -CustomerId $customerId -LineItems $lineItem
REST-kérés
Kérés szintaxisa
Metódus | Kérés URI-ja |
---|---|
POST | {baseURL}/v1/customers/{customer-id}/carts HTTP/1.1 |
URI-paraméter
Az ügyfél azonosításához használja az alábbi elérési út paramétert.
Név | Típus | Kötelező | Leírás |
---|---|---|---|
ügyfél-azonosító | sztring | Igen | Guid formátumú ügyfél-azonosító, amely azonosítja az ügyfelet. |
Kérésfejlécek
További információ: Partnerközpont – REST fejlécek.
Kérés törzse
Ez a táblázat a kérelem törzsében található Kosár tulajdonságokat ismerteti.
Tulajdonság | Típus | Kötelező | Leírás |
---|---|---|---|
id | húr | Nem | A kosár sikeres létrehozásakor megadott kosárazonosító. |
creationTimeStamp | Dátum/idő | Nem | A kosár létrehozásának dátuma dátum-idő formátumban. Alkalmazva a kosár sikeres létrehozásakor. |
lastModifiedTimeStamp | Dátum/idő | Nem | A kosár utolsó frissítésének dátuma dátum-idő formátumban. Alkalmazva a kosár sikeres létrehozásakor. |
expirationTimeStamp | Dátum/idő | Nem | A kosár lejáratának dátuma dátum-idő formátumban. Alkalmazva a kosár sikeres létrehozásakor. |
lastModifiedUser | húr | Nem | A felhasználó, aki legutóbb frissítette a kosárt. Alkalmazva a kosár sikeres létrehozásakor. |
lineItems | Objektumok tömbje | Igen | CartLineItem-erőforrások tömbje. |
PartnerOnRecordAttestationAccepted | Logikai | Igen | Igazolja az igazolás befejezését |
Ez a táblázat a kérelem törzsében található CartLineItem tulajdonságokat ismerteti.
Tulajdonság | Típus | Kötelező | Leírás |
---|---|---|---|
id | húr | Nem | Egy kosársorelem egyedi azonosítója. Alkalmazva a kosár sikeres létrehozásakor. |
catalogId | sztring | Igen | A katalóguselem azonosítója. Győződjön meg arról, hogy a katalóguselem rendelkezésre állása a megfelelő szegmenshez tartozik. |
friendlyName | húr | Nem | Opcionális. A partner által definiált elem rövid neve, amely segít a egyértelműségben. |
promotionId | húr | Nem | Opcionális. A legtöbb NCE-előléptetés automatikusan érvényes lesz, de ha az opcionális promóciók (például a Bridge to the Cloud 2) egy kosársorra vonatkoznak, a partnereknek tartalmazniuk kell az előléptetés azonosítóját a kosárhoz való hozzáadási kérelemben. |
mennyiség | egész | Igen | A licencek vagy példányok száma. |
currencyCode | húr | Nem | A pénznem kódja. |
billingCycle | Objektum | Igen | Az aktuális időszakhoz beállított számlázási ciklus típusa. |
customTermEndDate | Dátum/idő | Nem | Annak a meglévő előfizetésnek a záró dátuma, amelyhez az új előfizetést össze szeretné fűzni. |
Résztvevők | Objektumsztring-párok listája | Nem | PartnerId rekordon (PartnerID) gyűjteménye a vásárlás során. |
provisioningContext | Szótári sztring<, sztring> | Nem | A katalógus egyes elemeinek kiépítéséhez szükséges információk. A termékváltozatban található ProvisioningVariables tulajdonság azt jelzi, hogy mely tulajdonságok szükségesek a katalógus egyes elemeihez. |
orderGroup | húr | Nem | Egy csoport, amely jelzi, hogy mely elemek helyezhetők el együtt. |
error | Objektum | Nem | A kosár létrehozása után alkalmazva, ha hiba történt. |
renewsTo | Objektumok tömbje | Nem | A RenewsTo-erőforrások tömbje. |
IgazolásAccepted | Logikai | Nem | Az ajánlatra vagy termékváltozatra vonatkozó feltételeket jelzi. Csak olyan ajánlatokhoz vagy termékváltozatokhoz szükséges, ahol a SkuAttestationProperties vagy az OfferAttestationProperties enforceAttestation igaz. |
transaction_reseller | Sztring | Nem | Ha egy közvetett szolgáltató megrendelést ad egy közvetett viszonteladó nevében, ezt a mezőt csak a közvetett viszonteladó PartnerID azonosítójával töltse fel (a közvetett szolgáltató azonosítója soha nem). Ez biztosítja az ösztönzők megfelelő nyilvántartását. |
additional_transaction_reseller | Sztring | Nem | Ha egy közvetett szolgáltató megrendelést ad egy közvetett viszonteladó nevében, töltse ki ezt a mezőt csak a További közvetett viszonteladó partnerazonosítójával (a közvetett szolgáltató azonosítója soha nem). Ezekre a további viszonteladókra nem vonatkoznak ösztönzők. Legfeljebb 5 közvetett viszonteladó adható meg. Ez csak az EU-n/EFTA-országokon/régiókon belül működő alkalmazandó partnerek. |
Ez a táblázat a kérelem törzsében található RenewsTo tulajdonságokat ismerteti.
Tulajdonság | Típus | Kötelező | Leírás |
---|---|---|---|
termDuration | húr | Nem | A megújítási időszak időtartamának ISO 8601-es ábrázolása. Az aktuális támogatott értékek a P1M (1 hónap) és a P1Y (1 év). |
Példa kérése
POST /v1/customers/d6bf25b7-e0a8-4f2d-a31b-97b55cfc774d/carts HTTP/1.1
Authorization: Bearer <token>
Accept: application/json
MS-RequestId: 4fa6dad6-a89f-4875-8247-8294a10ae1cf
MS-CorrelationId: 0e93c70c-977a-4a88-9580-7cf084c73286
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
{
"lineItems": [
{
/* Microsoft Azure Subscription */
"id": 0,
"catalogItemId": "MS-AZR-0145P",
"quantity": 1,
"billingCycle": "monthly",
"termDuration": "P1Y"
},
{
/* Azure Reserved Instance */
"id": 1,
"catalogItemId": "DZH318Z0BQ36:004G:DZH318Z08C0S",
"quantity": 1,
"billingCycle": "one_time",
"termDuration": "P1Y",
"provisioningContext": {
"subscriptionId": "1C461A25-F729-4FA5-AADB-280947DD05E8",
"scope": "shared"
}
},
{
/* Azure Reserved Instance */
"id": 2,
"catalogItemId": "DZH318Z0BQ36:004J:DZH318Z08B8X",
"quantity": 1,
"billingCycle": "one_time",
"termDuration": "P3Y",
"provisioningContext": {
"subscriptionId": "1C461A25-F729-4FA5-AADB-280947DD05E8",
"scope": "single"
}
},
{
/* Perpetual Software */
"id": 3,
"catalogItemId": "DG7GMGF0DWTL:0001:DG7GMGF0DSFM",
"quantity": 1,
"billingCycle": "one_time"
},
{
/* SaaS */
"id": 4,
"catalogItemId": "DZH318Z0BXWC:0002:DZH318Z0BMRV",
"quantity": 1,
"billingCycle": "monthly",
"termDuration": "P1M"
},
{
/* SaaS Free Trial */
"id": 5,
"catalogItemId": "DZH318Z0C0WF:0001:DZH318Z0BP69",
"quantity": 10,
"billingCycle": "none",
"termDuration": "P1M",
"renewsTo": {
"termDuration": "P1Y"
}
}
]
}
Fontos
2023 júniusától a partnerközpont .NET SDK legújabb, 3.4.0-s kiadását archiváljuk. Az SDK-kiadást letöltheti a GitHubról, valamint egy hasznos információkat tartalmazó olvasófájlt.
A partnereket arra ösztönzik, hogy továbbra is használják a Partnerközpont REST API-jait.
REST-válasz
Ha sikeres, ez a metódus a válasz törzsében lévő feltöltött Kosár erőforrást adja vissza.
Válasz sikeresség és hibakódok
Minden válaszhoz tartozik egy HTTP-állapotkód, amely jelzi a sikert vagy a hibát és a hibakeresési információkat. A kód, hibatípus és egyéb paraméterek olvasásához használjon hálózati nyomkövetési eszközt. A teljes listát a Hibakódok című témakörben találja.
Példa válaszra
HTTP/1.1 201 Created
Content-Length: 764
Content-Type: application/json; charset=utf-8
MS-CorrelationId: 0e93c70c-977a-4a88-9580-7cf084c73286
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": "3655b1a0-b1c9-4268-9824-577fdbc4d0be",
"creationTimestamp": "2019-01-16T00:45:41.6062996Z",
"lastModifiedTimestamp": "2019-01-16T00:45:41.6062996Z",
"expirationTimestamp": "2019-01-16T01:00:54.4188497Z",
"lastModifiedUser": "1824b7fc-2fac-4478-b177-66823c40ab75",
"status": "Active",
"lineItems": [
{
"id": 0,
"catalogItemId": "MS-AZR-0145P",
"quantity": 1,
"currencyCode": "USD",
"billingCycle": "monthly",
"termDuration": "P1Y",
"orderGroup": "OMS-0"
},
{
"id": 1,
"catalogItemId": "DZH318Z0BQ36:004G:DZH318Z08C0S",
"quantity": 1,
"currencyCode": "USD",
"billingCycle": "one_time",
"termDuration": "P1Y",
"provisioningContext": {
"subscriptionId": "1C461A25-F729-4FA5-AADB-280947DD05E8",
"scope": "shared"
},
"orderGroup": "0"
},
{
"id": 2,
"catalogItemId": "DZH318Z0BQ36:004J:DZH318Z08B8X",
"quantity": 1,
"currencyCode": "USD",
"billingCycle": "one_time",
"termDuration": "P3Y",
"provisioningContext": {
"subscriptionId": "1C461A25-F729-4FA5-AADB-280947DD05E8",
"scope": "shared"
},
"orderGroup": "0"
},
{
"id": 3,
"catalogItemId": "DG7GMGF0DWM3:0002:DG7GMGF0DT1M",
"quantity": 1,
"currencyCode": "USD",
"billingCycle": "one_time",
"orderGroup": "0"
},
{
"id": 4,
"catalogItemId": "DZH318Z0BXWC:0002:DZH318Z0BMRV",
"quantity": 1,
"currencyCode": "USD",
"billingCycle": "monthly",
"termDuration": "P1M",
"orderGroup": "1"
},
{
"id": 5,
"catalogItemId": "DZH318Z0C0WF:0001:DZH318Z0BP69",
"quantity": 10,
"currencyCode": "USD",
"billingCycle": "none",
"termDuration": "P1M",
"renewsTo": {
"termDuration": "P1Y"
},
"orderGroup": "2"
}
],
"links": {
"self": {
"uri": "/customers/28045616-f6b9-462f-9701-0d89b5e65c44/carts/3655b1a0-b1c9-4268-9824-577fdbc4d0be",
"method": "GET",
"headers": []
}
},
"attributes": {
"objectType": "Cart"
}
}
Példa új kereskedelmi licencalapú szolgáltatásokra
Feljegyzés
A licencalapú szolgáltatások új kereskedelmi szolgáltatásai számos új képességet tartalmaznak, és minden Felhőszolgáltató (CSP) számára elérhetők. További információkért tekintse meg az új kereskedelmi szolgáltatások áttekintését.
Példa kérése
POST /v1/customers/932c4101-dc08-461b-b4c1-75d80e905775/carts HTTP/1.1
Host: api.partnercenter.microsoft.com
Content-Type: application/json
Content-Length: 165
{
"LineItems": [
{
"CatalogItemId":"CFQ7TTC0LFLZ:0002:CFQ7TTC0K4TS",
"Quantity": 1,
"TermDuration": "P1M",
"BillingCycle": "Monthly"
}
]
}
Fontos
Az Azure-terv és az állandó szoftversorelemek nem támogatják a termDuration tulajdonságot. Ne foglalja bele ezt az ilyen típusú elemekbe.
REST-válasz
Ha sikeres, ez a metódus a válasz törzsében lévő feltöltött Kosár erőforrást adja vissza.
Válasz sikeresség és hibakódok
Minden válaszhoz tartozik egy HTTP-állapotkód, amely jelzi a sikert vagy a hibát, valamint egyéb hibakeresési információkat. A kód, hibatípus és egyéb paraméterek olvasásához használjon hálózati nyomkövetési eszközt. A teljes listát a Hibakódok című témakörben találja.
Példa válaszra
{
"id": "2517c51b-58cd-4abe-87ed-3ab812401ab4",
"creationTimestamp": "2023-07-11T21:16:11.55149Z",
"lastModifiedTimestamp": "2023-07-11T21:16:11.5515713Z",
"expirationTimestamp": "2023-07-18T21:16:17.2480482Z",
"lastModifiedUser": "9db12087-fbc3-481c-8965-73d44ff88e27",
"status": "Active",
"lineItems": [
{
"id": 0,
"catalogItemId": "CFQ7TTC0LF8S:0001:CFQ7TTC0VZW5",
"quantity": 1,
"currencyCode": "USD",
"billingCycle": "monthly",
"termDuration": "P1Y",
"provisioningContext": {},
"orderGroup": "0",
"pricing": {
"listPrice": 30.4,
"discountedPrice": 30.4,
"proratedPrice": 30.4,
"price": 30.4,
"extendedPrice": 364.8
}
}
],
"links": {
"self": {
"uri": "/customers/ebd8b4c2-4069-46a8-bd70-123d6dec3e39/carts/2517c51b-58cd-4abe-87ed-3ab812401ab4",
"method": "GET",
"headers": []
}
},
"attributes": {
"objectType": "Cart"
}
}
Visszajelzés
https://aka.ms/ContentUserFeedback.
Hamarosan elérhető: 2024-ben fokozatosan kivezetjük a GitHub-problémákat a tartalom visszajelzési mechanizmusaként, és lecseréljük egy új visszajelzési rendszerre. További információ:Visszajelzés küldése és megtekintése a következőhöz: