Laporkan produk yang dapat dikonsumsi sebagai terpenuhi

Gunakan metode ini di API pengumpulan Microsoft Store untuk melaporkan produk yang dapat dikonsumsi sebagai terpenuhi untuk pelanggan tertentu. Sebelum pengguna dapat membeli kembali produk yang dapat dikonsumsi, aplikasi atau layanan Anda harus melaporkan produk yang dapat dikonsumsi sebagai terpenuhi untuk pengguna tersebut.

Ada dua cara Anda dapat menggunakan metode ini untuk melaporkan produk yang dapat dikonsumsi sebagai terpenuhi:

  • Berikan ID item yang dapat dikonsumsi (seperti yang dikembalikan dalam parameter itemIdkueri untuk produk), dan ID pelacakan unik yang Anda berikan. Jika ID pelacakan yang sama digunakan untuk beberapa percobaan, hasil yang sama akan dikembalikan meskipun item sudah digunakan. Jika Anda tidak yakin apakah permintaan konsumsi berhasil, layanan Anda harus mengirim ulang permintaan konsumsi dengan ID pelacakan yang sama. ID pelacakan akan selalu terikat dengan permintaan konsumsi tersebut dan dapat dikirim ulang tanpa batas waktu.
  • Berikan ID produk (seperti yang dikembalikan dalam parameter productIdkueri untuk produk) dan ID transaksi yang diperoleh dari salah satu sumber yang tercantum dalam deskripsi untuk parameter transactionId di bagian isi permintaan di bawah ini.

Pustaka Microsoft.StoreServices menyediakan fungsionalitas metode ini melalui StoreServicesClient.CollectionsConsumeAsync API.

Prasyarat

Untuk menggunakan metode ini, Anda memerlukan:

  • Token akses Azure AD yang memiliki nilai https://onestore.microsoft.comURI audiens .
  • Kunci ID Microsoft Store yang mewakili identitas pengguna yang ingin Anda laporkan produk yang dapat digunakan sebagai terpenuhi.

Untuk informasi selengkapnya, lihat Mengelola hak produk dari layanan.

Minta

Minta sintaks

Metode URI Permintaan
KIRIM https://collections.mp.microsoft.com/v6.0/collections/consume

Meminta header

Header Jenis Deskripsi
Authorization string Wajib diisi. Token akses Azure AD dalam bentukToken>pembawa<.
Host string Harus diatur ke nilai collections.mp.microsoft.com.
Panjang-Konten nomor Panjang isi permintaan.
Jenis-Konten string Menentukan jenis permintaan dan respons. Saat ini, satu-satunya nilai yang didukung adalah aplikasi/json.

Isi permintaan

Parameter Jenis Deskripsi Diperlukan
penerima UserIdentity Pengguna yang item ini sedang digunakan. Untuk informasi selengkapnya, lihat tabel berikut ini. Ya
itemId string Nilai itemId yang dikembalikan oleh kueri untuk produk. Gunakan parameter ini dengan trackingId Tidak
trackingId guid ID pelacakan unik yang disediakan oleh pengembang. Gunakan parameter ini dengan itemId. Tidak
productId string Nilai productId yang dikembalikan oleh kueri untuk produk. Gunakan parameter ini dengan transactionId Tidak
transactionId guid Nilai ID transaksi yang diperoleh dari salah satu sumber berikut. Gunakan parameter ini dengan productId. Tidak

Objek UserIdentity berisi parameter berikut.

Parameter Jenis Deskripsi Diperlukan
identityType string Tentukan nilai string b2b. Ya
identityValue string Kunci ID Microsoft Store yang mewakili identitas pengguna yang ingin Anda laporkan produk yang dapat dikonsumsi sebagai terpenuhi. Ya
localTicketReference string Pengidentifikasi yang diminta untuk respons yang dikembalikan. Kami menyarankan agar Anda menggunakan nilai yang sama dengan klaimuserId di kunci ID Microsoft Store. Ya

Contoh permintaan

Contoh berikut menggunakan itemId dan trackingId.

POST https://collections.mp.microsoft.com/v6.0/collections/consume HTTP/1.1
Authorization: Bearer eyJ0eXAiOiJKV1…..
Host: collections.mp.microsoft.com
Content-Length: 2050
Content-Type: application/json

{
    "beneficiary": {
        "localTicketReference": "testreference",
        "identityValue": "eyJ0eXAiOi…..",
        "identityType": "b2b"
    },
    "itemId": "44c26106-4979-457b-af34-609ae97a084f",
    "trackingId": "44db79ca-e31d-49e9-8896-fa5c7f892b40"
}

Contoh berikut menggunakan productId dan transactionId.

POST https://collections.mp.microsoft.com/v6.0/collections/consume HTTP/1.1
Authorization: Bearer eyJ0eXAiOiJKV1……
Content-Length: 1880
Content-Type: application/json
Host: collections.md.mp.microsoft.com

{
    "beneficiary" : {
        "localTicketReference" : "testReference",
        "identityValue" : "eyJ0eXAiOiJ…..",
        "identitytype" : "b2b"
    },
    "productId" : "9NBLGGH5WVP6",
    "transactionId" : "08a14c7c-1892-49fc-9135-190ca4f10490"
}

Respons

Tidak ada konten yang akan dikembalikan jika konsumsi berhasil dijalankan.

Contoh respons

HTTP/1.1 204 No Content
Content-Length: 0
MS-CorrelationId: 386f733d-bc66-4bf9-9b6f-a1ad417f97f0
MS-RequestId: e488cd0a-9fb6-4c2c-bb77-e5100d3c15b1
MS-CV: 5.1
MS-ServerId: 030011326
Date: Tue, 22 Sep 2015 20:40:55 GMT

Kode galat

Kode Kesalahan Kode kesalahan dalam Deskripsi
401 Tidak diizinkan AuthenticationTokenInvalid Token akses Azure AD tidak valid. Dalam beberapa kasus, detail ServiceError akan berisi informasi lebih lanjut, seperti ketika token kedaluwarsa atau klaim appid hilang.
401 Tidak diizinkan PartnerAadTicketRequired Token akses Azure AD tidak diteruskan ke layanan di header otorisasi.
401 Tidak diizinkan InconsistentClientId Klaim clientId di kunci ID Microsoft Store di isi permintaan dan klaim appid di token akses Azure AD di header otorisasi tidak cocok.