An admin panel for your Firebase app
Firebase Authentication stores your users, but the console is not built for support, analytics or emailing them. Send signups to VibeAdmin from a Cloud Function and manage everything in one place.
How it works with Firebase
Through the API today. A Cloud Function posts each new user to VibeAdmin. A native Firebase connector that backfills existing users is planned and not available yet, so use the bulk endpoint to import them.
- Works today through the REST API, SDK or webhooks
- Bulk import up to 500 users per request
- Native Firebase connector: planned, not available yet
- Your Firebase project stays the source of truth
Set it up
- 1
Create a key
In VibeAdmin create a project and an API key with users.write and events.write scopes.
- 2
Add the Cloud Function
Deploy a function that runs when a Firebase Auth user is created and posts it to the VibeAdmin API.
- 3
Backfill existing users
Export your users with the Admin SDK and send them in batches of 500 to the bulk endpoint.
Code
Cloud Function: sync every new Auth user
import * as functions from "firebase-functions/v1";
export const syncUser = functions.auth.user().onCreate(async (user) => {
await fetch("https://www.easy-admin.solutions/v1/users", {
method: "POST",
headers: { Authorization: `Bearer ${process.env.VIBEADMIN_API_KEY}`, "Content-Type": "application/json" },
body: JSON.stringify({ id: user.uid, email: user.email,
name: user.displayName,
verified: user.emailVerified,
createdAt: user.metadata.creationTime }),
});
});Backfill with the Admin SDK
import { getAuth } from "firebase-admin/auth";
let pageToken: string | undefined;
do {
const page = await getAuth().listUsers(500, pageToken);
await fetch("https://www.easy-admin.solutions/v1/users/bulk", {
method: "POST",
headers: { Authorization: `Bearer ${process.env.VIBEADMIN_API_KEY}`, "Content-Type": "application/json" },
body: JSON.stringify({
users: page.users.map((u) => ({
id: u.uid,
email: u.email,
name: u.displayName,
verified: u.emailVerified,
createdAt: u.metadata.creationTime,
})),
}),
});
pageToken = page.pageToken;
} while (pageToken);Related: API reference, MCP server, pricing.
Give your app the admin it forgot
Free for up to 500 users. Connect Supabase, push users with the API, or paste one prompt into your coding agent.