จะคืนค่า Asset และสกุลเงินที่อยู่ในบริบทเฉพาะกลับมาให้แก่ผู้ใช้
ถูกเรียกโดย: Trading UI, Inventory UI
เมธอด HTTP: GET
พารามิเตอร์:
ชื่อ | ประเภท | ที่ต้องการ | คำอธิบาย |
key | string | ✔ | นี่คือ "คีย์เซิร์ฟเวอร์ทรัพยากรy" ที่คุณจัดไว้ให้ในการตั้งค่าระบบเศรษฐกิจของ Steam สำหรับแอปของคุณบนเว็บไซต์พันธมิตร |
appid | uint32 | ✔ | ไอดีแอปประเภท 32 บิต ของแอปพลิเคชันที่เกี่ยวข้องกับทรัพยากรนั้น |
steamid | uint64 | ✔ | ไอดี Steam ประเภท 64 บิตของผู้ใช้ที่จะคืนค่าทรัพยากรไปให้ |
contextid | uint64 | ✔ | ไอดีประเภท 64 บิตของบริบทที่จะคืนค่าทรัพยากรกลับไปให้ |
คืนค่า
เอาต์พุตจากเมธอดนี้ควรถูกเข้ารหัสไว้ในรูปแบบของ JSON
คำตอบ: -
result
-
success
- True หากเมธอดประสบความสำเร็จ หากเซิร์ฟเวอร์ Asset คืนค่า false กลับมา ก็จะตั้งค่า error
เป็นสตริงเพื่ออธิบายเหตุผลว่าเกิดอะไรขึ้น
-
error
- สตริงอธิบายสาเหตุที่การเรียกนี้ล้มเหลว ข้อความดังกล่าวจะถูกบันทึกไว้ในรายการบันทึกความผิดพลาด ซึ่งจะสามารถใช้งานได้ใน แท็บระบบเศรษฐกิจ ในเว็บไซต์ของ Steamworks
-
assets
- อาร์เรย์ของ Asset ที่เป็นลูก (children) ของบริบทที่ได้ระบุไว้
-
id
- ID ประเภท 64 บิตของ Asset
-
class
- อาร์เรย์ของตัวระบุคลาสของ Asset ที่ได้นิยามค่าเอาไว้ตามเกม โดยเกมจะกำหนด
ตัวระบุเหล่านั้นเองว่าจะให้เป็นอะไร โดยจะต้องเตรียมข้อมูลไว้ให้เพียงพอในการสร้างข้อมูลของ Asset ซ้ำอีกครั้ง
(ซึ่งในที่นี้คือ การลงรายละเอียดว่าไอเท็มดังกล่าวเป็นไอเท็มประเภทอะไร) ในเวลาที่ตัวระบุได้ถูกส่งกลับเข้าไปใน GetAssetClassInfo/v0001 ตัวระบุแต่ละตัวควรจะประกอบไปด้วยช่องข้อมุลต่าง ๆ ดังต่อไปนี้:
-
name
- ชื่อของส่วนประกอบส่วนนี้ของตัวระบุคลาส
-
value
- ค่าเป็นสตริงของส่วนประกอบส่วนนี้ของตัวระบุคลาส
-
instance
- หากเป็นค่า true จะถือว่าตัวระบุคลาสเป็น "ข้อมูลอินสแตนซ์ ", ซึ่งหมายความว่า
โดยทั่วไปแล้วก็จะไม่ส่งเข้าไปพร้อมกับไอเท็มในเวลาแลกเปลี่ยน ดังนั้นจึงไม่เข้าไปเป็นส่วนหนึ่งของมูลค่าการแลกเปลี่ยนของไอเท็มดังกล่าว
(ค่าเริ่มต้น: false)
หมายเหตุ: คุณสมบัติคลาสของ Asset ที่สุดท้ายแล้วจะมีผลต่อ market_hash_name
ไอเท็มใน GetAssetClassInfo/v0001 การตอบสนองนั้น ไม่ควรถูกคำนึงว่าเป็นข้อมูลอินสแตนซ์ โดยตลาดชุมชนจะต้องใช้คุณสมบัติของอินสแตนซ์ที่ไม่มีผลต่อ market_hash_name
เพื่อเป็นการใช้งานข้อมูลคำอธิบายที่ Steam สามารถจะเก็บแคชไว้ให้ได้มากที่สุด ตัวระบุคลาสควรจะรับข้อมูลทั่วไปและสามารถใช้ซ้ำได้ให้มากที่สุดเท่าที่จะเป็นไปได้ ตัวอย่างเช่น ให้พยายามหลีกเลี่ยงคลาสที่มีคุณสมบัติเพียงค่าเดียวที่มาพร้อมกับชื่อ เช่น itemid และมีค่าที่เป็นไอดีประเภท 64 บิตของ Asset แต่ให้ทำเช่นนี้แทน คือ ให้อธิบายประเภทของไอเท็มในลักษณะที่ให้ข้อมูลมากพอที่จะเขียนคำอธิบาย ยกตัวอย่าง คลาสของ Asset ที่มี type = sword และ rarity = common จะให้ข้อมูลที่เพียงพอแก่คุณในการเขียนคำอธิบายไอเท็ม โดยไม่จำเป็นจะต้องรู้อย่างแน่ชัดว่าอินสแตนซ์ของไอเท็มนั้นคืออะไร
-
amount
(ตัวเลือกเสริม) - จำนวนสแต็กของ Asset นี้ ผู้ใช้จะสามารถแลกเปลี่ยนได้จนกระทั่งจำนวนการแลกมีค่าตามที่ได้ระบุไว้ในสแต็กนี้ (ค่าเริ่มต้นคือ: 1)
-
currency0>
(ตัวเลือกเสริม) - อาร์เรย์ของประเภทของสกุลเงินที่บริบทนี้จะบรรจุไว้ หากผู้ใช้ไม่มีสกุลเงินดังที่กำหนดไว้ ควรใส่ไว้ที่นี่ก็ต่อเมื่อจะให้มองเห็นบน UI ในเกมเท่านั้น การแสดงผลสกุลเงินนั้นจะเหมือนกับการแสดงผล Asset มาก เพราะฉะนั้นช่องข้อมูลใดก็ตามสำหรับ Asset ที่ได้ระบุเอาไว้ข้างต้นก็จะถูกใช้งานกับสกุลเงินด้วย ยกเว้นช่องข้อมูล class
และ id
รวมทั้งยังจะต้องใช้ช่องข้อมูลดังต่อไปนี้อีก 2 ช่องนอกเหนือจากช่องข้อมูล Asset อื่น ๆ ให้แก่สกุลเงินด้วย:
-
id
- ID ประเภท 32 บิตแบบไม่มีเครื่องหมายบวกลบ ที่ได้กำหนดเอาไว้ให้แก่สกุลเงินประเภทนี้ ไอดีนี้จะต้องไม่ซ้ำกันในเกมนี้โดยรวม
-
amount
- จำนวนเต็มประเภท 64 บิตที่จะแจ้งถึงจำนวนเงินในสกุลเงินประเภทนี้ที่ผู้ใช้ครอบครองอยู่
ข้อมูลเอาต์พุตตัวอย่าง
{
"result": {
"assets": [
{
"id": 131363189,
"class": [
{
"name": "def_index",
"value": "128"
},
{
"name": "quality",
"value": "3"
}
]
},
{
"id": 131412933,
"class": [
{
"name": "def_index",
"value": "155"
},
{
"name": "quality",
"value": "3"
}
]
},
{
"id": 556669733,
"class": [
{
"name": "def_index",
"value": "583"
},
{
"name": "flags",
"value": "1"
},
{
"name": "origin",
"value": "1",
"instance": true
}
]
},
]
,
"success": true
}
}