Is there a setting page on the lemmy instance where I can download all my data?
No settings page (as far as I'm aware), but you can use the API to get everything (posts, comments, etc):
step 1: get login token -
curl --request POST \ --url https://lemmy.ml/api/v3/user/login \ --header 'accept: application/json' \ --header 'content-type: application/json' \ --data ' { "username_or_email": "2br02b", "password": "YOUR-PASSWORD" } '
step 2: use login token (big long string starting with 'ey') to get data -
curl --request GET \ --url 'https://lemmy.ml/api/v3/user?username=2br02b&page=1' \ --header 'accept: application/json' \ --header 'authorization: Bearer YOUR-JWT'
Increment page number until you have everything. source: https://lemmy.readme.io/reference/get_user
One thing to be aware of is that there is
currently, AFAIK, nonow (since 0.19.3) a way to "disable" a JWT.Before that, once you had created it, if you leaked it, your account was, as far as I can tell, definitely compromised.
Now, it is possible to logout, to mark the JWT as "invalid".
I will add,
as a disclaimer, that I have not checked ifthat as Nutomic highlighted below, there are conditions (password change, etc) under whichany orall JWT (user,instance, etc) become invalid.So do audit the code if this is something that concerns you. As far as I am concerned, I treat the JWTs as extra-sensitive information, and store them only on machines I own.Edit: correct information in the light of Nutomic's comments.
The jwt is invalidated once you logout. You can also change/reset your password to invalidate all login tokens for your account.
The jwt is invalidated once you logout.
Invalidated how?
You can also change/reset your password to invalidate all login tokens for your account.
OK. I was afraid this would not be the case. Thanks for confirming.
Invalidated how?
Well it's deleted from the database so you can't authenticate with it anymore.
OK there now is a
LoginToken
class. This was not the case last time I checked. Good. Thanks for your answers.
Account settings import/export exists, but not a full data export. Part of the reason is that importing and overwriting historical data isn't possible with activitypub.
But at least a full data export would be possible to do. Open up an issue for this in the lemmy back end.