nkalupahana / baseline

Take charge of your mental health with better journaling and mood tracking.
https://getbaseline.app
GNU Affero General Public License v3.0
53 stars 13 forks source link

[Question] What API point can I use to backup my journal data? #392

Closed aahmozart closed 1 month ago

aahmozart commented 1 month ago

I've done a quick research with F12, but I can't find a specific API endpoint that I can curl to get all my data on the platform. Guidance would be appreciated!

nkalupahana commented 1 month ago

There isn't an API endpoint to get all data on the platform. This is because baseline connects directly to Firebase Realtime Database in order to synchronize user data whenever the app is open. This data is stored in IndexedDB, and all the My Data page is doing is dumping the contents of IndexedDB.

In order to get your data from scratch, you can connect to Firebase yourself (your Firebase credentials can be found in IndexedDB as well, and our API credentials are here). Log data is stored at ${uid}/logs in the database, and can be decrypted using crypto-js AES using your keys, which can be found at the bottom of the My Data page. You can also run IndexedDB commands directly in the console to export your data, or fork the repo and write your own custom page to get the data you need directly from running baseline locally.