สินค้าคงคลังของผู้ใช้

*เนื้อหานี้แปลโดยใช้ AI (เวอร์ชัน Beta) และอาจมีข้อผิดพลาด หากต้องการดูหน้านี้เป็นภาษาอังกฤษ ให้คลิกที่นี่

API สินค้าคงคลัง ให้คุณเข้าถึงข้อมูลส่วนใหญ่ที่เหมือนกันกับหน้า สินค้าคงคลังของฉัน ใน Roblox คุณสามารถตรวจสอบได้ว่าผู้ใช้เป็นเจ้าของสินค้ารายบุคคลและเรียกรายการสินค้าทั้งหมดที่ผู้เล่นเป็นเจ้าของ

การตอบกลับจาก API สินค้าคงคลัง รวมถึงสินค้าจากหมวดหมู่ต่อไปนี้:

  • เสื้อผ้า (อุปกรณ์เสริม, กางเกง, เสื้อผ้าคลาสสิก, รองเท้า, เสื้อ)
  • การซื้อและรางวัล (เหรียญ, สิทธิ์, สถานที่ที่ซื้อ, เซิร์ฟเวอร์ส่วนตัว)
  • รายการอวาตาร์ (การเคลื่อนไหวของอวาตาร์, หัวคลาสสิก, อิโมจิ, ใบหน้า, ผม, หัว)

ก่อนที่จะใช้ API สินค้าคงคลัง คุณต้อง สร้างคีย์ API หรือ กำหนดค่า OAuth 2 สำหรับแอปของคุณ ตัวอย่างในหน้านี้ใช้คีย์ API

ตรวจสอบการเป็นเจ้าของสินค้า

หากคุณต้องการตรวจสอบว่าผู้ใช้เป็นเจ้าของสินค้าเฉพาะ (ตัวอย่างเช่น สินค้าจํากัด, เหรียญ, สิทธิ์ หรือเซิร์ฟเวอร์ส่วนตัว) ให้ใช้พารามิเตอร์ filter เพื่อตรวจสอบรายการ ID ที่คั่นด้วยเครื่องหมายจุลภาคหนึ่งหรือมากกว่า ตัวอย่างโค้ดนี้ตรวจสอบหาสินทรัพย์ ID สามรายการ:


const https = require('node:https');
const userId = 11111111111;
const hostname = 'apis.roblox.com';
const path = `/cloud/v2/users/${userId}/inventory-items`;
const params = '?filter=assetIds=62724852,1028595,4773588762';
const url = 'https://' + hostname + path + params;
const apiKey = '123456789012345678901234567890123456789012345678';
const options = {
headers: {
'x-api-key': `${apiKey}`,
},
};
https
.get(url, options, (response) => {
console.log('statusCode:', response.statusCode);
let data = '';
response.on('data', (d) => {
data += d;
});
response.on('end', () => {
if (response.statusCode === 200) {
const jsonData = JSON.parse(data);
console.log('Response Data:', JSON.stringify(jsonData, null, 2));
} else {
console.error('Error:', response.statusCode, response.statusMessage);
}
});
})
.on('error', (e) => {
console.error(e);
});

การตอบกลับต่อไปนี้บ่งชี้ว่าผู้ใช้เป็นเจ้าของหนึ่งในสามรายการ:


{
"inventoryItems": [
{
"path": "users/11111111111/inventory-items/VVNFUl9BU1NFVF9JRD0yMDAxMDUxMTkzODg",
"assetDetails": {
"assetId": "1028595",
"inventoryItemAssetType": "CLASSIC_TSHIRT",
"instanceId": "200105119388"
}
}
],
"nextPageToken": ""
}

กรองสินค้า

หากคุณต้องการแสดงเฉพาะของสะสมที่ผู้ใช้เป็นเจ้าของ ใช้โค้ดเดียวกับที่กล่าวถึงด้านบน เพียงแค่ใช้พารามิเตอร์ filter ที่แตกต่างกัน


const params = '?filter=onlyCollectibles=true;inventoryItemAssetTypes=*';

ผสมผสานและจับคู่ตัวกรองโดยใช้รายการที่แยกด้วยเครื่องหมายจุลภาค นี่คือตัวอย่างบางประการ:


filter=onlyCollectibles=true;inventoryItemAssetTypes=HAT,CLASSIC_PANTS
filter=badgeIds=111111,222222;gamePassIds=777777;privateServerIds=999999
filter=gamePasses=true;badges=true

การเรียก API ส่วนใหญ่ไม่ต้องการสิทธิ์เฉพาะ แต่ตัวกรองหลายรายการต้องการสิทธิ์การอ่านสินค้าคงคลัง สำหรับข้อมูลเพิ่มเติม โปรดดูที่ การกรอง.

แบ่งหน้าผลลัพธ์

หากการตอบกลับมีค่าของ nextPageToken ให้ใช้ค่านั้นในพารามิเตอร์ pageToken ของการร้องขอต่อไปเพื่อดึงข้อมูลหน้าถัดไป สำหรับข้อมูลเพิ่มเติม โปรดดูที่ การแบ่งหน้า.

หากจำนวนผลลัพธ์หารด้วย maxPageSize ลงตัว (เช่น คุณมีผลลัพธ์ 50 รายการและ maxPageSize เท่ากับ 25) คุณอาจพบสถานการณ์ที่การตอบกลับของคุณมีค่า nextPageToken แต่การร้องขอโดยใช้โค้ดนั้นกลับไม่มีผลลัพธ์:


GET /cloud/v2/users/{userId}/inventory-items?maxPageSize=25&pageToken=cccDDD
{
"inventoryItems": [],
"nextPageToken": ""
}

เมื่อดำเนินการแบ่งหน้าในแอปของคุณ แนวทางปฏิบัติที่ดีที่สุดคือการตรวจสอบไม่เพียงแต่ค่า nextPageToken ที่ไม่ว่างเปล่า แต่ยังรวมถึงการคัดกรองอาร์เรย์ inventoryItems ที่ไม่ว่างเปล่า

©2026 Roblox Corporation. Roblox, โลโก้ Roblox และ Powering Imagination เป็นส่วนหนึ่งของเครื่องหมายการค้าที่จดทะเบียน และไม่ได้จดทะเบียนของเราในสหรัฐฯ และประเทศอื่นๆ