Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Firestore onWrite trigger doesn't have auth information

When I write data to Firestore from a logged in Android Client, I am not able to get the auth information on the onWrite trigger.

When I print the context object which is supposed to store auth object with UID, I see that auth object doesn't exist.

According to this link, https://firebase.google.com/docs/functions/beta-v1-diff?authuser=0#new_properties_for_user_auth_information

I should get this information on any writes on Firestore.

Here is the example code I Used.

exports.testTrigger = functions.firestore
    .document('col1/doc1/col2/{doc2}')
    .onWrite((change, context) => {

        console.log('context = ', context);
        const auth = context.auth;
        console.log('auth = ', auth);

});

Output in Cloud Function Logs:

context =  { eventId: '3c2295a4-2823-4fba-b406-728d7d77f6de-0',
  timestamp: '2018-05-06T17:11:12.771855Z',
  eventType: 'google.firestore.document.write',
  resource: 
   { service: 'firestore.googleapis.com',
     name: 'projects/xyz/databases/(default)/documents/col1/doc1/col2/gFRWgJg37DmB5wchWLBV' },
  params: { request_id: 'gFRWgJg37DmB5wchWLBV' } }

auth = undefined
like image 375
Anupam Dutta Avatar asked May 04 '26 00:05

Anupam Dutta


1 Answers

That documentation you linked to is talking about Realtime Database triggers, not Firestore. Look very carefully at the section headings.

Currently, auth information is not provided in Firestore triggers. It may be available in the future.

like image 200
Doug Stevenson Avatar answered May 07 '26 16:05

Doug Stevenson