Bagikan melalui


Memperbarui kelir

Cara memperbarui pesanan untuk pelanggan di kelir.

Perhatikan, keranjang kedaluwarsa tujuh hari dari pembuatan awal.

Prasyarat

  • Kredensial seperti yang dijelaskan dalam autentikasi Pusat Mitra. Skenario ini mendukung autentikasi dengan kredensial Aplikasi mandiri dan Aplikasi+Pengguna.

  • ID pelanggan (customer-tenant-id). Jika Anda tidak mengetahui ID pelanggan, Anda dapat mencarinya di Pusat Mitra dengan memilih ruang kerja Pelanggan , lalu pelanggan dari daftar pelanggan, lalu Akun. Pada halaman Akun pelanggan, cari ID Microsoft di bagian Info Akun Pelanggan. ID Microsoft sama dengan ID pelanggan (customer-tenant-id).

  • ID Kelir untuk kelir yang ada.

C#

Untuk memperbarui pesanan pelanggan, dapatkan kelir menggunakan metode Get() dengan meneruskan ID pelanggan dan kelir menggunakan fungsi ById(). Buat perubahan yang diperlukan pada kelir. Sekarang panggil metode Put dengan menggunakan ID pelanggan dan kelir menggunakan metode ById().

Terakhir, panggil metode Put() atau PutAsync() untuk membuat pesanan.

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

Untuk menyelesaikan pengesahan dan menyertakan pengecer lain, lihat sampel berikut.

Sampel API - Lihat kelir

{
    "orders": [
        {
            "id": "f76c6b7f449d",
            "alternateId": "f76c6b7f449d",
            "referenceCustomerId": "f81d98dd-c2f4-499e-a194-5619e260344e",
            "billingCycle": "monthly",
            "currencyCode": "USD",
            "currencySymbol": "$",
            "lineItems": [
                {
                    "lineItemNumber": 0,
                    "offerId": "CFQ7TTC0LH0Z:0001:CFQ7TTC0K18P",
                    "subscriptionId": "ebc0beef-7ffb-4044-c074-16f324432139",
                    "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": "261bac40-7d88-4327-dfa3-dacd09222d62",
                    "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"
    }
}

Permintaan REST

Minta sintaks

Metode URI Permintaan
TARUH {baseURL}/v1/customers/{customer-id}/carts/{cart-id} HTTP/1.1

Parameter URI

Gunakan parameter jalur berikut untuk mengidentifikasi pelanggan, dan tentukan kelir yang akan diperbarui.

Nama Tipe Diperlukan Deskripsi
id pelanggan string Ya ID pelanggan berformat GUID yang mengidentifikasi pelanggan.
cart-id string Ya Kelopak-id berformat GUID yang mengidentifikasi kelopak.

Header permintaan

Untuk informasi selengkapnya, lihat Header REST Pusat Mitra.

Isi permintaan

Tabel ini menjelaskan properti Cart dalam isi permintaan.

Properti Tipe Diperlukan Deskripsi
id string No Pengidentifikasi kelir yang disediakan setelah keberhasilan pembuatan kelir.
creationTimeStamp DateTime No Tanggal kelir dibuat, dalam format tanggal-waktu. Diterapkan setelah pembuatan kemudi yang berhasil.
lastModifiedTimeStamp DateTime No Tanggal kelir terakhir diperbarui, dalam format tanggal-waktu. Diterapkan setelah pembuatan kemudi yang berhasil.
expirationTimeStamp DateTime No Tanggal keranjang akan kedaluwarsa, dalam format tanggal-waktu. Diterapkan setelah keberhasilan pembuatan kerbau.
lastModifiedUser string No Pengguna yang terakhir memperbarui kelir. Diterapkan setelah keberhasilan pembuatan kerbau.
lineItems Array objek Ya Array sumber daya CartLineItem .

Tabel ini menjelaskan properti CartLineItem dalam isi permintaan.

Properti Tipe Diperlukan Deskripsi
id string No Pengidentifikasi unik untuk item garis kelistrikan. Diterapkan setelah keberhasilan pembuatan kerbau.
catalogId string Ya Pengidentifikasi item katalog.
friendlyName string No Opsional. Nama yang mudah diingat untuk item yang ditentukan oleh mitra untuk membantu memisahkan.
promotionId string No Opsional. Sebagian besar promosi NCE akan berlaku secara otomatis, namun untuk promosi opsional (seperti Bridge to the Cloud 2) untuk diterapkan ke item baris kelir, mitra harus menyertakan ID promosi dalam permintaan tambahkan ke kelir.
kuantitas int Ya Jumlah lisensi atau instans.
currencyCode string No Kode mata uang.
billingCycle Objek Ya Jenis siklus penagihan yang ditetapkan untuk periode saat ini.
peserta Daftar pasangan String Objek No Kumpulan peserta pada pembelian.
provisioningContext String kamus<, string> No Konteks yang digunakan untuk provisi penawaran.
orderGroup string No Grup untuk menunjukkan item mana yang dapat ditempatkan bersama-sama.
kesalahan Objek No Diterapkan setelah kelir dibuat dalam kesalahan.
AdditionalPartnerIdsOnRecord String No Ketika penyedia tidak langsung menempatkan pesanan atas nama reseller tidak langsung, isi bidang ini dengan PartnerID dari Reseller tidak langsung tambahan saja (tidak pernah ID penyedia tidak langsung). Insentif tidak berlaku untuk reseller lain ini. Hanya maksimal lima Reseller Tidak Langsung yang dapat dimasukkan. Ini hanya mitra yang berlaku yang bertransaksi dalam negara/wilayah UE / EFTA.

Contoh permintaan

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: 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

{
    {
        "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": "3D5ECED6-1151-44C7-AEE6-70A4BB725666",
                    "Scope": "shared",
                    "Duration": "1Year"
                }
            }
        ],
    }
}

Penting

Pada Juni 2023, Pusat Mitra terbaru .NET SDK rilis 3.4.0 sekarang diarsipkan. Anda dapat mengunduh rilis SDK dari GitHub, bersama dengan file readme yang berisi informasi yang berguna.

Mitra didorong untuk terus menggunakan REST API Pusat Mitra.

Respons REST

Jika berhasil, metode ini mengembalikan sumber daya Cart yang diisi dalam isi respons.

Kode kesalahan dan keberhasilan respons

Setiap respons dilengkapi dengan kode status HTTP yang menunjukkan keberhasilan atau kegagalan dan informasi penelusuran kesalahan tambahan. Gunakan alat pelacakan jaringan untuk membaca kode ini, jenis kesalahan, dan lebih banyak parameter. Untuk daftar lengkapnya, lihat Kode Kesalahan.

Contoh tanggapan

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": "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": "3D5ECED6-1151-44C7-AEE6-70A4BB725666",
                "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"
    }
}