Skip to main content
firebase icon

Firebase Connector

SourceAPI DocsAPI ChangelogConnector Changelog

Description​

Firebase is a platform developed by Google for creating mobile and web applications. Firebase Cloud Firestore is a document-based, flexible, scalable, and NoSQL cloud database, used to store and sync data for client and server-side applications. This component uses the Firebase Admin SDK to create, read, update, delete, and list documents within a Firebase Cloud Firestore collection.

API Documentation​

This component was built using the Firebase Admin SDK Reference.

Connections​

Private Key​

key: firebaseConnection

The Firebase Admin SDK is a set of server libraries that lets applications interact with Firebase from privileged environments. This connection authenticates with a service account private key generated for the Firebase project.

Prerequisites​

  • A Firebase project with Cloud Firestore enabled
  • Permission to manage service accounts for that project

Setup Steps​

  1. Follow the Firebase Admin SDK setup guide to open the service account settings for the Firebase project
  2. Generate a new private key for the service account
  3. Download the JSON file that contains the generated credentials

Configure the Connection​

  • Enter the Project Id from the project_id value in the JSON file
  • Enter the Private Key from the private_key value in the JSON file
  • Enter the Email from the client_email value in the JSON file
InputNotesExample
Email

Provide the client_email value from the service account JSON key file.

firebase-adminsdk-xxxxx@my-project-id.iam.gserviceaccount.com
Private Key

Provide the private_key value from the service account JSON key file. See the Firebase Admin SDK setup guide.

-----BEGIN PRIVATE KEY----- XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX -----END PRIVATE KEY-----
Project Id

Provide the unique identifier of the project from the Google Cloud Platform.

my-project-id

Data Sources​

Select Collection​

Select a collection from the Firebase Cloud Firestore database. | key: selectCollection | type: picklist

InputNotesExample
Connection

The Firebase connection to use.

Example Payload for Select Collection⤓
Loading…

Select Document​

Select a document from a Firebase Cloud Firestore collection. | key: selectDocument | type: picklist

InputNotesExample
Collection

Provide a string value for the collection name.

Customers
Connection

The Firebase connection to use.

Order By

Provide a string value for the field to order by.

Name
Query Operators

A JSON array of filter conditions to apply to the query. Each condition is an object with field, operator, and value keys, and all conditions must match. Supported operators are the Cloud Firestore where-clause operators, such as ==, !=, in, not-in, and array-contains. A null value can only be compared with == or !=.

[
  {
    "field": "myFieldName",
    "operator": "!=",
    "value": "myFieldValue"
  },
  {
    "field": "myOtherFieldName",
    "operator": "not-in",
    "value": [
      "myOtherFieldValue1",
      "myOtherFieldValue2"
    ]
  }
]
Example Payload for Select Document⤓
Loading…

Actions​

Bulk Create Documents​

Create multiple documents in a Cloud Firestore collection in a single operation | key: bulkCreateDocuments

InputNotesExample
Collection

Provide a string value for the collection name.

Customers
Documents

An array of documents to be created in the collection.

[
  {
    "field1": "value1",
    "field2": "value2"
  },
  {
    "field1": "value3",
    "field2": "value4"
  }
]
Connection

The Firebase connection to use.

Example Payload for Bulk Create Documents⤓
Loading…

Create Document​

Create a document in a Cloud Firestore collection | key: createDocument

InputNotesExample
Collection

Provide a string value for the collection name.

Customers
Data

The fields to write to the document, as key-value pairs. Each key is a field name and each value is the value to store in that field.

Connection

The Firebase connection to use.

Example Payload for Create Document⤓
Loading…

Delete Document​

Remove a document from a Cloud Firestore collection | key: deleteDocument

InputNotesExample
Collection

Provide a string value for the collection name.

Customers
Document

Provide a string value for the unique identifier of the document.

4hJk2mX9pQrT7vWn3LsY
Connection

The Firebase connection to use.

Example Payload for Delete Document⤓
Loading…

Get Document​

Get the contents of a document in a Cloud Firestore collection | key: getDocument

InputNotesExample
Collection

Provide a string value for the collection name.

Customers
Document

Provide a string value for the unique identifier of the document.

4hJk2mX9pQrT7vWn3LsY
Connection

The Firebase connection to use.

Example Payload for Get Document⤓
Loading…

List Collections​

List all collections in a Cloud Firestore database | key: listCollections

InputNotesExample
Connection

The Firebase connection to use.

Example Payload for List Collections⤓
Loading…

List Documents​

List all documents in a Cloud Firestore collection | key: listDocuments

InputNotesExample
Collection

Provide a string value for the collection name.

Customers
Connection

The Firebase connection to use.

Order By

Provide a string value for the field to order by.

Name
Query Operators

A JSON array of filter conditions to apply to the query. Each condition is an object with field, operator, and value keys, and all conditions must match. Supported operators are the Cloud Firestore where-clause operators, such as ==, !=, in, not-in, and array-contains. A null value can only be compared with == or !=.

[
  {
    "field": "myFieldName",
    "operator": "!=",
    "value": "myFieldValue"
  },
  {
    "field": "myOtherFieldName",
    "operator": "not-in",
    "value": [
      "myOtherFieldValue1",
      "myOtherFieldValue2"
    ]
  }
]
Example Payload for List Documents⤓
Loading…

Remove Field​

Completely removes a field from a given document (may not work on a field with a null value) | key: removeField

InputNotesExample
Collection

Provide a string value for the collection name.

Customers
Document

Provide a string value for the unique identifier of the document.

4hJk2mX9pQrT7vWn3LsY
Field To Remove

The name of the field to delete from the document. Use dot notation, such as address.city, to remove a nested field.

firstName
Connection

The Firebase connection to use.

Example Payload for Remove Field⤓
Loading…

Update Document​

Update a document in a Cloud Firestore collection | key: updateDocument

InputNotesExample
Collection

Provide a string value for the collection name.

Customers
Data

The fields to write to the document, as key-value pairs. Each key is a field name and each value is the value to store in that field.

Document

Provide a string value for the unique identifier of the document.

4hJk2mX9pQrT7vWn3LsY
Connection

The Firebase connection to use.

When updating a document, any number of optional fields can be specified. However, to unset a value but keep the field, an unbound input (null, undefined) must be passed, such as from the code component or a previous step result. This will result in the field's value becoming null or unset in the document. To completely remove the field from the document, use the Remove Field action.

Example Payload for Update Document⤓
Loading…

Changelog​

2026-10-21​

Updated session handling and added configuration-time support across actions:

  • Updated all actions and data sources to isolate each run's Firebase session, so one run can no longer pick up another connection's credentials or close a session another run is using
  • Added inline action calling support across all actions for improved example output during configuration
  • Added output schemas to the List Collections, Create Document, and List Documents actions for improved field mapping during configuration

2026-06-11​

  • Masked the Private Key connection field so the value is hidden in the UI
  • Renamed the connection label to Private Key

2026-04-30​

Updated spectral version

2025-10-21​

Added inline data sources for collections and documents to enhance data selection capabilities