From ace1b2823a451109acadd680118dead8a35ea8c8 Mon Sep 17 00:00:00 2001 From: MartinBraquet Date: Sat, 7 Mar 2026 11:42:58 +0100 Subject: [PATCH] Improve API docs --- backend/api/src/app.ts | 34 +++++++++++----------------------- 1 file changed, 11 insertions(+), 23 deletions(-) diff --git a/backend/api/src/app.ts b/backend/api/src/app.ts index 7aa10dfc..b7f2d043 100644 --- a/backend/api/src/app.ts +++ b/backend/api/src/app.ts @@ -410,30 +410,18 @@ Most endpoints require a valid Firebase JWT token. This gives you access to your **In your app or browser console while logged in (JavaScript/TypeScript):** \`\`\`js -const cookie = JSON.parse(decodeURIComponent(document.cookie.split('FBUSER_COMPASS_130BA=')[1].split(';')[0])) -const refreshToken = cookie.stsTokenManager.refreshToken - -let API_KEY; -for (const url of performance.getEntriesByType('resource') - .filter(r => r.initiatorType === 'script') - .map(r => r.name)) { - const text = await fetch(url).then(r => r.text()) - const match = text.match(/AIza[A-Za-z0-9_-]{35}/) - if (match) { API_KEY = match[0]; break } +const db = await new Promise((res, rej) => { + const req = indexedDB.open('firebaseLocalStorageDb') + req.onsuccess = () => res(req.result) + req.onerror = rej +}) +const req = db.transaction('firebaseLocalStorage', 'readonly').objectStore('firebaseLocalStorage').getAll() +req.onsuccess = () => { + const id_token = req.result[0].value.stsTokenManager.accessToken + console.log('YOUR_FIREBASE_JWT_TOKEN is the string below:') + console.log(id_token) + copy(id_token) } - -const res = await fetch( - 'https://securetoken.googleapis.com/v1/token?key=' + API_KEY, - { - method: 'POST', - headers: {'Content-Type': 'application/json'}, - body: JSON.stringify({ grant_type: 'refresh_token', refresh_token: refreshToken }) - } -) -const id_token = (await res.json()).id_token -copy(id_token) -console.log(id_token) -'YOUR_FIREBASE_JWT_TOKEN is the string above' \`\`\` **For testing (REST):**