functions/firebase/auth.go (21 lines of code) (raw):

// Copyright 2019 Google LLC // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. // You may obtain a copy of the License at // // https://www.apache.org/licenses/LICENSE-2.0 // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. // [START functions_firebase_auth] // Package firebase contains a Firestore Cloud Function. package firebase import ( "context" "log" "time" ) // AuthEvent is the payload of a Firestore Auth event. type AuthEvent struct { Email string `json:"email"` Metadata struct { CreatedAt time.Time `json:"createdAt"` } `json:"metadata"` UID string `json:"uid"` } // HelloAuth is triggered by Firestore Auth events. func HelloAuth(ctx context.Context, e AuthEvent) error { log.Printf("Function triggered by creation or deletion of user: %q", e.UID) log.Printf("Created at: %v", e.Metadata.CreatedAt) if e.Email != "" { log.Printf("Email: %q", e.Email) } return nil } // [END functions_firebase_auth]