UI Bakery Docs
RoadmapRelease notesSign In
  • 👋Welcome to UI Bakery!
  • 🌟Overview
    • 💡Video intro
    • ✨Main features
    • 🔖Glossary
  • 🛠️Getting started
    • Create an application
    • Build UI
      • Data mocking methods
    • Link components
    • Connect a data source
    • Load data
    • Bind data to UI
    • Transform data with JavaScript
      • Data mapping & transforming
    • Change component data
    • Send a form
    • Create a filter
    • Note on debugging
    • Deploy your application & invite users
  • 📌Concepts
    • Components
      • Component basics
      • Component methods
      • Components best practices
        • Input validation
        • Linking a Table to a Form/Detail
        • Using a single Form to add and update data
        • Searching Table based on input value
        • Configuring server-side pagination
        • Managing Date object time zones
        • Role-based Menu component items
        • Field types & types recognition
          • Select/Tag field: Utilizing Tag mapper
        • Expanding component to fit screen/container
        • Controlling component's visibility
    • Custom components
      • Unrestricted custom components
    • Data sources
      • Data source environments
      • Connecting local database via ngrok
      • SSH Tunneling
    • Actions
      • Actions basics
        • Calling actions from code
      • Actions management & shortcuts
      • Actions settings
      • Actions library
      • Server actions
      • Logs and debugging
    • App & page triggers
    • UI Bakery variables
    • State variables
    • Local storage
    • Modules
    • Custom JavaScript
      • JavaScript files
    • Workspace management
      • Account & workspace
      • Seats & Shared permission groups in UI Bakery
      • Roles in UI Bakery
      • Role permissions
      • Explore the interface
      • App environments
        • Release management
      • Audit logs
      • Multi-factor authentication
    • Export & import an app
    • Mobile layout
    • Theme editor
      • Changing theme from the app
    • UI Bakery source control
      • Git controls overview
      • Migrating your app model to the latest version
  • ⚡How-tos
    • File management
      • Working with PDF files
      • CSV import & export
      • Uploading files using methods
      • Displaying files from Google Drive and Dropbox
      • Parsing and sending XML
    • Styling
      • Modifying components with CSS
    • Layout & navigation
      • Adding navigation to application
      • Reading query params from URL
      • Hiding UI Bakery loader in the Embedded mode
    • Data
      • Managing user data with the {{user.email}} variable
      • Using JS libraries
        • Internationalization (i18n) & Localization: Translating UI Bakery Apps
      • Implementing row-level security
      • Copying to clipboard
    • Custom code
      • Communicating with external sites via Iframe
      • Implementing custom app hotkeys
      • Retrying API with HTTP status code 202
  • 🔎Extras
    • UI Bakery Automations
      • Environment and release strategy
      • Git in automations
      • Using external Node libraries
    • UI Bakery Database
      • Database migration
  • 💻On-premise
    • UI Bakery on-premise
    • Install & update
      • Installing on-premise
        • Azure virtual machine
        • Azure container instance
        • AWS EC2 instance
        • Google Cloud Compute Engine VM instance
        • DigitalOcean 1-click droplet
        • Manual w/ docker compose
        • Manual w/ docker run
        • Windows installation
        • Kubernetes
          • AWS EKS with Fargate
          • Scaling and resource optimization
      • Troubleshooting installation errors
      • Updating on-premise
      • Updating license key
      • Updating environment variables
      • Recommendations
        • Architecture overview
        • UI Bakery in production
        • Resource optimization
        • Running a standalone database instance
        • Generating custom secrets
    • On-premise features
      • External analytics
      • Branding
      • Embedding
      • SCIM 2.0
      • Instance API
      • Activating features under a feature flag
    • Additional configurations
      • Health check API
      • Email configuration
      • Google Sheets connection setup
      • Salesforce connection setup
      • Azure blob storage configuration
      • Adding python backend code to existing installation
      • UI Bakery Postgres
    • Networking & security
      • Setting up a domain name
      • Configuring custom certificate authority
      • Custom base URL
      • Getting requests to the local network
      • Setting up SSL on Ubuntu
    • SSO
      • OpenID
        • Google OAuth2
        • Okta ODIC
        • Azure AD OAuth2
        • Token refresh
      • SAML
        • Okta SAML
        • Azure AD SAML
      • Role synchronization
      • Multiple SSO
      • Logout redirect
      • Troubleshooting
    • Git source control
      • Manage multi-instance deployment
      • Custom PR URL
      • Automate GitHub releases
      • Automate GitLab releases
      • Automate Bitbucket releases
    • Environment variables
  • 📚Reference
    • Data security measures
    • Improving app security
    • ✨AI Assistant
    • List of Components
      • Azure Blob Storage file uploader
      • Accordion
      • Alert
      • Avatar
      • Boolean
      • Breadcrumbs
      • Bubble map
      • Button
      • Card
      • Chart
      • Chat
      • Checkbox
      • Collapsible card
      • Color picker
      • Composite form
      • Container
      • Context menu button
      • Currency
      • Currency input
      • Date picker
      • Date & time
      • Date & time picker
      • Detail
      • Divider
      • Email input
      • Embedded App
      • File
      • File dropzone
      • File picker
      • Flex container
      • Form
      • Frame drawer
      • Grid view
      • Heading
      • Horizontal menu
      • Icon
      • iFrame
      • Image
      • Image picker
      • JSON editor
      • JSON viewer
      • Link
      • List view
      • Map
      • Menu
      • Metric
      • Modal
      • Multi-select
      • Number
      • Number input
      • Password input
      • PDF viewer
      • Percent
      • Pop-up form
      • Progress bar
      • QR code
      • Radio
      • Range slider
      • Rating
      • Reusable header
      • Reusable sidebar
      • Select
      • Signature
      • Slider
      • Steps
      • Stepper
      • S3 file uploader
      • Table
        • Conditional formatting based on cell value
        • Display name instead of ID for relation
        • Row context referencing
        • Select multiple table rows
        • How to Highlight Text in a Table Using mark.js
      • Tabs
      • Tabset
      • Tags
      • Text
      • Text annotate
      • Text input
      • Time picker
      • Toggle
      • Tree component
      • Video
      • Dynamic structure properties
      • Card (deprecated)
      • Input (deprecated)
    • Upgrading components
    • List of Data sources
      • Airtable
      • AWS API
      • AWS Athena
      • AWS DynamoDB
      • AWS Lambda
      • AWS Redshift
      • AWS S3
        • S3 compatible endpoints (DigitalOcean spaces)
      • Azure Blob Storage
      • Big Query
      • Databricks
      • Exasol
      • Firestore, Firebase Auth & Realtime DB
        • Firebase authentication
        • Managing database data
        • Firebase client-side SDK
        • Firebase libraries
      • GitHub
      • Google Sheets
      • GraphQL
      • HTTP API
        • API Authentication
      • HubSpot
      • JDBC
      • MariaDB
      • MongoDB
      • MySQL
      • OpenAI
      • OpenAPI
      • Oracle
      • PostgreSQL
      • Presto
      • Redis
      • Salesforce
      • SAP Hana
      • SendGrid
      • Slack
      • SMTP
      • Snowflake
      • Spanner
      • SSH
      • Stripe
      • SQL Server
      • Supabase
      • Twilio
      • UI Bakery AI
    • List of Action steps
      • AI Action
      • Azure Blob Storage Query
      • Bulk Create Rows
      • Bulk Delete Rows
      • Condition
      • Create Row
      • Delete Row
      • DynamoDB Request
      • Execute Action
      • Firebase Query
      • Generate File
      • GraphQL Query
      • HTTP Request
      • Interval
      • JavaScript Code
      • Load Table
      • Load Row
      • Loop Action
      • MongoDB Command
      • Navigate
      • Open API Request
      • Python Backend Code
      • Redis Command
      • Save to Local Storage
      • Save to State
      • Show Notification
      • Slack Message
      • SMTP Request
      • SSH Command
      • SQL Query
      • S3 Query
      • Update Row
    • Troubleshooting techniques
    • Performance optimization
Powered by GitBook

© 2025 UI Bakery

On this page
  • Working with Firestore
  • Getting collections list
  • Querying Firestore
  • Getting a document by ID
  • Updating a document
  • Inserting a document
  • Deleting a document
  • Querying collection group
  • Working with Firebase Auth
  • Listing users
  • Getting user by UID/ email/ phone number
  • Creating a new user
  • Updating a user
  • Deleting a user
  • Working with Realtime DB
  • Querying the database
  • Setting/updating data
  • Appending data to a list

Was this helpful?

Export as PDF
  1. Reference
  2. List of Action steps

Firebase Query

PreviousExecute ActionNextGenerate File

Last updated 1 month ago

Was this helpful?

The Firebase Query action allows you to execute multiple operations in Firestore, Realtime DB, and Firebase Auth services. In order to to execute the query you need to select the service, method, and define their parameters. You can use UI Bakery variables to compose keys in Realtime DB, collection names in Firestore queries, and so on.

Below you'll find more Firebase Query examples for all the services.

Working with Firestore

Getting collections list

To get a list of your collections, you need to select your Firestore data source from the list of data sources and select the Firebase Query action type. Choose Get collection list as the Firestore method and provide the Parent document ID or leave it blank for top level collections.

Querying Firestore

To query Firestore, you need to select your Firestore data source from the list of data sources and select the Firebase Query action type. Choose Query as the Firestore method and specify your collection name. You can filter your query by values, add limits, and add ordering by a certain field.

Getting a document by ID

To get a document by ID, you need to select your Firestore data source from the list of data sources and select the Firebase Query action type. Choose Get document by ID as the Firestore method and specify the collection name and document ID. Document ID can receive dynamic values passed in {{}}.

Updating a document

To update a document, you need to select your Firestore data source from the list of data sources and select the Firebase Query action type. Choose Update document as the Firestore method. Specify the collection name, document ID and the objects that need to be updated. Document ID and values can receive dynamic values passed in {{}}.

Inserting a document

To insert a document, you need to select your Firestore data source from the list of data sources and select the Firebase Query action type. Choose Insert document as the Firestore method. Since the pattern of document insert is the same as for updating a document, you can leave the document ID blank, and Firestore will generate it automatically.

Deleting a document

To delete a document, you need to select your Firestore data source from the list of data sources and select the Firebase Query action type. Choose Delete document as the Firestore method and only provide the document ID. Document ID can receive dynamic values passed in {{}}.

Querying collection group

To query a collection group, you need to select your Firestore data source from the list of data sources and select the Firebase Query action type. Choose Query collection group as the Firestore method and specify your collection name. You can filter your query by values, add limits, and add ordering by a certain field.

Working with Firebase Auth

With UI Bakery, you can manage your users from the Firebase Auth setup, namely view, update, create new and delete existing users.

Listing users

To get a list of your users, you need to select your Firestore Auth data source from the list of data sources and select the Firebase Query action type. Choose List users as the Firebase Auth method. You can limit the number of returned users if necessary.

Getting user by UID/ email/ phone number

To get a certain user by their UID, phone number or email, you need to select your Firestore Auth data source from the list of data sources and select the Firebase Query action type. Choose Get user by UID/ email/ phone number as the Firebase Auth method.

Creating a new user

To create a new user, you need to select your Firestore Auth data source from the list of data sources and select the Firebase Query action type. Choose Create user as the Firebase Auth method and provide a user object.

Updating a user

To update user's information, you need to select your Firestore Auth data source from the list of data sources and select the Firebase Query action type. Choose Update user as the Firebase Auth method and specify user's UID and the update object.

Deleting a user

To delete a user, you need to select your Firestore Auth data source from the list of data sources and select the Firebase Query action type. Choose Delete user as the Firebase Auth method and specify user's UID.

Working with Realtime DB

Querying the database

To enable additional filtering options, turn on the Use ordering toggle. The following filters are available:

  • Ordering by child, key, value, or priority

  • Ordering by limit (limit to first/ limit to last)

  • Filtering queries with equalTo, startAt, endAt

Setting/updating data

In Firebase databases, you can use two approaches to updating data:

  • set rewrites the current values of an item

  • update updates the required values of an item, but doesn't rewrite all the values of an object

To use the set method, select it from the action dropdown, specify the database ref and the data object.

To use the update method, select it from the dropdown, specify the database ref and the data object.

Appending data to a list

To append data to a list, you need to select your RealtimeDB data source from the list of data sources and select the Firebase Query action type. Choose Append data to a list as the Realtime database method and specify your database ref and the data object.

To query Realtime DB, you need to select your RealtimeDB data source from the list of data sources and select the Firebase Query action type. Choose Query as the Realtime database method and specify your .

📚
database reference