Pizzly

The simplest, fastest way to integrate your app with an OAuth API

Integrate the Pizzly API with the Firebase Admin SDK API

Setup the Pizzly API trigger to run a workflow which integrates with the Firebase Admin SDK API. Pipedream's integration platform allows you to integrate Pizzly and Firebase Admin SDK remarkably fast. Free for developers.

New Child Object in a Realtime Database from the Firebase Admin SDK API

Emit new event when a new child object is discovered within a specific path

 
Try it
New Document in Firestore Collection from the Firebase Admin SDK API

Emit new event when a structured query returns new documents

 
Try it
Create Document with the Firebase Admin SDK API

Creates a New Document. See the docs here

 
Try it
Create Firebase Realtime Database Record with the Firebase Admin SDK API

Creates or replaces a child object within your Firebase Realtime Database. See the docs here

 
Try it
List Documents with the Firebase Admin SDK API

Lists documents in a collection. See the docs here

 
Try it
Save Event to Firestore with the Firebase Admin SDK API

Replicate event in Firestore

 
Try it
Update Documents with the Firebase Admin SDK API

Updates a Document. See the docs here

 
Try it

Connect Pizzly

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
module.exports = defineComponent({
  props: {
    pizzly: {
      type: "app",
      app: "pizzly",
    }
  },
  async run({steps, $}) {
    const fetch = require('node-fetch')
    
    const { host, secretKey } = this.pizzly.$auth
    const authentication = 'Basic ' + Buffer.from(secretKey + ':').toString('base64')
    
    // Make a test API request to Pizzly. Should return a success message
    return await (await fetch(`https://${host}/api/`, { headers: { "Authorization": authentication } })).json()
  },
})

Overview of Firebase Admin SDK

With the Firebase Admin SDK API, you can build a variety of different
applications and tools. For example, you could build a tool to manage your
Firebase project's users, or a tool to monitor your Firebase project's data
usage. You could also build an app that helps you manage your Firebase
project's settings, or an app that helps you troubleshoot your Firebase
project's data.

Connect Firebase Admin SDK

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
import admin from "firebase-admin"
export default defineComponent({
  props: {
    firebase_admin_sdk: {
      type: "app",
      app: "firebase_admin_sdk",
    },
  },
  async run({ steps, $ }) {
    // Enter values for the following parameters below this code step,
    // These get passed to the initializeApp method below.
    const { 
      projectId, 
      clientEmail, 
      privateKey,
      region = "firebaseio.com",
    } = this.firebase_admin_sdk.$auth

    // Before passing the privateKey to the initializeApp constructor,
    // we have to replace newline characters with literal newlines
    const formattedPrivateKey = privateKey.replace(/\\n/g, "\n")

    // See https://firebase.google.com/docs/reference/admin/node/admin.credential.html#cert
    if (!admin.apps.length) {
      admin.initializeApp({
        credential: admin.credential.cert({
          projectId,
          clientEmail,
          privateKey: formattedPrivateKey,
        }),
        databaseURL: `https://${projectId}-default-rtdb.${region}/`,
      })
    }
  },
})