update firestore document with new field code example

Example 1: simple firestore cloud function update document

import * as functions from 'firebase-functions';
import * as admin from 'firebase-admin';

admin.initializeApp();

export const resetCounter = functions.https.onRequest((req, res) => {
    const resetRef =  admin.firestore()
    .collection('collectionName')
    .doc('documentName')
    resetRef.get().then((doc) => {
        if(doc.exists){
            resetRef.update({counter: 0})
              .catch(err => {
            console.log("Error",err)
            res.send("500");
          })
       }
    }).catch(err=>{
      	//Internal server error
      	console.log("Error",err)
        res.send("500");
    });
  //Successful operation
  res.send("200");
});

Example 2: firestore cloud function update documents

import * as functions from 'firebase-functions';
import * as admin from 'firebase-admin';

admin.initializeApp();

export const setProductsToExpired = functions.https.onRequest(async(request, response) => {
    const expiredProducts = await admin.firestore()
      .collection('products')
      .where('timestamp','<=', admin.firestore.Timestamp.now())
      .get();
    
    const batch = admin.firestore().batch();
 
    expiredProducts.forEach(doc => {
      batch.update(doc.ref,'expired',true);
    });
    
    await batch.commit();
    //Successful operation
    response.send("200");
    });

Example 3: firestore create document with auto id

// Add a new document with a generated id.
db.collection("cities").add({
    name: "Tokyo",
    country: "Japan"
})
.then(function(docRef) {
    console.log("Document written with ID: ", docRef.id);
})
.catch(function(error) {
    console.error("Error adding document: ", error);
});
---------------------------
//If you want to specify id then use .set() 
// e.x   \/
db.collection("cities").doc("TYO").set({
    name: "Tokyo",
    country: "Japan"
})

Example 4: firebase cloud method update

firebase deploy --only functions:functionNameHere

Example 5: document.set() firebasefirestore java

var washingtonRef = db.collection("cities").doc("DC");// Atomically add a new region to the "regions" array field.washingtonRef.update({    regions: firebase.firestore.FieldValue.arrayUnion("greater_virginia")});// Atomically remove a region from the "regions" array field.washingtonRef.update({    regions: firebase.firestore.FieldValue.arrayRemove("east_coast")});

Tags:

Misc Example