เอกสาร Steamworks
อินเตอร์เฟซ ISteamUser
ใช้เข้าถึงข้อมูลและโต้ตอบกับผู้ใช้

อ่านหัวข้อ IPlayerService เพื่อรับข้อมูลเมธอดเพิ่มเติม

หากต้องการเรียนรู้เพิ่มเติมเกี่ยวกับวิธีใช้ Steamworks Web API กรุณาอ่าน ภาพรวมของ Web API

CheckAppOwnership

GET https://partner.steam-api.com/ISteamUser/CheckAppOwnership/v2/
ชื่อประเภทที่ต้องการคำอธิบาย
keystringคีย์การตรวจสอบสิทธิ์ของผู้จัดจำหน่าย Steamworks Web API
steamiduint64ไอดี Steam ของผู้ใช้
appiduint32ไอดีแอปที่จะตรวจสอบสิทธิ์การเป็นเจ้าของ

ตรวจสอบว่าผู้ใช้ที่ระบุเป็นเจ้าของแอปใช่หรือไม่

คำตอบ JSON จะมีฟีลด์ต่อไปนี้:

ชื่อประเภทคำอธิบาย
ownsappboolบ่งชี้ว่า ผู้ใช้เป็นเจ้าของที่แท้จริงหรือแอป
permanentboolไม่ว่าผู้ใช้จะเป็นเจ้าของแอปของคุณอย่างถาวรหรือไม่ ไม่เป็น "true" ในกรณีที่เป็นเจ้าของจากการแบ่งปันคลังครอบครัว ฟรีตลอดสุดสัปดาห์ หรือโครงการคาเฟ่ PC
timestampstringเวลาที่แอปได้รับมา
ownersteamiduint64ระบุเจ้าของที่แท้จริงหากผู้ใช้เข้าถึงแอปนี้ผ่านทางการแบ่งปันคลังครอบครัว มิฉะนั้น จะเป็น steamID เดียวกันกับที่ส่งเข้าไป
sitelicenseboolระบุว่าผู้ใช้เข้าถึงแอปนี้ผ่านทางโครงการคาเฟ่ PC หรือไม่

เมธอดนี้มีเวอร์ชันก่อนหน้าซึ่งเราเลิกรองรับแล้วอย่างเป็นทางการ เมธอดดังกล่าวจะยังสามารถใช้งานได้ต่อไป แต่เราแนะนำอย่างยิ่งให้คุณใช้เวอร์ชันล่าสุด

  • เวอร์ชัน 2 - เพิ่มองค์ประกอบ siteliense ในการตอบสนอง

หมายเหตุ: การเรียกเมธอดนี้จำเป็นต้องใช้คีย์ API ของผู้จัดจำหน่ายซึ่งเป็นเจ้าของแอปไอดีที่ระบุ ดังนั้น จะต้องเรียก API นี้จากเซิร์ฟเวอร์ที่ปลอดภัย และไคลเอนต์จะไม่มีทางใช้งาน API นี้ได้โดยตรง!

GetAppPriceInfo

GET https://partner.steam-api.com/ISteamUser/GetAppPriceInfo/v1/
ชื่อประเภทที่ต้องการคำอธิบาย
keystringคีย์การตรวจสอบสิทธิ์ของผู้จัดจำหน่าย Steamworks Web API
steamiduint64ไอดี Steam ของผู้ใช้
ไอดีแอปstringรายการไอดีแอปที่คั่นด้วยคอมม่า (สูงสุด: 100 รายการ)

หมายเหตุ: การเรียกเมธอดนี้จำเป็นต้องใช้คีย์ API ของผู้จัดจำหน่าย ดังนั้น จะต้องเรียก API นี้จากเซิร์ฟเวอร์ที่ปลอดภัย และไคลเอนต์จะไม่มีทางใช้งาน API นี้ได้โดยตรง!

ตัวอย่าง Response:
{ "price_info": { "220": { "packageid": 36, "currency": "USD", "initial_price": 999, "final_price": 999, "discount_percent": 0 } } }

GetDeletedSteamIDs

GET https://partner.steam-api.com/ISteamUser/GetDeletedSteamIDs/v1/
ชื่อประเภทจำเป็นต้องใช้คำอธิบาย
keystringคีย์การตรวจสอบสิทธิ์ของผู้จัดจำหน่าย Steamworks Web API
rowversionuint64เวอร์ชันของแถวขนาด 64 บิตแบบไม่มีเครื่องหมาย ใช้สำหรับดูบัญชีที่ลบไปแล้ว ส่งค่า 0 เมื่อเรียก API นี้เป็นครั้งแรก จากนั้นส่งค่าที่ได้รับกลับคืนมาจากการเรียกก่อนหน้านี้สำหรับคำร้องขอเพิ่มเติมแต่ละครั้ง ค่าดังกล่าวจะต้องเก็บไว้ในเซิร์ฟเวอร์ของคุณสำหรับการเรียกในอนาคต

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

คีย์สำหรับผู้จัดจำหน่าย Steamworks ที่ให้ไว้นั้นมีไว้ใช้ทั้งในการตรวจสอบสิทธิ์และเพื่อสร้างรายการไอดีแอปสำหรับเปรียบเทียบ

GetFriendList

GET https://partner.steam-api.com/ISteamUser/GetFriendList/v1/
ชื่อประเภทจำเป็นต้องใช้คำอธิบาย
keystringคีย์การตรวจสอบสิทธิ์ของผู้ใช้ Steamworks Web API
steamiduint64SteamID ของผู้ใช้
relationshipstringประเภทของความสัมพันธ์ (เช่น เพื่อน)

GetPlayerBans

GET https://partner.steam-api.com/ISteamUser/GetPlayerBans/v1/
ชื่อประเภทจำเป็นต้องใช้คำอธิบาย
keystringคีย์การตรวจสอบสิทธิ์ของผู้ใช้ Steamworks Web API
steamidsstringรายการ SteamID ที่คั่นด้วยคอมม่า

GetPlayerSummaries

GET https://partner.steam-api.com/ISteamUser/GetPlayerSummaries/v2/
ชื่อประเภทจำเป็นต้องใช้คำอธิบาย
keystringคีย์การตรวจสอบสิทธิ์ของผู้ใช้ Steamworks Web API
steamidsstringรายการ SteamID ที่คั่นด้วยคอมม่า (สูงสุด: 100 รายการ)

หมายเหตุ: ควรใช้การเรียกเมธอดนี้เฉพาะเมื่อเว็บไซต์ของคุณต้องการแสดงข้อมูลเกี่ยวกับผู้ใช้ หากไคลเอนต์เกมของคุณต้องการข้อมูลใด ๆ เหล่านี้ โปรดใช้ API ไคลเอนต์ แทน

เมธอดนี้มีเวอร์ชันก่อนหน้าซึ่งเราเลิกรองรับแล้วอย่างเป็นทางการ เมธอดดังกล่าวจะยังสามารถใช้งานต่อไปได้ แต่เราขอแนะนำให้คุณใช้เวอร์ชันล่าสุด
ประวัติการเปลี่ยนแปลง:
  • เวอร์ชัน 2 - ลบชื่อองค์ประกอบออกจากอาร์เรย์

คำตอบจากการเรียกจะมีลักษณะแบบนี้:

"response":{ "players":[ { "steamid":"77561198355051011", "communityvisibilitystate":1, "profilestate":1, "personaname":"Mister Manager", "lastlogoff":1556305001, "profileurl":"https://steamcommunity.com/profiles/77561198355051011/", "avatar":"https://steamcdn-a.akamaihd.net/steamcommunity/public/images/avatars/32/32f70a383a437d03af91d2f01a0776adf75201b5.jpg", "avatarmedium":"https://steamcdn-a.akamaihd.net/steamcommunity/public/images/avatars/32/32f70a383a437d03af91d2f01a0776adf75201b5_medium.jpg", "avatarfull":"https://steamcdn-a.akamaihd.net/steamcommunity/public/images/avatars/32/32f70a383a437d03af91d2f01a0776adf75201b5_full.jpg", }, { "steamid":"77561197978236369", "communityvisibilitystate":3, "profilestate":1, "personaname":"Olive The Dog", "lastlogoff":1556239336, "profileurl":"https://steamcommunity.com/id/olive_the_dog/", "avatar":"https://steamcdn-a.akamaihd.net/steamcommunity/public/images/avatars/41/555d2fbb879593c0565ce0489428a09c019feffa.jpg", "avatarmedium":"https://steamcdn-a.akamaihd.net/steamcommunity/public/images/avatars/41/555d2fbb879593c0565ce0489428a09c019feffa_medium.jpg", "avatarfull":"https://steamcdn-a.akamaihd.net/steamcommunity/public/images/avatars/41/555d2fbb879593c0565ce0489428a09c019feffa_full.jpg", } ] }

GetPublisherAppOwnership

GET https://partner.steam-api.com/ISteamUser/GetPublisherAppOwnership/v3/
ชื่อประเภทจำเป็นต้องใช้คำอธิบาย
keystringคีย์การตรวจสอบสิทธิ์ของผู้จัดจำหน่าย Steamworks Web API
steamiduint64SteamID ของผู้ใช้


เมธอดนี้มีเวอร์ชันก่อนหน้าซึ่งเราเลิกรองรับแล้วอย่างเป็นทางการ เมธอดดังกล่าวจะยังสามารถใช้งานต่อไปได้ แต่เราขอแนะนำให้คุณใช้เวอร์ชันล่าสุด
ประวัติการเปลี่ยนแปลง:
  • เวอร์ชัน 3 - เพิ่มองค์ประกอบ sitelicense ในการตอบสนอง

คำตอบจากการเรียกจะมีลักษณะแบบนี้:

"appownership":{ "apps":[ { "appid":60, "ownsapp":true, "permanent":true, "timestamp":"2005-04-03T17:50:29Z", "ownersteamid":"76561197978236369", "sitelicense":"false" }, { "appid":220, "ownsapp":false, "permanent":false, "timestamp":"NIL", "ownersteamid":"0", "sitelicense":"true" } ] }

คำตอบ JSON จะมีช่องข้อมูลต่อไปนี้:

ชื่อประเภทคำอธิบาย
appiduint32ไอดีแอปที่เกี่ยวข้องกับรหัส WebAPI ของคุณ
ownsappboolไม่ว่าขณะนี้ผู้ใช้จะเป็นเจ้าของแอปของคุณหรือไม่ จะเป็น "true" ในกรณีที่เป็นเจ้าของจากการสั่งซื้อ รหัสผลิตภัณฑ์ การแบ่งปันคลังครอบครัว ฟรีตลอดสุดสัปดาห์ หรือโครงการคาเฟ่ PC
permanentboolไม่ว่าผู้ใช้จะเป็นเจ้าของแอปของคุณอย่างถาวรหรือไม่ ไม่เป็น "true" ในกรณีที่เป็นเจ้าของจากการแบ่งปันคลังครอบครัว ฟรีตลอดสุดสัปดาห์ หรือโครงการคาเฟ่ PC
timestampstringเวลา GMT ที่ผู้ใช้ได้รับไอดีแอปครั้งแรก
ownersteamiduint64ระบุเจ้าของที่แท้จริงหากผู้ใช้เข้าถึงแอปนี้ผ่านทางการแบ่งปันคลังครอบครัว มิฉะนั้น จะเป็น steamID เดียวกันกับที่ส่งเข้าไป
sitelicenseboolระบุว่าผู้ใช้เข้าถึงแอปนี้ผ่านทางโครงการคาเฟ่ PC หรือไม่

หมายเหตุ: การเรียกนี้ต้องอาศัยรหัส API ของผู้จัดจำหน่าย จึงจะใช้เมธอดนี้ได้ ดังนั้น จะต้องเรียก API นี้จากเซิร์ฟเวอร์ที่ปลอดภัย และไคลเอนต์จะไม่มีทางใช้งาน API นี้ได้โดยตรง!

GetPublisherAppOwnershipChanges

GET https://partner.steam-api.com/ISteamUser/GetPublisherAppOwnershipChanges/v1/
ชื่อประเภทจำเป็นต้องใช้คำอธิบาย
keystringคีย์การตรวจสอบสิทธิ์ของผู้จัดจำหน่าย Steamworks Web API
packagerowversionstringเวอร์ชันของแถวขนาด 64 บิตแบบไม่มีเครื่องหมาย ใช้สำหรับอ่านการเปลี่ยนแปลงของแพ็กเกจ จะคืนค่าเวอร์ชันแถวของข้อมูลที่อ่านถึง เพื่อนำไปใช้กับการเรียกในอนาคต
cdkeyrowversionstringเวอร์ชันของแถวขนาด 64 บิตแบบไม่มีเครื่องหมาย ใช้สำหรับอ่านการเปลี่ยนแปลงของรหัสผลิตภัณฑ์ จะคืนค่าเวอร์ชันแถวของข้อมูลที่อ่านถึง เพื่อนำไปใช้กับการเรียกในอนาคต

เมธอดนี้สามารถนำมาใช้เพื่อพิจารณาว่า SteamID ใดที่มีการเปลี่ยนเจ้าของ โดยเริ่มจากแพ็กเกจหรือหมายเลขเวอร์ชันของแถวคีย์ที่เฉพาะเจาะจง จากรายการ SteamID ที่คืนกลับมา การเรียก GetPublisherAppOwnership จะสามารถคืนข้อมูลการเป็นเจ้าของที่เกี่ยวข้องสำหรับแอปพลิเคชันในกลุ่มที่เชื่อมโยงกับคีย์ที่ส่งค่าเข้าไป พันธมิตรอาจต้องการติดตามข้อมูลนี้ร่วมกับบัญชี Steam ที่เชื่อมโยงอยู่ เพื่อเพิ่มความเข้าใจเกี่ยวกับสถานะการเป็นเจ้าของผลิตภัณฑ์ใน Steam

ในการเริ่มต้น ให้เรียก GetPublisherAppOwnershipChanges ที่ส่งค่าใน packagerowversion และ cdkeyrowversion ที่มีค่าเป็น 0 (ศูนย์) คำตอบจากการเรียกจะมีลักษณะแบบนี้:

"ownershipchanges": { "steamids": [ { "steamid": "76561198114498811" }, { "steamid": "76561198114498812" }, ... ], "packagerowversion": "12448390228", "cdkeyrowversion": "49857241147", "moredata": true }

คำตอบ JSON จะมีช่องข้อมูลต่อไปนี้:

ชื่อประเภทคำอธิบาย
steamids/steamidstringรายการ SteamID ของบัญชีใด ๆ ที่มีการเปลี่ยนแปลงตั้งแต่เวอร์ชันแถวที่มอบให้ โดยจะคืน SteamID ได้ถึง 10,000 ค่าต่อการเรียก 1 ครั้ง
packagerowversionstringเวอร์ชันแถวของแพ็กเกจที่ตรงกับ SteamID ล่าสุดที่คืนกลับมา เก็บค่านี้ไว้เพื่อใช้ในการเรียก GetPublisherAppOwnershipChanges ในอนาคต
cdkeyrowversionstringเวอร์ชันแถวของรหัสผลิตภัณฑ์ที่ตรงกับ SteamID ล่าสุดที่คืนกลับมา เก็บค่านี้ไว้เพื่อใช้ในการเรียก GetPublisherAppOwnershipChanges ในอนาคต
moredataboolระบุว่ามีข้อมูลเพิ่มเติมที่ใหม่กว่าหรือไม่

หลังจากการเรียกครั้งแรกนี้ จะคืนค่า:
  1. ให้เรียก GetPublisherAppOwnership สำหรับ SteamID แต่ละค่า เพื่อรับข้อมูลการเป็นเจ้าของที่แท้จริงตาม AppID แล้วเก็บหรือใช้ข้อมูลดังกล่าวตามที่จำเป็น
  2. เมื่อประมวลผล Steam Id ทั้งหมดแล้ว ให้ตรวจสอบค่าของ moredata ถ้ามีค่าเป็น true ให้เรียก GetPublisherAppOwnershipChanges ครั้งใหม่ โดยส่งค่าที่ได้คืนกลับมาจากการเรียก GetPublisherAppOwnershipChanges ครั้งก่อนหน้าให้กับ packagerowversion และ cdkeyrowversion
  3. ทำขั้นตอนที่ 1 และ 2 ซ้ำจนกว่า moredata จะคืนค่า false
  4. เก็บค่า packagerowversion และ cdkeyrowversion สุดท้ายไว้เพื่อใช้สำหรับการเรียก GetPublisherAppOwnershipChanges ในอนาคต (เช่น 24 ชั่วโมงหลังจากนั้น) แทนที่จะต้องเริ่มด้วย 0 (ศูนย์) อีกครั้ง

หมายเหตุ: การเรียกนี้ต้องอาศัยรหัส API ของผู้จัดจำหน่าย จึงจะใช้เมธอดนี้ได้ ดังนั้น จะต้องเรียก API นี้จากเซิร์ฟเวอร์ที่ปลอดภัย และไคลเอนต์จะไม่มีทางใช้งาน API นี้ได้โดยตรง!

GetUserGroupList

GET https://partner.steam-api.com/ISteamUser/GetUserGroupList/v1/
ชื่อประเภทที่ต้องการคำอธิบาย
keystringคีย์การตรวจสอบสิทธิ์ของผู้จัดจำหน่าย Steamworks Web API
steamiduint64SteamID ของผู้ใช้

ResolveVanityURL

GET https://partner.steam-api.com/ISteamUser/ResolveVanityURL/v1/
ชื่อประเภทจำเป็นต้องใช้คำอธิบาย
keystringคีย์การตรวจสอบสิทธิ์ของผู้ใช้ Steamworks Web API
vanityurlstringURL แบบสั้นเพื่อรับ SteamID สำหรับ
url_typeint32ประเภทของ URL แบบสั้น 1 (ค่าเริ่มต้น): โปรไฟล์บุคคล, 2: กลุ่ม, 3: กลุ่มเกมแบบทางการ