Roam Attachments Lister

Step 1: Go to Roam and save JSON export.
(click "..." menu in upper right > Export All option > select JSON for Export Format > Export All button)
Then extract the downloaded .zip containing the JSON file.

Step 2: Click "Open..." or drag the JSON file here:

Step 3: Fetch actual file names from firebase metadata:


File extensions: {{fileTypesString}}

Step 4: Download the listed files from firebase:

  • Install the Simple Mass DownloaderSimple Mass Downloader extension
  • Set download directory in Chrome's settings (suggested to be different than the default)
  • Make sure "Ask where to save each file before downloading" is toggled off in Chrome settings
  • check "Prepare links for SMD" to remove non-firebase file links from this page, and set the text of firebase file links to the actual file name (to be used with {text} mask)
  • click SMD extension icon
  • click Load Page Links
  • check all items
  • add to passive queue (plus button in lower-right)
  • go to Download List
  • with all selected, click Multirename in lower-left
  • in top input "Set mask for selected files", type in: {text}
  • click Confirm
  • click "Start selected" to download


Page Download Link File Extension Actual File Name
{{attachment.page.title}} {{attachment.page.title}} {{attachment.link}} {{attachment.file_name}} {{attachment.extension}} {{attachment.file_name}}

Privacy note: The JSON data is only loaded within your browser and not sent to any servers. This script works offline, except for when querying the firebase storage for previews, actual file type, and actual file name.