104 results found
-
Support deleting databases via the API
You cannot delete a Firestore database with the API; you must use the CLI if you want to do this programmatically. This is problematic as it means you essentially need to create a shell in your application, ensure the CLI is available, authenticate, and then make the required CLI call.
2 votes -
Support deleting collections in the API
Currently you can only delete collections programmatically via the CLI. Otherwise, you have to list and delete every single document in the collection. If those documents have nested collections, you have to (recursively) retrieve and delete every document in the nested collection (As deleting a document does not delete any nested collections the document has). If there are additional levels of nested collections... You get the idea.
I wasn't sure what this other request was referring to so I made this one: https://firebase.uservoice.com/forums/948424-general/suggestions/46562317-api-support-for-deleting-directories
7 votes -
Expose subcollections as json fields
Currently, subcollections are treated separately from fields in the UI. This seems like an arbitrary distinction - a subcollection is simply a json object under a document. You could do the same thing with a string field.
The API could support retrieving subcollections as string fields in json format for a document. This would prevent the need to iterate over every document in a collection, then get a list of the subcollections, then retrieve the documents from those subcollections, etc. If worried about time required, since Firestore supports 100 nesting levels, perhaps the API call could include the nesting level…
1 vote -
Expose "last updated" metadata
If Firebase cannot support some kind of changestream implementation, it should include metadata on each document that includes a "last updated" timestamp. Then clients can query against this field to only retrieve "new" changes (Inserts, Updates). It lacks support for delete capture but is the next best thing after a changestream.
18 votes -
Changestream
Firestore does not support any actual CDC (Change Data Capture). A changestream similar to other NoSQL implementations (Mongo, DocumentDB, Azure Cosmos DB) would make the database a lot more usable and grant feature parity with other popular NoSQL databases. This changestream would expose operations like updates, inserts, and deletes for a client to come and retrieve from either a timestamp or a resume token.
8 votes -
Allow security rules to validate custom bearer tokens
Currently, Firestore and Cloud Storage security rules
req.auth
property will only validate and accept Google-signed ID tokens from Firebase Auth/Identity Platform.This means that "user authentication rules" CANNOT be used if we rely on our own (or 3rd-party) authentication/token server.
Proposal:
Allow security rules to configure the token verification rules so that they can verify the token claims of a configured token authority. For example, tokens signed by a service account private key, or 3rd party auth server (aside from Firebase Auth/Identity Platform).1 vote -
firestore 'in' 2d array order optional
For some reason an 'in' wury with a 2d array also runs with a sort function. which is not provided or supported by other features such as ArrayUnion and ArrayRemove.
the order should be an optional parameter because using a system where we must find all other documents that have the exact same features but maybe in a different order, is not possible. there is no native sort option when using ArrayUnion, and we've been taught through firestore arrays in general, that orders of items fundamentally shouldn't be considered to exist due to idempotency.
TLDR:
ArrayUnion does not support 'in…1 vote -
Query language (like SQL) but for firestore to enable developers to share queries across the whole stack
let's say that you have a Kotlin android app, Swift iOS app, a Dart Flutter app and cloud functions written in typescript.
there should be a way to re-use shared queries across the whole stack.
having a query language like SQL and pass those redundant queries across all apps that would be really efficient and could save developers a lot of time and it could produce less bugs.I'm not suggesting SQL, I'm suggesting to have a query language that's all.
1 vote -
Allow use of document value as query paramter
Especially a parent value of a subcollection. For example, to be able to read data about a User while querying a subcollection called "Responses".
1 vote -
15 votes
-
Add option to save a query in Firestore Query Builder
I have some queries that I perform frequently through Firestore Query Builder. It would be great to save queries to be able to run them with one click.
3 votes -
Provide a way to document and share models across platforms.
Afaik there is currently no standard way to a) document the structure and organization of Firestore collections and documents stored in a project expected by apps which use it, and b) share the model definition across languages and platforms. Instead, each client requires its own implementation of the app-specific model and conversion to/from Firestore's model which needs to be kept up-to-date as the system involves.
If there were a way to share this model (for ex. proto, JSON schema, other) and easily use it from Firestore APIs, it would reduce dev and maintenance cost and improve developer experience.
3 votes -
2 votes
-
onDisconnect for firestore (user presence)
https://firebase.google.com/docs/firestore/solutions/presence
We have a workaround by using Realtime Database, but if you don't work realtime databases in your app, this seems inefficient and cumbersome. I'd like to see a native method for Firestore that offers this functionality. Perhaps offer a onSnapshot.disconnect hook.
43 votes -
should be able to sort data and select data with criteria on different fields
should be able to sort data and select data with criteria on different fields (the limitation section on https://firebase.google.com/docs/firestore/query-data/order-limit-data?hl=en&authuser=0)
2 votes -
Create way to duplicate documents within firebase console so we can easily move them elsewhere
Sometimes it would be nice to have ability to use the console to Duplicate/Copy firestore documents and put them in different locations of the database.
4 votes -
Encrypted Collections in Firestore
Ability to mark certain collections to be Encrypted so it's not readable even in the firebase console.
There are some application types that require this sort of behaviour to increase security.
Say you are building a messaging app, you would not want the messages between your users to be seen on the console.
5 votes -
It's impossible to import data into the emulator without first exporting, which is a backwards design
Developers should be able to use the CLI to easily pass in a path to a json file, whose contents may be imported into a firestore emulator collection. For instance:
firebase emulators:start --import ./data/import.json --collection=puzzles
4 votes -
Join collections in real-time (similar to lookup in mongodb)
The ability to join collections in real-time really allows developers to build complex use cases. Currently, I am having to denormalize data so excessively that the solution doesn't seem to scale. Having to implement workaround after workaround to circumvent the limitations.
An aggregate lookup function similar to that of mongodb would really be a life save. We are ok to compromise on the extra reads, and some performance if it means to bring us data consistency.
Really having this feature would stop people looking into RDBMS based alternative such as Supabase.
7 votes -
signInWithCustomToken using Python
Hello,
is it possible to use signInWithCustomToken to authenticate in Python and retrieve documents from a collection?
Does it work in Python only with cred = credentials.Certificate('serviceAccountKey.json')?Thanks
1 vote
- Don't see your idea?