Done and undone quests
Get a list of quests for already visited experiences.
-
Get the data
Clicking the button opens a new tab with a lot of gibberish (aka JSON). Copy all of it and paste it in step 2.
-
Analyze data
Paste the data from step 1 into the following field and hit analyze.
-
Result
Quest will appear after hitting the Analyze button
Console snippet
Section titled “Console snippet”I sometimes just prefer to use the browser’s console. You too? No problem. Don’t like it? Just use the wizard above.
Open your browser’s console with F12 and paste the following code. Only works when you’re on the Sandbox website and logged in. Please make sure to understand what you do. Pasting and executing unknown code can be dangerous.
await fetch('https://api.sandbox.game/experiences/social-event/515/user-data?filter=all',{credentials:'include'}).then(e=>e.json()).then(e=>Object.fromEntries(e.all.rows.filter(e=>e.questData.totalQuests>0&&!0===e.questData.visited).map(e=>[e.name,{ep:`${e.questData.userEp}/${e.questData.totalEp}`,quests:e.questData.questsCompletionTimes.map(e=>`${'completionTime'in e?'✅':'❌'} ${e.name}`)}])));
// Readableawait fetch( 'https://api.sandbox.game/experiences/social-event/515/user-data?filter=all', { credentials: 'include' }) .then(response => response.json()) .then(data => Object.fromEntries( data.all.rows .filter(row => row.questData.totalQuests > 0 && row.questData.visited === true) .map(row => [ row.name, { ep: `${row.questData.userEp}/${row.questData.totalEp}`, quests: row.questData.questsCompletionTimes .map(quest => `${'completionTime' in quest ? '✅' : '❌'} ${quest.name}`), }, ]) ))