atultherajput
atultherajput

Reputation: 175

How to add Timestamp in firebase cloud functions

I am trying to add Timestamp in Firestore document on Firebase Cloud functions.

I had tried firestore.Timestamp.fromDate(new Date()), but its not working.

const functions = require('firebase-functions');
const admin = require('firebase-admin');
const firestore = admin.firestore();
const createdAt = firestore.Timestamp.fromDate(new Date());
console.log(createdAt);

Value of createdAt should return the server timestamp, but its throwing error.

Upvotes: 3

Views: 5341

Answers (4)

Jan
Jan

Reputation: 180

Instead of this:

const firestore = admin.firestore();
const createdAt = firestore.Timestamp.fromDate(new Date());

Try this:

const firestore = admin.firestore;
const createdAt = firestore.Timestamp.fromDate(new Date());

Might be hard to spot the difference. So here is the explanation: You are calling the function "firestore()" of the object "admin" instead of accessing the property "firestore" of the object "admin" which has the property "Timestamp" you are looking for.

Upvotes: 7

Ziad Alame
Ziad Alame

Reputation: 772

When using cloud function hooks specifically functions.auth.user().onCreate((user) => {}) I use the user.metadata.creationTime to get the exact creation time without having to go into timezone and date/time issues.

Upvotes: 0

adeboye0
adeboye0

Reputation: 660

I personallly used const timestamp = new Date().getTime(); then saved it to the firstore document and it worked.

Upvotes: 0

Doug Stevenson
Doug Stevenson

Reputation: 317322

This line of code has a syntax error in it. It's not valid JavaScript:

const createdAt: firestore.Timestamp.fromDate(new Date());

It looks like you meant to write this:

const createdAt = firestore.Timestamp.fromDate(new Date());

Upvotes: 2

Related Questions