Platform Admin: Clinic Approvals
This guide covers the platform administration workflow for reviewing and approving veterinary clinic applications.
:::caution Restricted Access
Platform admin features are only available to users with the platformAdmin custom claim. This role must be assigned through the Firebase Admin SDK by authorized personnel. It cannot be self-assigned or requested through the platform.
:::
Overview
As a platform admin, you are responsible for:
- Reviewing clinic applications
- Verifying clinic legitimacy
- Approving or rejecting applications
- Maintaining platform quality
Accessing Admin Features
Prerequisites
You must have:
- A valid Putra account
- The
platformAdmin: truecustom claim in Firebase Auth - This claim is set via the admin bootstrap script, never through the UI
Navigation
When you have admin access:
- Sign in to your Putra account
- Your navigation will include Admin section
- Click Clinic Approvals to access the review queue
Workspace Switching
As an admin, you can switch between:
- Client Workspace - Personal pet management
- Admin Workspace - Platform administration
The sidebar badge indicates your current workspace.
The Approval Queue
Viewing Applications
The Clinic Approvals page shows:
- All pending clinic applications
- Application submission date
- Basic clinic information
- Status of each application
Application Statuses
| Status | Meaning |
|---|---|
| Pending | Awaiting initial review |
| Under Review | Currently being evaluated |
| More Info Needed | Awaiting applicant response |
| Approved | Application accepted |
| Rejected | Application denied |
Sorting and Filtering
Filter the queue by:
- Status (Pending, Under Review, etc.)
- Submission date
- Application type
Reviewing an Application
Application Details
Click on any application to view:
Clinic Information
- Clinic name
- Registration number (if provided)
- Address and contact details
- Website (if provided)
Applicant Information
- Name and email of person who applied
- Account creation date
- Profile details
Services and Hours
- Services listed
- Operating hours declared
- Emergency availability
Supporting Information
- Professional credentials mentioned
- Any additional notes from applicant
Review Checklist
Consider these factors when reviewing:
| Factor | What to Check |
|---|---|
| Business Name | Is it a legitimate veterinary business name? |
| Address | Is this a real, verifiable location? |
| Contact Info | Can the clinic be contacted? |
| Services | Are services appropriate for a vet clinic? |
| Credentials | Any professional registration mentioned? |
| Completeness | Is the application reasonably complete? |
Verification Steps
Depending on your verification requirements:
-
Basic Verification
- Application is complete
- Information appears reasonable
- No obvious red flags
-
Standard Verification
- Business exists at stated address
- Contact information works
- Online presence matches claims
-
Enhanced Verification
- Professional registration confirmed
- Business license verified
- Direct contact with applicant
Taking Action
Approving an Application
To approve a clinic:
- Review the application thoroughly
- Click Approve
- Optionally add approval notes
- Confirm the action
What happens upon approval:
- Clinic status changes to Approved
- Applicant receives notification email
- Clinic gains full access to Clinic workspace
- Public profile becomes available
Rejecting an Application
To reject a clinic:
- Review the application
- Click Reject
- Required: Provide a rejection reason
- Confirm the action
Rejection reasons might include:
- Incomplete information
- Unable to verify business
- Not a legitimate veterinary practice
- Duplicate application
- Violation of terms
What happens upon rejection:
- Clinic status changes to Rejected
- Applicant receives notification with reason
- They may reapply with corrected information
Requesting More Information
If you need clarification:
- Click Request Info
- Specify what additional information is needed
- Applicant receives notification
- Status changes to More Info Needed
The applicant can then:
- Update their application
- Resubmit for review
Best Practices
Timely Reviews
- Process applications promptly
- Set expectations for review timeframes
- Prioritize oldest pending applications
Consistent Standards
- Apply the same criteria to all applications
- Document any unusual decisions
- Maintain fairness and transparency
Clear Communication
- Provide specific rejection reasons
- Be helpful in requesting more info
- Maintain professional tone
Security Awareness
Watch for:
- Suspicious patterns
- Duplicate submissions
- False information
- Impersonation attempts
Application History
Viewing Past Applications
Access history to see:
- Previously approved clinics
- Rejected applications
- Timeline of decisions
Audit Trail
Each application maintains:
- All status changes
- Who made decisions
- When decisions were made
- Notes and reasons
Handling Special Cases
Reapplications
When someone reapplies after rejection:
- Review the new application fresh
- Check if previous issues were addressed
- Reference previous rejection reason
Appeals
If an applicant disputes a rejection:
- Review the application again
- Consider any new information
- Maintain documented reasoning
- Escalate if necessary
Clinic Issues Post-Approval
If issues arise with an approved clinic:
- This is handled through separate processes
- Contact support for guidance
- Document concerns
Technical Notes
The platformAdmin Claim
The platformAdmin custom claim:
- Is set in Firebase Auth
- Must be set via Admin SDK (never client-side)
- Is checked by Firestore security rules
- Grants access to admin features
Setting the Claim
For authorized personnel only:
# From the repository root
npm run bootstrap:platform-admin -- <firebase-auth-uid>
This runs the scripts/bootstrap-platform-admin.mjs script with proper credentials.
Verifying the Claim
To verify a user has admin access:
GCLOUD_PROJECT=putra-al npm run verify:live-iam -- <firebase-auth-uid>
Support
Admin Issues
If you encounter issues with admin functions:
- Check your Firebase Auth claims
- Verify your account has proper access
- Contact the technical team
Application Questions
For questions about specific applications:
- Document your concerns
- Consult with other admins if available
- Escalate unusual cases
Related Documentation
- Clinic Getting Started - What applicants see
- Profile Settings - Post-approval clinic setup