Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
için geçerlidir: İş Ortağı Merkezi | 21Vianet tarafından işletilen İş Ortağı Merkezi | ABD Kamu için Microsoft Bulut İş Ortağı Merkezi
Azure ayrılmış VM örneği ürünleri için siparişi oluşturma yalnızca uygulanır:
- İş Ortağı Merkezi
Şu anda satışa sunulanlar hakkında bilgi için, Bulut Çözümü Sağlayıcısı programındaki İş ortağı teklifleriniinceleyin.
Önkoşullar
İş Ortağı Merkezi kimlik doğrulaması'nda açıklandığı gibi kimlik bilgileri. Bu senaryo hem tek başına Uygulama hem de Uygulama+Kullanıcı kimlik bilgileriyle kimlik doğrulamayı destekler.
Bir müşteri kimliği (
customer-tenant-id). Müşterinin kimliğini bilmiyorsanız, İş Ortağı Merkezi içinde, önce Müşteriler çalışma alanını, sonra müşteri listesinden müşteriyi ve ardından Hesap'ı seçerek arayabilirsiniz. Müşterinin Hesap sayfasında, Müşteri Hesabı Bilgileri bölümünde Microsoft Kimliği bulun. Microsoft kimliği, müşteri kimliğiyle (customer-tenant-id) aynıdır.Teklif tanımlayıcısı.
C#
Müşteriye sipariş oluşturmak için:
Order nesnesinin örneğini oluşturun ve müşteriyi kaydetmek için ReferenceCustomerID özelliğini müşteri kimliğine ayarlayın.
OrderLineItem nesnelerinin listesini oluşturun ve listeyi siparişin LineItems özelliğine atayın. Her sipariş satırı öğesi, bir teklif için satın alma bilgilerini içerir. En az bir sipariş kaleminiz olmalıdır.
İşlemleri sıralamak için bir arabirim edinin. İlk olarak, müşteriyi tanımlamak için müşteri kimliğiyle IAggregatePartner.Customers.ById yöntemini çağırın. Ardından, Orders özelliğinden arabirimi alın.
Create veya CreateAsync yöntemini çağırın ve Order nesnesini geçirin.
Kanıtlamayı tamamlamak ve diğer kurumsal bayileri dahil etmek için aşağıdaki İstek ve Yanıt Örnekleri örneğine bakın:
İstek örneği
{
"PartnerOnRecordAttestationAccepted":true,
"lineItems": [
{
"offerId": "CFQ7TTC0LH0Z:0001:CFQ7TTC0K18P",
"quantity": 1,
"lineItemNumber": 0,
"PartnerIdOnRecord": "873452",
"AdditionalPartnerIdsOnRecord":["4847383","873452"]
}
],
"billingCycle": "monthly"
}
Yanıt örneği
{
"id": "5cf72f146967",
"alternateId": "5cf72f146967",
"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,
"partnerIdOnRecord": "873452",
"additionalPartnerIdsOnRecord": [
"4847383",
"873452"
],
"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": []
}
}
}
],
"creationDate": "2021-08-17T18:13:11.3122226Z",
"status": "pending",
"transactionType": "UserPurchase",
"links": {
"self": {
"uri": "/customers/f81d98dd-c2f4-499e-a194-5619e260344e/orders/5cf72f146967",
"method": "GET",
"headers": []
},
"provisioningStatus": {
"uri": "/customers/f81d98dd-c2f4-499e-a194-5619e260344e/orders/5cf72f146967/provisioningstatus",
"method": "GET",
"headers": []
},
"patchOperation": {
"uri": "/customers/f81d98dd-c2f4-499e-a194-5619e260344e/orders/5cf72f146967",
"method": "PATCH",
"headers": []
}
},
"client": {},
"attributes": {
"objectType": "Order"
}
}
IAggregatePartner partnerOperations;
string customerId;
string offerId;
var order = new Order()
{
ReferenceCustomerId = customerId,
LineItems = new List<OrderLineItem>()
{
new OrderLineItem()
{
OfferId = offerId,
FriendlyName = "new offer purchase",
Quantity = 1,
ProvisioningContext = new Dictionary<string, string>
{
{ "subscriptionId", "bbbb1b1b-cc2c-dd3d-ee4e-ffffff5f5f5f" },
{ "scope", "shared" },
{ "duration", "3Years" }
}
}
}
};
var createdOrder = partnerOperations.Customers.ById(customerId).Orders.Create(order);
Örnek: Konsol test uygulaması. Project: İş Ortağı Merkezi SDK Örnekleri Sınıf: CreateOrder.cs
REST isteği
İstek söz dizimi
| Yöntem | İstek URI'si |
|---|---|
| POST | {baseURL}/v1/customers/{customer-id}/orders HTTP/1.1 |
URI parametreleri
Müşteriyi tanımlamak için aşağıdaki yol parametresini kullanın.
| İsim | Tür | Gerekli | Açıklama |
|---|---|---|---|
| müşteri-id | dizgi | Evet | Müşteriyi tanımlayan GUID biçimli müşteri kimliği. |
İstek başlıkları
Daha fazla bilgi için İş Ortağı Merkezi REST üst bilgileribölümüne bakın.
İstek gövdesi
Sipariş
Bu tabloda, istek gövdesindeki Sipariş özellikleri açıklanmaktadır.
| Mülk | Tür | Gerekli | Açıklama |
|---|---|---|---|
| id | dizgi | Hayır | Siparişin başarıyla oluşturulmasından sonra sağlanan sipariş tanımlayıcısı. |
| referansMüşteriKimliği | dizgi | Hayır | Müşteri tanımlayıcısı. |
| billingCycle | dizgi | Hayır | İş ortağının bu sipariş için faturalandırıldığı sıklığı gösterir. Desteklenen değerler, BillingCycleTypeiçinde bulunan üye adlarıdır. Sipariş oluşturma sırasında varsayılan değer "Aylık" veya "OneTime" olur. Bu alan, siparişin başarıyla oluşturulmasından sonra uygulanır. |
| lineItems | OrderLineItem kaynak dizisi | Evet | Müşterinin satın aldığı tekliflerin, miktar dahil olmak üzere listelenmiş listesi. |
| para birimi kodu | dizgi | Hayır | Yalnızca okunabilir. Sipariş verirken kullanılan para birimi. Siparişin başarıyla oluşturulması üzerine uygulanır. |
| oluşturmaTarihi | tarih ve zaman | Hayır | Yalnızca okunabilir. Siparişin oluşturulduğu tarih, tarih-saat biçimindedir. Siparişin başarıyla oluşturulması üzerine uygulanır. |
| durum | dizgi | Hayır | Yalnızca okunabilir. Siparişin durumu. Desteklenen değerler, OrderStatusiçinde bulunan üye adlarıdır. |
| Bağlantı | SiparişBağlantıları | Hayır | Sipariş'e karşılık gelen kaynak bağlantıları. |
| Öznitelik | ResourceAttributes | Hayır | Sipariş'e karşılık gelen meta veri öznitelikleri. |
| Ortak Kayıt Beyanı Kabul Edildi | Boolean | Evet | Kanıtlamanın tamamlanmasını onaylar |
Sipariş Satır Kalemi
Bu tabloda, istek gövdesindeki OrderLineItem özellikleri açıklanmaktadır.
Not
API aracılığıyla bir sepeti doğrularken, satır öğeleri sepete koyulma sırasına göre işlenir. Sipariş, sepette biri promosyon kimliğine sahip, diğeri ise promosyon kimliğine sahip olmayan (örneğin, farklı koşullara sahip) aynı türde iki ürün varsa, yeni teklif kısıtlamaları ile promosyonlara uygunluğu etkileyebilir. Birden çok ürünü satın alıyorsanız, promosyon için uygun olan satır öğelerini ilk olarak sepete yerleştirdiğinizden emin olun.
| İsim | Tür | Gerekli | Açıklama |
|---|---|---|---|
| satırKalemiNumarası | Int | Evet | Koleksiyondaki her satır öğesi, 0'dan 1 sayısına kadar sayarak benzersiz bir satır numarası alır. |
| teklifID | dizgi | Evet | Teklif tanımlayıcısı. Teklifin kullanılabilirliğinin doğru segment için olduğundan emin olun. |
| abonelikKimliği | dizgi | Hayır | Abonelik tanımlayıcısı. |
| ebeveynAbonelikKimliği | dizgi | Hayır | Opsiyonel. Bir eklenti teklifindeki üst aboneliğin kimliği. Yalnızca PATCH için geçerlidir. |
| friendlyName | dizgi | Hayır | Opsiyonel. Belirsizliği gidermek için iş ortağı tarafından tanımlanan aboneliğin açıklayıcı adı. |
| miktar | Int | Evet | Lisans tabanlı abonelik için lisans sayısı. |
| özelDönemBitişTarihi | TarihSaat | Hayır | Yeni aboneliğin ilk faturalama döneminin bitiş tarihi. |
| partnerIdOnRecord | dizgi | Hayır | Dolaylı bir sağlayıcı dolaylı bayi adına bir sipariş verildiğinde, bu alanı yalnızca dolaylı satıcının PartnerID değeriyle doldurun (hiçbir zaman dolaylı sağlayıcının kimliği değildir). Bu, teşviklerin düzgün hesaplanmasını sağlar. |
| sağlama bağlamı | Sözlük<dizesi, dize> | Hayır | Katalogdaki bazı öğeler için tedarik için bilgiler gereklidir. SKU'daki provisioningVariables özelliği, katalogdaki belirli öğeler için hangi özelliklerin gerekli olduğunu gösterir. |
| Bağlantı | OrderLineItemLinks | Hayır | Yalnızca okunabilir. Sipariş satırı öğesine karşılık gelen kaynak bağlantıları. |
| Öznitelik | ResourceAttributes | Hayır | OrderLineItem öğesine karşılık gelen meta veri öznitelikleri. |
| yenilenir | Nesne dizisi | Hayır | RenewsTo kaynakları dizisi. |
| Teyit Kabul Edildi | Bool | Hayır | Teklif veya SKU koşullarına onayı belirtir. Yalnızca SkuAttestationProperties veya OfferAttestationProperties enforceAttestation değerinin True olduğu teklifler veya sku'lar için gereklidir. |
| Kayıtlı Ek Ortak Kimlikleri | Dize | Hayır | Dolaylı bir sağlayıcı dolaylı bayi adına bir sipariş verildiğinde, bu alanı yalnızca Ek dolaylı bayinin İş Ortağı Kimliği ile doldurun (asla dolaylı sağlayıcının kimliği kullanılmaz). Teşvikler bu diğer kurumsal bayiler için geçerli değildir. Yalnızca en fazla beş Dolaylı Kurumsal Bayi girilebilir. Bu değer yalnızca Avrupa ülkeleri/bölgeleri içinde işlem gören geçerli iş ortaklarıdır. |
| scheduledNextTermInstructions | object | Hayır | Deneme aboneliği için sonraki dönem yönergelerini tanımlar. İş ortakları, yenileme sırasında ilgili ücretli aboneliğin sahip olduğu termDuration, billingFrequency ve miktar bilgilerini belirtebilir. |
Not
partnerIdOnRecord yalnızca dolaylı bir sağlayıcı dolaylı bayi adına sipariş verdiği zaman sağlanmalıdır. Yalnızca dolaylı bayinin İş Ortağı Kimliğini depolamak için kullanılır (dolaylı sağlayıcının kimliğini değil).
Yenilenir
Bu tabloda, Microsoft Market tekliflerinin istek gövdesindeki RenewsTo özellikleri açıklanmaktadır.
| Mülk | Tür | Gerekli | Açıklama |
|---|---|---|---|
| dönem süresi | dizgi | Hayır | Yenileme döneminin süresinin ISO 8601 gösterimi. Desteklenen geçerli değerler P1M (1 ay) ve P1Y (1 yıl). |
ScheduledNextTermInstructions
Bu tabloda, yeni ticaret deneyimi (NCE) lisans tabanlı deneme teklifleri için istek gövdesindeki scheduledNextTermInstructions özellikleri açıklanmaktadır. Hiçbir değer belirtilmezse, deneme sürümleri yıllık süreli, aylık faturalamalı ve 25 lisanslı ücretli aboneliklere dönüştürülür.
| Mülk | Tür | Gerekli | Açıklama |
|---|---|---|---|
| ürün | array | Hayır | Deneme aboneliğinin yenileneceği teklifi, ücretli aboneliğin sahip olduğu vade ve faturalama sıklığını belirten bir dizi. |
| miktar | Int | Hayır | Deneme teklifi yenilendikten sonra ilgili ücretli aboneliğin sahip olduğu lisans miktarı. |
Ürün
Bu tabloda, NCE lisans tabanlı deneme teklifleri için istek gövdesindeki productTerm özellikleri açıklanmaktadır. Bu dizide hiçbir değer belirtilmezse, deneme süresi yıllık abonelik ve aylık faturalama ile ücretli aboneliğe yenilenir.
| Mülk | Tür | Gerekli | Açıklama |
|---|---|---|---|
| Ürün Kimliği | dizgi | Hayır | Deneme sürümünün yenilendiği ücretli aboneliğin ürününü temsil etmek için biçimlendirilmiş bir GUID. |
| skuId | dizgi | Hayır | Deneme sürümünün yenilendiği ücretli aboneliğin SKU'sunu temsil etmek için biçimlendirilmiş bir GUID. |
| availabilityId | dizgi | Hayır | Deneme sürümünün yenilendiği ücretli aboneliğin kullanılabilirliğini temsil etmek için biçimlendirilmiş bir GUID. |
| billingCycle | dizgi | Hayır | Deneme teklifi yenilendikten sonra ilgili ücretli aboneliğin faturalama sıklığı. |
| dönem süresi | dizgi | Hayır | Deneme teklifi yenilendikten sonra ilgili ücretli aboneliğin sahip olduğu süre. |
İstek örneği
POST https://api.partnercenter.microsoft.com/v1/customers/b0d70a69-4c42-4b27-b17b-91a835d8686a/orders HTTP/1.1
Authorization: Bearer <token>
Host: api.partnercenter.microsoft.com
Content-Length: 691
Content-Type: application/json
{
"BillingCycle": "one_time",
"CurrencyCode": "USD",
"LineItems": [
{
"LineItemNumber": 0,
"ProvisioningContext": {
"subscriptionId": "cccc2c2c-dd3d-ee4e-ff5f-aaaaaa6a6a6a",
"scope": "shared",
"duration": "1Year"
},
"OfferId": "DZH318Z0BQ4B:0047:DZH318Z0DSM8",
"FriendlyName": "A_sample_Azure_RI",
"Quantity": 1
}
]
}
// request example where some renewal values for an NCE license-based trial are specified
http
POST https://api.partnercenter.microsoft.com/v1/customers/b0d70a69-4c42-4b27-b17b-91a835d8686a/orders HTTP/1.1
Authorization: Bearer <token>
Host: api.partnercenter.microsoft.com
Content-Length: 486
Content-Type: application/json
{
"lineItems": [
{
"id": 0,
"catalogItemId": "CFQ7TTC0LCHC:0003:CFQ7TTC0XCQC",
"quantity": 25,
"currencyCode": "USD",
"billingCycle": "none",
"termDuration": "P1M",
"promotionId": null,
"provisioningContext": {},
"customTermEndDate": null,
"scheduledNextTermInstructions": {
"product": {
"billingCycle": "monthly",
"termDuration": "P1M"
}
}
}
],
"partnerOnRecordAttestationAccepted": true
}
REST yanıtı
Başarılı olursa, yöntem yanıt gövdesinde bir Order kaynağı döndürür.
Siparişte bir veya daha fazla abonelik varsa, ilgili abonelik kimliği değerleri yalnızca ILGILI abonelikler API çağrısı sırasında sağlandığında REST yanıtında görünür. Sağlama abonelikleri zaman uyumsuz olarak gerçekleşir ve bu nedenle abonelik kimliği değerleri Sipariş Oluştur çağrısının REST yanıtında her zaman görünür olmayabilir. Ancak, ilgili abonelikler sağlandıktan sonra abonelik kimliği değerlerine Sipariş Al ve Kimlik API'sine göre Sipariş Al çağrıları aracılığıyla erişilebilir.
Yanıt başarısı ve hata kodları
Her yanıt, başarılı veya başarısız olduğunu belirten bir HTTP durum kodu ve daha fazla hata ayıklama bilgisi ile birlikte gelir. Bu kodu, hata türünü ve diğer parametreleri okumak için bir ağ izleme aracı kullanın. Tam liste için bkz. İş Ortağı Merkezi hata kodları.
Yanıt örneği
{
"id": "Cs_jyTxubLpvdJXdo8xcQZN6I2RsLrgZ1",
"referenceCustomerId": "b0d70a69-4c42-4b27-b17b-91a835d8686a",
"billingCycle": "one_time",
"currencyCode": "USD",
"lineItems": [
{
"lineItemNumber": 0,
"offerId": "84A03D81-6B37-4D66-8D4A-FAEA24541538",
"friendlyName": "A_sample_Azure_RI",
"quantity": 1,
"links": {
"sku": {
"uri": "/products/DZH318Z0BQ4B/skus/0047?country=US",
"method": "GET",
"headers": []
}
}
} ],
"creationDate": "2018-03-15T22:30:02.085152Z",
"status": "pending",
"links": {
"provisioningStatus": {
"uri": "/customers/b0d70a69-4c42-4b27-b17b-91a835d8686a/orders/Cs_jyTxubLpvdJXdo8xcQZN6I2RsLrgZ1/provisioningstatus",
"method": "GET",
"headers": []
},
"self": {
"uri": "/customers/b0d70a69-4c42-4b27-b17b-91a835d8686a/orders/Cs_jyTxubLpvdJXdo8xcQZN6I2RsLrgZ1",
"method": "GET",
"headers": []
}
},
"attributes": {
"objectType": "Order"
}
}
// response content for an order containing an NCE license-based trial
{
"id": "99d3777b-61da-4c95-aefa-203c248c4180",
"creationTimestamp": "2025-02-04T22:22:36.7924103Z",
"lastModifiedTimestamp": "2025-02-04T22:22:36.7924109Z",
"expirationTimestamp": "2025-02-11T22:23:34.5190698Z",
"lastModifiedUser": "b5109661-56c5-45ed-9447-f67463458a97",
"status": "Active",
"lineItems": [
{
"id": 0,
"catalogItemId": "CFQ7TTC0LCHC:0003:CFQ7TTC0XCQC",
"quantity": 25,
"currencyCode": "USD",
"billingCycle": "none",
"termDuration": "P1M",
"provisioningContext": {},
"orderGroup": "0",
"pricing": {
"listPrice": 0.0,
"discountedPrice": 0.0,
"proratedPrice": 0.0,
"price": 0.0,
"extendedPrice": 0.0
},
"scheduledNextTermInstructions": {
"product": {
"productId": "CFQ7TTC0LCHC",
"skuId": "0002",
"availabilityId": "CFQ7TTC0XL82",
"billingCycle": "monthly",
"termDuration": "P1M"
},
"quantity": 25
}
}
],
"links": {
"self": {
"uri": "/customers/81e78b53-9aa8-44e7-a041-3b15272d8f84/carts/99d3777b-61da-4c95-aefa-203c248c4180",
"method": "GET",
"headers": []
}
},
"attributes": {
"objectType": "Cart"
}
}