Skip to content

tricknotes/FirebaseAuthenticationGoogleAppsScript

Repository files navigation

Firebase Authentication for Google Apps Scripts

This library is under development, so breaking change may be landed in frequently.

This library focuses to support the APIs on https://firebase.google.com/docs/reference/rest/auth like firebase-admin-node interface.

Installation

Please enter M1lZwUjHOhi_bxE4didbbG5jiNITGdNhd as GAS library for your project.

Usage

Configurating Firebase Authentication instance from your script.

Let's start creating instance with the following code:

const auth = FirebaseAuthentication.getAuth(email, key, projectId);

You need to set arguments as below:

  • email … client email address
  • key … private key
  • projectId … your project id

Configuration Template

Here's a quick template to get you started (by replacing email and key with your values):

const email = 'projectname-12345@appspot.gserviceaccount.com';
const key = '-----BEGIN PRIVATE KEY-----\nPrivateKeyLine1\nPrivateKeyLine2\nPrivateKeyLineN\n-----END PRIVATE KEY-----';
const projectId = 'projectname-12345'
const auth = FirebaseAuthentication.getAuth(email, key, projectId);

Find User

// List users
auth.getUsers();

// Get an user
auth.getUserByEmail(email);
auth.getUserByPhoneNumber(phoneNumber);
auth.getUserByUid(uid);

Creating User

// This value must include a key that identify user, like `email`.
const user = {...};

// To create an user.
auth.createUser(user);

// To create some users.
auth.createUsers([user]);

Updating User

const user = {...};

auth.updateUser(user);

Deleting User

// User id to identify on Firebase Authentication
const localId = '...';

auth.deleteUser(localId);
auth.deleteUsers([localId], true);

For TypeScript Users

Please install FirebaseAuthenticationGoogleAppsScript as a node module to import type declaration.

$ yarn install --dev FirebaseAuthenticationGoogleAppsScript
# Or, $ npm install --save-dev FirebaseAuthenticationGoogleAppsScript

Then, add the following import sentence into your module.

import { FirebaseAuthentication } from 'firebase-authentication-google-apps-script';

const auth = FirebaseAuthentication.getAuth(email, key, projectId);

Development

Setup

  1. Create your own script.
$ yarn run setup
  1. Connect script to your Cloud Platform Project.

See for details: https://developers.google.com/apps-script/guides/cloud-platform-projects#switching_to_a_different_standard_gcp_project

  1. Create OAuth Client and login with your Cloud Platform Credential.

See for details: https://developers.google.com/apps-script/guides/cloud-platform-projects#creating_oauth_credentials

Test

$ yarn run test

TODO

This library doesn't support some APIs and requires developer friendly futures. See issues for details.

References

This project is inspired by the following libraries:

About

Firebase Authentication for Google Apps Scripts

Resources

Stars

Watchers

Forks

Packages

No packages published