เอกสาร Steamworks
อินเตอร์เฟซ IPublishedFileService
ให้เมธอดเพิ่มเติมสำหรับโต้ตอบกับไอเท็มเวิร์กชอป Steam

ดูเกี่ยวกับอินเตอร์เฟซหลักได้ที่ ISteamRemoteStorage และ ICloudService

หมายเหตุ: นี่คืออินเตอร์เฟซให้บริการ การเรียกเมธอดในอินเตอร์เฟซนี้ควรใช้พารามิเตอร์ input_json

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

Delete

GET https://api.steampowered.com/IPublishedFileService/Delete/v1/
ชื่อประเภทจำเป็นต้องใช้คำอธิบาย
keystringคีย์การตรวจสอบสิทธิ์ของผู้ใช้ Steamworks Web API
publishedfileiduint64ไอเท็มที่ต้องการลบ
appiduint32แอปที่มีไอเท็มนั้น

ลบไอเท็ม

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

QueryFiles

GET https://api.steampowered.com/IPublishedFileService/QueryFiles/v1/
ชื่อประเภทจำเป็นต้องใช้คำอธิบาย
keystringคีย์การตรวจสอบสิทธิ์ของผู้ใช้ Steamworks Web API
query_typeuint32IPublishedFileService#EPublishedFileQueryType
pageuint32หน้าเว็บในขณะนี้ ซึ่งมีขีดจำกัดที่ 1000
cursorstringเคอร์เซอร์จะกำหนดเลขหน้าผ่านผลลัพธ์ (ตั้งเป็น '*' สำหรับคำร้องขอแรก) ซึ่งเป็นที่นิยมใช้มากกว่าการใช้พารามิเตอร์ของหน้า เนื่องจากเป็นการช่วยให้คุณสามารถใช้การกำหนดเลขหน้าได้ลึกยิ่งขึ้น เมื่อถูกใช้ พารามิเตอร์ของหน้าจะถูกละเว้น ใช้ค่า "next_cursor" ที่ส่งกลับมาในการตอบสนอง เพื่อตั้งค่าคิวรี่ถัดไปเพื่อรับชุดผลลัพธ์ถัดไป
numperpageuint32(ตัวเลือกเสริม) จำนวนผลลัพธ์ที่จะคืนค่าต่อหนึ่งหน้า
creator_appiduint32แอปที่สร้างไฟล์
appiduint32แอปที่ใช้ไฟล์
requiredtagsstringแท็กที่จะจับคู่ ดูพารามิเตอร์ match_all_tags ด้านล่าง
excludedtagsstring(ตัวเลือกเสริม) แท็กที่จะต้องไม่ปรากฏในไฟล์ที่เผยแพร่ ถึงจะตรงตามเงื่อนไขของคิวรี่
match_all_tagsboolถ้ามีค่าเป็น true ไอเท็มจะต้องมีแท็กทั้งหมดที่ระบุ มิฉะนั้นจะต้องมีแท็กอย่างน้อย 1 แท็กที่กำหนด
required_flagsstringธงที่ต้องได้รับการตั้งค่าในไอเท็มใด ๆ ที่คืนกลับมา
omitted_flagsstringธงที่จะต้องไม่ได้รับการตั้งค่าในไอเท็มใด ๆ ที่คืนกลับมา
search_textstringข้อความที่ต้องการค้นหาในชื่อหรือคำอธิบายของไอเท็ม
filetypeuint32IPublishedFileService#EPublishedFileInfoMatchingFileType
child_publishedfileiduint64ค้นหาไอเท็มทั้งหมดที่อ้างอิงไอเท็มที่ระบุ
daysuint32ถ้า query_type เป็น k_PublishedFileQueryType_RankedByTrend ค่านี้ คือ จำนวนวันที่เปิดรับคะแนนโหวต [1,7]
include_recent_votes_onlyboolถ้า query_type เป็น k_PublishedFileQueryType_RankedByTrend ให้จำกัดชุดผลลัพธ์เฉพาะกับไอเท็มที่มีคะแนนโหวตภายในช่วงวันที่กำหนด
cache_max_age_secondsuint32อนุญาตให้คืนข้อมูลที่เก่าแล้ว ตามจำนวนวินาทีที่ระบุ
languageint32ภาษาที่ใช้ในการค้นหาและการรับผลลัพธ์ที่คืนมา ค่าเริ่มต้นคือภาษาอังกฤษ
required_kv_tags{message}แท็กคีย์-ค่าที่จำเป็นต้องใช้ในการจับคู่
totalonlybool(ตัวเลือกเสริม) ถ้ามีค่าเป็น true ให้คืนเฉพาะจำนวนไฟล์ทั้งหมดที่มีคุณสมบัติตรงกับคิวรี่นี้
ids_onlybool(ตัวเลือกเสริม) ถ้ามีค่าเป็น true ให้คืนเฉพาะไอดีไฟล์ที่เผยแพร่ หรือไฟล์ที่มีคุณสมบัติตรงกับคิวรี่นี้
return_vote_databoolคืนข้อมูลการโหวต
return_tagsboolคืนแท็กในรายละเอียดของไฟล์
return_kv_tagsboolคืนแท็กคีย์-ค่าในรายละเอียดของไฟล์
return_previewsboolคืนรายละเอียดของรูปและวิดีโอตัวอย่างในรายละเอียดไฟล์
return_childrenboolคืนไอดีของไอเท็มไชลด์ในรายละเอียดไฟล์
return_short_descriptionboolป้อนข้อมูลในฟีลด์ short_description แทนที่จะป้อนใน file_description
return_for_sale_databoolคืนข้อมูลราคา ถ้าเป็นไปได้
return_metadataboolป้อนข้อมูลเมตา
return_playtime_statsuint32คืนสถิติเวลาเล่นก่อนวันนี้ ตามจำนวนวันที่ระบุไว้

คิวรี่เพื่อค้นหาไฟล์ที่เผยแพร่
หมายเหตุ: แม้ว่าคุณจะสามารถคิวรี่ด้วยพารามิเตอร์ "filetype" ได้ (IPublishedFileService#EPublishedFileInfoMatchingFileType) แต่ผลลัพธ์จะมีค่าเป็น "file_type" ค่าดังกล่าวจะสอดคล้องกับ ISteamRemoteStorage#EWorkshopFileType

SetDeveloperMetadata

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

ตั้งค่าเมทาเดตาสำหรับผู้พัฒนาให้กับไฟล์ที่เผยแพร่แล้ว

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

UpdateAppUGCBan

POST https://partner.steam-api.com/IPublishedFileService/UpdateAppUGCBan/v1/
ชื่อประเภทที่ต้องการคำอธิบาย
keystringคีย์การตรวจสอบสิทธิ์ของผู้จัดจำหน่าย Steamworks Web API
steamiduint64ไอดี Steam ของผู้ใช้
appiduint32
expiration_timestringการประทับเวลา Unix เมื่อการแบนหมดอายุ, 0 เพื่อลบออก
reasonstringเหตุผลที่ผู้ใช้ถูกแบน จะแสดงให้ผู้ใช้เห็น

เพิ่ม/อัปเดต/ลบการแบน UGC ของผู้ใช้ในแอป ตั้งค่า expiration_time = 0 เพื่อยกเลิกการแบน

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

UpdateBanStatus

POST https://partner.steam-api.com/IPublishedFileService/UpdateBanStatus/v1/
ชื่อประเภทที่ต้องการคำอธิบาย
keystringคีย์การตรวจสอบสิทธิ์ของผู้จัดจำหน่าย Steamworks Web API
publishedfileiduint64
appiduint32
bannedbool
reasonstringเหตุผลที่ไอเท็มถูกแบน เฉพาะผู้ดูแลระบบเท่านั้นที่มองเห็น

อัปเดตสถานะการแบนให้กับไฟล์ที่เผยแพร่แล้ว

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

UpdateIncompatibleStatus

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

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

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

UpdateTags

POST https://partner.steam-api.com/IPublishedFileService/UpdateTags/v1/
ชื่อประเภทที่ต้องการคำอธิบาย
keystringคีย์การตรวจสอบสิทธิ์ของผู้จัดจำหน่าย Steamworks Web API
publishedfileiduint64
appiduint32
add_tagsuint32แท็กที่ต้องการเพิ่ม
remove_tagsstringแท็กที่ต้องการลบ

อัปเดตแท็กให้กับไฟล์ที่เผยแพร่แล้ว ห้ามลบแท็กที่มีอยู่แล้วออก ยกเว้นจะระบุไว้ในพารามิเตอร์ remove_tags

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

อีนิวเมอเรต

ค่าเหล่านี้คืออีนิวเมอเรตที่นิยามไว้เพื่อใช้กับ ISteamRemoteStorage

EPublishedFileQueryType

วิธีที่คุณสามารถคิวรี่หารายการ UGC

ชื่อค่า
k_PublishedFileQueryType_RankedByVote0
k_PublishedFileQueryType_RankedByPublicationDate1
k_PublishedFileQueryType_AcceptedForGameRankedByAcceptanceDate2
k_PublishedFileQueryType_RankedByTrend3
k_PublishedFileQueryType_FavoritedByFriendsRankedByPublicationDate4
k_PublishedFileQueryType_CreatedByFriendsRankedByPublicationDate5
k_PublishedFileQueryType_RankedByNumTimesReported6
k_PublishedFileQueryType_CreatedByFollowedUsersRankedByPublicationDate7
k_PublishedFileQueryType_NotYetRated8
k_PublishedFileQueryType_RankedByTotalUniqueSubscriptions9
k_PublishedFileQueryType_RankedByTotalVotesAsc10
k_PublishedFileQueryType_RankedByVotesUp11
k_PublishedFileQueryType_RankedByTextSearch12
k_PublishedFileQueryType_RankedByPlaytimeTrend13
k_PublishedFileQueryType_RankedByTotalPlaytime14
k_PublishedFileQueryType_RankedByAveragePlaytimeTrend15
k_PublishedFileQueryType_RankedByLifetimeAveragePlaytime16
k_PublishedFileQueryType_RankedByPlaytimeSessionsTrend17
k_PublishedFileQueryType_RankedByLifetimePlaytimeSessions18
k_PublishedFileQueryType_RankedByInappropriateContentRating19
k_PublishedFileQueryType_RankedByBanContentCheck20
k_PublishedFileQueryType_RankedByLastUpdatedDate21

EPublishedFileInfoMatchingFileType

วิธีที่สามารถใช้ QueryFile เพื่อคิวรี่หาไฟล์ที่แบ่งปันไปแล้วได้

ชื่อค่าคำอธิบาย
k_PFI_MatchingFileType_Items0รายการ
k_PFI_MatchingFileType_Collections1ชุดสะสมผลงานเวิร์กชอป
k_PFI_MatchingFileType_Art2อาร์ตเวิร์ก
k_PFI_MatchingFileType_Videos3วิดีโอ
k_PFI_MatchingFileType_Screenshots4ภาพหน้าจอ
k_PFI_MatchingFileType_CollectionEligible5ผลงานที่ไม่สามารถบรรจุไว้ในชุดสะสมได้
k_PFI_MatchingFileType_Games6ไม่ได้ใช้
k_PFI_MatchingFileType_Software7ไม่ได้ใช้
k_PFI_MatchingFileType_Concepts8ไม่ได้ใช้
k_PFI_MatchingFileType_GreenlightItems9ไม่ได้ใช้
k_PFI_MatchingFileType_AllGuides10คำแนะนำ
k_PFI_MatchingFileType_WebGuides11คำแนะนำเกี่ยวกับเว็บไซต์ Steam
k_PFI_MatchingFileType_IntegratedGuides12คำแนะนำในตัวแอปพลิเคชัน
k_PFI_MatchingFileType_UsableInGame13
k_PFI_MatchingFileType_Merch14สินค้าในเวิร์กชอปที่จะต้องได้รับการโหวตเพื่อวางจำหน่าย
k_PFI_MatchingFileType_ControllerBindings15การกำหนดปุ่ม Steam Controller
k_PFI_MatchingFileType_SteamworksAccessInvites16สำหรับใช้ภายในเท่านั้น
k_PFI_MatchingFileType_Items_Mtx17ผลงานเวิร์กชอปที่วางจำหน่ายในเกมได้
k_PFI_MatchingFileType_Items_ReadyToUse18ผลงานเวิร์กชอปที่ผู้ใช้นำไปใช้ได้ทันที
k_PFI_MatchingFileType_WorkshopShowcase19
k_PFI_MatchingFileType_GameManagedItems20เกมจะจัดการได้เองทั้งหมด โดยไม่ต้องอาศัยผู้ใช้ และไม่ปรากฏบนเว็บ