13
votes

I am developing with Firebase and have data stored in the Realtime Database. I need to share my database structure for a question here on Stack Overflow, or just take a backup before making breaking changes. How can I do this using the Firebase Console?

3
This isn't covered in the documentation, so I've added this Q&A-style so it can be linked to in comments.Grimthorr

3 Answers

16
votes

Data can be exported from the Firebase Realtime Database as JSON:

  1. Login to the Database section of the Firebase Console.
  2. Navigate to the node you wish to export by clicking on it in the list (skip this to export all data).
  3. Click the 3-dot overflow menu icon, at the top-right of the data panel.
  4. Click Export JSON from the menu.

    console menu screenshot

Likewise, you can import a structure in the same fashion, using Import JSON.

12
votes

There is an Node.js tool called firebase-export, similar to firebase-import but not from Firebase itself, that will export JSON from the command line.

Firebase export helper utility for exporting excluded JSON from Firebase.

To install

npm install -g firebase-export

Usage example

$ firebase-export --database_url https://test.firebaseio-demo.com --firebase_secret '1234' --exclude 'settings/*, users/*/settings'

Github Repo


Note: Firebase has a REST API, so you can use any language to retrieve (export) data:

curl 'https://[PROJECT_ID].firebaseio.com/users/jack/name.json'

Here's an example curl request with filters

curl 'https://dinosaur-facts.firebaseio.com/dinosaurs.json?orderBy="height"&startAt=3&print=pretty'
1
votes

If you have a large JSON file then it is safe to download it using Postman's Import feature because downloading a large JSON file sometimes faces failure in the middle of the way. You just need to click save the response after the response is reached. enter image description here