Laporkan produk yang dapat dikonsumsi sebagai terpenuhi
Gunakan metode ini di API pengumpulan Microsoft Store untuk melaporkan produk yang dapat dikonsumsi seperti yang terpenuhi untuk pelanggan tertentu. Sebelum pengguna dapat membeli kembali produk yang dapat dikonsumsi, aplikasi atau layanan Anda harus melaporkan produk yang dapat dikonsumsi sebagaimana dipenuhi untuk pengguna tersebut.
Ada dua cara Anda dapat menggunakan metode ini untuk melaporkan produk yang dapat dikonsumsi seperti yang terpenuhi:
- Berikan ID item yang dapat dikonsumsi (seperti yang dikembalikan dalam parameter itemId kueri 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 penggunaan berhasil, layanan Anda harus mengirim ulang permintaan penggunaan 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 productId kueri 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 akan memerlukan:
- Token akses Azure ACTIVE Directory yang memiliki nilai
https://onestore.microsoft.com
URI audiens . - Kunci ID Microsoft Store yang mewakili identitas pengguna yang ingin Anda laporkan produk yang dapat dikonsumsi sebagai terpenuhi.
Untuk informasi selengkapnya, lihat Mengelola pemberian izin produk dari layanan.
Minta
Minta sintaks
Metode | URI Permintaan |
---|---|
POST | https://collections.mp.microsoft.com/v6.0/collections/consume |
Header permintaan
Header | Tipe | Deskripsi |
---|---|---|
Authorization | string | Harus diisi. Token akses Microsoft Azure ACTIVE Directory dalam bentuk token> Pembawa<. |
Host | string | Harus diatur ke nilai collections.mp.microsoft.com. |
Panjang-Konten | number | Panjang isi permintaan. |
Content-Type | string | Menentukan jenis permintaan dan respons. Saat ini, satu-satunya nilai yang didukung adalah aplikasi/json. |
Isi permintaan
Parameter | Jenis | Deskripsi | Wajib diisi |
---|---|---|---|
penerima | UserIdentity | Pengguna tempat item ini digunakan. Untuk informasi selengkapnya, lihat tabel berikut ini. | Ya |
itemId | string | Nilai itemId yang dikembalikan oleh kueri untuk produk. Gunakan parameter ini dengan trackingId | No |
trackingId | guid | ID pelacakan unik yang disediakan oleh pengembang. Gunakan parameter ini dengan itemId. | No |
productId | string | Nilai productId yang dikembalikan oleh kueri untuk produk. Gunakan parameter ini dengan transactionId | No |
transactionId | guid | Nilai ID transaksi yang diperoleh dari salah satu sumber berikut. Gunakan parameter ini dengan productId.
|
No |
Objek UserIdentity berisi parameter berikut.
Parameter | Jenis | Deskripsi | Wajib diisi |
---|---|---|---|
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 klaim userIddi 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 tanggapan
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 kesalahan
Kode | Kesalahan | Kode kesalahan dalam | Deskripsi |
---|---|---|---|
401 | Tidak diizinkan | AuthenticationTokenInvalid | Token akses Azure ACTIVE Directory 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 Microsoft Azure AD di header otorisasi tidak cocok. |
Topik terkait
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk