I’m developing a program that automates Bitwarden backups and sends them to various cloud storage services. I would like to know your preferences and opinions on which features you consider most important in this type of software. I have tried numerous tools, but many of them do not meet certain requirements. Here are some of the tools I have used:
Will this be an open-source project? Do you have a GitHub repo?
Also, it is not clear from your Reddit thread whether the project also includes a restore tool (which imports the vault data and uploads the attachments to the correct entries).
Hey! Greetings. Yes, it will be an open source program. The program will export your vault with an encrypted JSON and all your attachments. It will also include a script that will allow you to decrypt your ZIP and JSON files, if that’s what you mean by restore. However, the functionality to import this data back into Bitwarden is not yet implemented.
A backup solution that downloads attachments, while welcome, will be of limited usefulness unless you also offer a utility for re-attaching those files to the correct vault items after importing the backed-up vault items.
If that is beyond the scope of the programming that you plan to do, then at a minimum, your backup files will need to include some kind of inventory metadata that records which vault item that the file attachments were originally attached to (so that a user can at least manually re-upload the attachments in to correct place).
I have already implemented the script that allows importing encrypted JSON files to Bitwarden. However, I have encountered a problem with the attachments, as the import function is not yet available in the Bitwarden CLI; you can only export and import in JSON and CSV formats.
To address this limitation, inside the ZIP file that will contain the attachments, I will include a TXT file with detailed instructions on how to backup these files to Bitwarden manually. This instruction file will include information such as:
In this way, users will be able to easily identify which items in the vault the attachments belong to and manually re-upload them to the correct locations.
There’s no reason you shouldn’t be able to code this using the CLI command bw create attachment. You might want to have a look at how it’s done in Portwarden.
Thank you very much for your suggestion. I hadn’t considered how to make an import with the corresponding attachments for each item in my vault, but thanks to the code you suggested, I was able to do it. After hours of trial and error, I finally created a script that imports the attachments into Bitwarden along with their respective items. It was a big challenge, but I did it. The main problem was the itemID: every time I ran bw create attachment, a new itemID was generated, which prevented me from correlating it with the one previously created in the backup export. That was my biggest obstacle, but I managed to solve it. I hope to be able to release and make the project public this week.
If you could suggest me more ideas on interesting things like this, I would really appreciate it.