Request authentication context.
uid- the UID of the requesting user.
token- a map of JWT token claims.
token map contains the following values:
|`email`||The email address associated with the account, if present.|
|`email_verified`||`true` if the user has verified they have access to the `email` address.|
|`phone_number`||The phone number associated with the account, if present.|
|`name`||The user's display name, if set.|
|`sub`||The user's Firebase UID. This is unique within a project.|
|`firebase.identities`||A map of all the identities that are associated with this user's account. The keys of the map can be any of the following: `email`, `phone`, `google.com`, `facebook.com`, `github.com`, `twitter.com`. The values of the map are lists of unique identifiers for each identitity provider associated with the account. For example, `request.auth.token.firebase.identities["google.com"]` contains the first Google user ID associated with the account.|
|`firebase.sign_in_provider`||The sign-in provider used to obtain this token. Can be one of the following strings: `custom`, `password`, `phone`, `anonymous`, `google.com`, `facebook.com`, `github.com`, `twitter.com`.|
The request method. One of:
Path of the affected resource.
Map of query properties, when present.
limit- query limit clause.
offset- query offset clause.
orderBy- query orderBy clause.
// Limit documents per request to 50 allow list: if request.query.limit <= 50
The new resource value, present on write requests only.
When the request was received by the service.
For Firestore write operations that include server-side timestamps, this time will be equal to the server timestamp.
// Make sure that 'myServerTimestampField' was set using a // server-side timestamp. request.time == request.resource.data.myServerTimestampField