สิทธิ์ในการลืมข้อมูล (RTBF) สำหรับ Data Stores ช่วยให้คุณประกาศว่าคีย์และ Data Store ใดบ้างที่ถือข้อมูลของผู้ใช้ เมื่อ Roblox ประมวลผลคำขอ RTBF สำหรับเกมของคุณ ระบบจะใช้เทมเพลตเหล่านั้นเพื่อลบข้อมูลที่ตรงกันโดยอัตโนมัติ คุณสามารถกำหนดค่าเทมเพลตได้ผ่านทาง Data Stores Manager ใน Creator Hub หรือโปรแกรมด้วย Open Cloud Configs API
RTBF อัตโนมัติ
ในการใช้การประมวลผล RTBF อัตโนมัติ คุณต้องกำหนดเทมเพลตการลบ เทมเพลตเหล่านี้ระบุว่า Data Store หรือคีย์ใดบ้างที่เป็นของผู้ใช้เฉพาะ คุณสามารถมีได้สูงสุด 100 เทมเพลตเพื่อระบุข้อมูลของผู้ใช้
เทมเพลตการลบ
RTBF อัตโนมัติทำงานโดยการจับคู่รูปแบบ คุณต้องกำหนดเทมเพลตสำหรับข้อมูลผู้ใช้ของคุณโดยใช้โทเค็น {UserId} เมื่อ Roblox ได้รับคำขอสิทธิ์ในการลืมข้อมูล ระบบจะเปลี่ยนโทเค็นนั้นด้วย ID ที่แท้จริงของผู้ขอและสแกน Data Store ของคุณเพื่อหาข้อมูลที่ตรงกันเพื่อลบออก
ข้อกำหนดคุณสมบัติ
สำหรับรายการใดๆ ที่จะมีคุณสมบัติในการลบโดยอัตโนมัติ ต้องตรงตามเกณฑ์ต่อไปนี้:
- ประเภทการจัดเก็บ — ข้อมูลของผู้ใช้ควรถูกจัดเก็บใน Data Store ปกติหรือ Data Store ที่มีการจัดลำดับ การลบ Data Store ทั้งหมดได้รับการสนับสนุนเฉพาะสำหรับ Data Store ปกติเท่านั้น
- ตัวบ่งชี้ — ID ของผู้ใช้ต้องเป็นส่วนหนึ่งของ Name หรือ Scope ของ Data Store หรือคีย์
- รูปแบบ — ID ต้องสามารถระบุได้ผ่านรูปแบบสตริงคงที่ (ยกตัวอย่างเช่น User_{UserId})
กำหนดค่า RTBF อัตโนมัติผ่าน Data Stores Manager
Creator Hub มีอินเทอร์เฟซที่มองเห็นได้เพื่อจัดการเทมเพลต RTBF โดยไม่ต้องใช้บรรทัดคำสั่ง
ไปที่ Creator Hub
เลือกเกมที่คุณต้องการกำหนดค่า
ในเมนูนำทางด้านซ้าย ไปที่ กำหนดค่า ⟩ Data Stores Manager
เลือกแท็บ RTBF Deletion
คลิก สร้างเทมเพลต
เลือก ประเภท (Standard Data Store, Standard Key, หรือ Ordered Key)
ป้อนข้อมูลในฟิลด์ที่เกี่ยวข้องด้วยเทมเพลตของคุณโดยใช้โทเค็น {UserId} (ยกตัวอย่างเช่น PlayerInventory_{UserId}) โทเค็นนี้เป็นตัวพิมพ์ใหญ่และพิมพ์เล็ก
ตรวจสอบตัวอย่างผลลัพธ์อีกครั้ง และคลิก สร้าง

กำหนดค่า RTBF อัตโนมัติผ่าน Configs API
คุณยังสามารถจัดการเทมเพลต RTBF โปรแกรมด้วย Open Cloud Configs API ซึ่งมีประโยชน์สำหรับการทำให้เป็นอัตโนมัติหรือการจัดการเทมเพลตในระดับใหญ่
ใน Creator Dashboard, สร้างหรือแก้ไขคีย์ API เพื่อรวมสิทธิ์ universe:read และ universe:write สำหรับแต่ละจักรวาลที่คุณต้องการทำให้การลบ RTBF อัตโนมัติ สำหรับรายละเอียดเพิ่มเติม ดูที่ จัดการคีย์ API
เทมเพลตจะถูกเก็บเป็นการกำหนดค่า JSON ที่ชื่อว่า user_data_templates มีสองประเภทหลัก:
- เทมเพลตคีย์ — ระบุคีย์เฉพาะ ต้องการ data_store_type (STANDARD หรือ ORDERED), data_store_name, และ key_pattern scope_pattern เป็นทางเลือก แต่แนะนำให้ใช้
- เทมเพลต Data Store — ระบุ Data Store ทั้งหมดยังไง ต้องการ data_store_type (ขณะนี้สนับสนุนเฉพาะ STANDARD) และ data_store_pattern
สำหรับทั้งสองประเภทเทมเพลต โทเค็น {UserId} จะถูกเปลี่ยนเป็น ID ของผู้ใช้เมื่อคำขอ RTBF ถูกประมวลผล
ตัวอย่างการกำหนดค่า{"user_data_templates": [{"key_template": {"data_store_type": "STANDARD","data_store_name": "PlayerInventory","key_pattern": "User_{UserId}","scope_pattern": "Scope_{UserId}"}},{"key_template": {"data_store_type": "ORDERED","data_store_name": "PlayerLeaderboard","key_pattern": "User_{UserId}","scope_pattern": "global"}},{"data_store_template": {"data_store_type": "STANDARD","data_store_pattern": "Player_{UserId}_Save"}}]}ต่อไป ส่งคำขอผ่าน Open Cloud Configs API ในตัวอย่างต่อไปนี้ ให้แทนที่ <API_KEY> และ <UNIVERSE_ID> ในแต่ละคำขอ จากนั้นส่งคำขอทั้งหมดไปยังที่เก็บ DataStoresConfig
สร้างร่างโดยใช้คำขอ PUT ที่กำหนดการกำหนดค่าของคุณ หากมีร่างอยู่แล้ว คำขอนี้จะเขียนทับร่างนั้น
curl --location --request PUT 'https://apis.roblox.com/creator-configs-public-api/v1/configs/universes/<UNIVERSE_ID>/repositories/DataStoresConfig/draft:overwrite' \--header 'x-api-key: <API_KEY>' \--header 'Content-Type: application/json' \--data-raw '{"entries": {"user_data_templates": [{"key_template": {"data_store_type": "STANDARD","data_store_name": "PlayerInventory","key_pattern": "User_{UserId}","scope_pattern": "Scope_{UserId}"}},{"key_template": {"data_store_type": "ORDERED","data_store_name": "PlayerLeaderboard","key_pattern": "User_{UserId}","scope_pattern": "global"}},{"data_store_template": {"data_store_type": "STANDARD","data_store_pattern": "Player_{UserId}_Save"}}]}}'ตรวจสอบร่างของคุณโดยใช้คำขอ GET เพื่อเรียกดูและตรวจสอบร่างก่อนที่จะเผยแพร่
curl --location --request GET 'https://apis.roblox.com/creator-configs-public-api/v1/configs/universes/<UNIVERSE_ID>/repositories/DataStoresConfig/draft' \--header 'x-api-key: <API_KEY>'หลังจากตรวจสอบแล้ว ให้ส่งคำขอ POST นี้เพื่อเผยแพร่ วิธีเดียวในการยกเลิกการกระทำนี้คือการคืนค่ากลับไปยังเวอร์ชันก่อนหน้านี้ การกระทำนี้ยังต้องการให้บัญชีที่เชื่อมโยงกับคีย์ API มีคุณสมบัติในการเผยแพร่เกม
curl --location --request POST 'https://apis.roblox.com/creator-configs-public-api/v1/configs/universes/<UNIVERSE_ID>/repositories/DataStoresConfig/publish' \--header 'x-api-key: <API_KEY>' \--header 'Content-Type: application/json' \--data-raw '{"deploymentStrategy": "Immediate"}'หลังจากเผยแพร่แล้ว ยืนยันว่าการกำหนดค่าออนไลน์โดยใช้คำขอ GET นี้
curl --location --request GET 'https://apis.roblox.com/creator-configs-public-api/v1/configs/universes/<UNIVERSE_ID>/repositories/DataStoresConfig/full' \--header 'x-api-key: <API_KEY>'
แนวทางปฏิบัติที่ดีที่สุด
- ความไวต่อกรณี — ใช้โทเค็น {UserId} ที่แน่นอนในรูปแบบของคุณ เวอร์ชันเช่น {userId} จะไม่ถูกยอมรับ
- การตรวจสอบด้วยตนเอง — เปรียบเทียบรูปแบบของคุณกับการใช้งาน Luau ที่ใช้งานอยู่ของคุณโดยใช้ Data Stores Manager ใน Creator Hub ก่อนที่จะเผยแพร่การกำหนดค่า
- ขอบเขตเริ่มต้น — หาก Data Store ใช้ขอบเขตเริ่มต้น ให้ตั้งค่า scope_pattern เป็น "global" ในเทมเพลตคีย์
- ทดสอบการไหลอย่างครบถ้วนในเกมทดสอบ — สำหรับการตรวจสอบการทำงานของเทมเพลตของคุณให้ครบถ้วน ให้พิจารณาสร้างเกมทดสอบและบัญชีตัวอย่าง โดยการกรอกข้อมูลด้วยข้อมูลตัวอย่างสำหรับ User ID ของบัญชีนั้น ส่งคำขอ RTBF ในบัญชีตัวอย่าง และตรวจสอบว่าข้อมูลถูกลบออกเมื่อบัญชีได้รับการประมวลผล
- ยืนยันการลบ — หลังจากเริ่มต้นในเกมที่ใช้งานอยู่ของคุณ เมื่อลงข้อความ RTBF ปรากฏในข้อความ Roblox ของคุณ ให้ตรวจสอบว่าข้อมูลที่สัมพันธ์กันถูกลบภายใน 30 วัน.