You have unlimited access as a PRO member
You are receiving a free preview of 3 lessons
Your free preview as expired - please upgrade to PRO
- Object Oriented Programming With TypeScript
- Angular Elements Advanced Techniques
- TypeScript - the Basics
- Cloud Scheduler for Firebase Functions
- Testing Firestore Security Rules With the Emulator
- How to Use Git and Github
- Infinite Virtual Scroll With the Angular CDK
- Build a Group Chat With Firestore
- Async Await Pro Tips
Airtable Firestore Customer Relationship ManagementEpisode 110 written by Jeff Delaney
Health Check: This lesson was last reviewed on and tested with these packages:
- CloudFunctions v1.x
Find an issue? Let's fix it
Source code for Airtable Firestore Customer Relationship Management on Github
Firebase is a great platform for building apps, but it does not provide much in the way of Customer Relationship Management (CRM). Most businesses need to integrate their data with additional software for analytics, email, SMS, customer service, time-tracking, etc. Employees can become much more productive when you give them a suite of interactive tools to visualize and manage raw data.
In this episode, we will use Airtable to transform our data into a fully-fledged CRM tool.
You should only export the data needed for CRM to Firestore. Keep in mind the free tier is limited to 1,200 records. You have two main options for transferring your data from Firestore to Airtable - manual and automatic.
I wrote a CLI tool that can exports data from Firebase in CSV format called Firestore Migrator. If you want to load an existing dataset to Airtable, this would be the ideal approach.
Airtable provides a interactive API for NodeJS, which makes the backend code a matter of copy-and-paste for basic use cases.
The cloud function code is as simple as it gets. Start by initializing cloud functions and adding your Airtable API key to the environment.
firebase init functions
Then setup a function that will add a record to your base.
Make sure to define a column in Airtable for your data prior to transferring data. The SDK will throw an error if any column is not present.
import * as functions from 'firebase-functions';
Deploy the function and start adding some data to Firestore. You should see the records updated in realtime on the Airtable dashboard.
firebase deploy --only functions
Now that our data is connected to Airtable, it’s time to have some fun with Blocks. You can think of a blocks as mini-apps that you can mix and match to build workflow on top of your data. And there’s a suite of built in blocks that range from content rich reporting, SMS texting with Twilio, data vis, translation, Google maps, video calls, you name it. Let’s try a few…
There are 27 different blocks in Airtable at the time of this article, so we just barly scratched the surface. Overall, it provides an easy and intuitive way to build a project management suite on top of Firebase.