Skip to content

Commit c6de186

Browse files
IgnisRBXsammygrey
authored andcommitted
Update automate-right-to-erasure.md
1 parent b3e053e commit c6de186

File tree

1 file changed

+17
-15
lines changed

1 file changed

+17
-15
lines changed

content/en-us/cloud/webhooks/automate-right-to-erasure.md

Lines changed: 17 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -89,6 +89,7 @@ After you add the webhook, use it to configure the bot with the following steps:
8989
</TabItem>
9090

9191
<TabItem label="Discord">
92+
9293
1. Navigate to the [Applications page](https://discord.com/developers/applications).
9394
1. Create a new application and name it to `GDPR Bot`.
9495
1. The system redirects you to the **General Information** settings of the bot. Copy and save its application ID in a secure place.
@@ -125,7 +126,8 @@ To obtain these identifiers, open the [Creations](https://create.roblox.com/dash
125126

126127
After you finish setting up the webhook, bot, and API key for data stores, add them to the scripts that implement the bot's automation logic. The following example uses Python 3:
127128

128-
1. Install Python libraries using the following commands:
129+
1. Install Python libraries using the following commands:
130+
129131
<Tabs>
130132
<TabItem label="Guilded">
131133

@@ -147,7 +149,7 @@ After you finish setting up the webhook, bot, and API key for data stores, add t
147149
</TabItem>
148150
</Tabs>
149151

150-
1. Copy and save the following scripts corresponding to different parts of the bot logic in the same directory:
152+
1. Copy and save the following scripts corresponding to different parts of the bot logic in the same directory:
151153

152154
```python title="bot_config.py"
153155
BOT_TOKEN = ""
@@ -249,7 +251,6 @@ After you finish setting up the webhook, bot, and API key for data stores, add t
249251
else:
250252
failures[owned_start_place_id].append((data_store_name, scope, entry_key))
251253
return successes, failures
252-
253254
```
254255

255256
```python title="message_parser.py"
@@ -443,17 +444,18 @@ After you finish setting up the webhook, bot, and API key for data stores, add t
443444
</TabItem>
444445
</Tabs>
445446

446-
1. On the **bot_config.py** file for main configuration of the bot:
447+
1. On the `bot_config.py` file for main configuration of the bot:
448+
449+
1. Set `BOT_TOKEN` to the token generated by your bot.
450+
2. Set `OPEN_CLOUD_API_KEY` as the API key you created.
451+
3. Set `ROBLOX_WEBHOOK_SECRET` as the secret you set when configuring the webhook on Creator Dashboard.
452+
4. In `STANDARD_DATA_STORE_ENTRIES` and `ORDERED_DATA_STORE_ENTRIES` dictionaries for locating the data store of each record to delete:
453+
1. Add your copied Start Place IDs as keys.
454+
2. Add Universe IDs as the first element of the tuple value.
455+
3. Replace the second element of the tuple with the name, scope, entry key name, and associated User ID of your data stores. If you use a different data schema, modify to match your own data schema accordingly.
447456

448-
1. Set `BOT_TOKEN` to the token generated by your bot.
449-
2. Set `OPEN_CLOUD_API_KEY` as the API key you created.
450-
3. Set `ROBLOX_WEBHOOK_SECRET` as the secret you set when configuring the webhook on Creator Dashboard.
451-
4. In `STANDARD_DATA_STORE_ENTRIES` and `ORDERED_DATA_STORE_ENTRIES` dictionaries for locating the data store of each record to delete:
452-
1. Add your copied Start Place IDs as keys.
453-
1. Add Universe IDs as the first element of the tuple value.
454-
1. Replace the second element of the tuple with the name, scope, entry key name, and associated User ID of your data stores. If you use a different data schema, modify to match your own data schema accordingly.
457+
1. Execute the following command to run the bot:
455458

456-
1. Execute the following command to run the bot:
457459
<Tabs>
458460
<TabItem label="Guilded">
459461

@@ -471,7 +473,7 @@ After you finish setting up the webhook, bot, and API key for data stores, add t
471473
</TabItem>
472474
</Tabs>
473475

474-
1. The bot then starts to listen and verify Roblox webhooks for right to erasure Requests and calls the Open Cloud endpoint for deleting the corresponding data store.
476+
1. The bot then starts to listen and verify Roblox webhooks for right to erasure Requests and calls the Open Cloud endpoint for deleting the corresponding data store.
475477

476478
<Alert severity="warning">
477479
To ensure constant and secure execution of the scripts, save and run them locally only. Keep your local device or virtual machine running the scripts turned on at all times. In the event that your device goes offline, you need to manually manage any missed messages during the offline period and handle delivery failures according to the [retry policy](../../cloud/webhooks/webhook-notifications.md#delivery-failure-retry-policy).
@@ -498,10 +500,10 @@ You can create and run a test message to verify that your custom program can pro
498500
}'
499501
```
500502

501-
2. If you have a webhook secret:
503+
1. If you have a webhook secret:
502504
1. Generate a `Roblox-Signature` by applying HMAC-SHA256 encoding to your webhook secret key.
503505
2. Set the current time using UTC timestamp in seconds as `Timestamp`.
504-
3. Put together the `description` in the following format:
506+
1. Put together the `description` in the following format:
505507

506508
```plain title="Description Field Format"
507509
{Timestamp}. You have received a new notification for Right to Erasure for the User Id: {userId} in the game(s) with Ids: {gameIds}`.

0 commit comments

Comments
 (0)