Client Type Overview
Realm Clients
Purpose: Direct access to your own realm
Scope: Single realm only
Authorization: Automatic access to your realm
Best for: Internal tools, custom dashboards, automation
Scope: Single realm only
Authorization: Automatic access to your realm
Best for: Internal tools, custom dashboards, automation
App Clients
Purpose: Multi-realm applications
Scope: Multiple realms with explicit authorization
Authorization: Publish + per-realm authorization
Best for: Third-party integrations, marketplace apps
Scope: Multiple realms with explicit authorization
Authorization: Publish + per-realm authorization
Best for: Third-party integrations, marketplace apps
When to Use Each Type
Use Realm Clients When:
- Building tools for your own community only
- Creating internal dashboards or analytics
- Automating tasks within your realm
- Developing custom member management tools
- You need immediate access without approval processes
Use App Clients When:
- Building apps for multiple communities
- Creating marketplace applications
- Developing SaaS tools for DRIP communities
- Building integrations that other realms can install
- You want to distribute your app publicly
Creating API Clients
Creating a Realm Client
1
Access Developer Portal
Navigate to Admin → Developer in your DRIP dashboard
2
Go to Project API
Click the Project API tab
3
Create Client
Click Create API Client and configure:
- Name: Descriptive name for your integration
- Scopes: Select the permissions you need
4
Save Credentials
Copy and securely store your Client Secret (this is your API key)
Creating an App Client
1
Access Developer Portal
Navigate to Admin → Developer in your DRIP dashboard
2
Go to DRIP Apps
Click the DRIP Apps tab
3
Set up New App
In the Listing section, you can set up your app metadata (name, description, logo)
4
Get App Client
In the App Client section, you can set up your app client credentials
5
Submit App
Once your app is ready, you can publish it to the DRIP Apps marketplace
6
Wait for Approval
DRIP reviews your app for security and compliance
Scope Management
Understanding Scopes
Scopes define what your client can access and modify.For apps: you select the scopes your app needs. Realms/projects grant those scopes when they authorize your app. If you later change your app’s requested scopes, realms must reauthorize for the new scopes to take effect.
Basic Scopes
Advanced Scopes
Scope Selection Best Practices
Principle of Least Privilege
Principle of Least Privilege
Only request scopes you actually need. This improves security and increases approval chances.
Start Small, Expand Later
Start Small, Expand Later
Begin with basic scopes and add more as your app grows.
Authorization Flows
Realm Client Flow
Characteristics:- ✅ Immediate access
- ✅ No approval delays
- ✅ Full permissions within your realm
- ❌ Limited to single realm
- ❌ Can’t be distributed to other realms
App Client Flow
Characteristics:- ✅ Multi-realm capability
- ✅ Can be distributed publicly
- ✅ Scalable business model
- ❌ Requires platform approval
- ❌ Each realm must authorize separately
- ❌ Limited to approved scopes only
Managing Multiple Clients
Client Organization
Environment-Based Configuration
Security Best Practices
API Key Management
Secure Storage
- Store keys in environment variables
- Use secure key management services
- Never commit keys to version control
- Rotate keys regularly
Access Control
- Use least-privilege scopes
- Monitor API key usage
- Set up usage alerts
- Revoke unused keys immediately
Code Examples
Monitoring and Analytics
Usage Tracking
Migration Strategies
From Realm to App Client
If you started with a realm client and want to expand to multiple realms:1
Create App
Submit your app through the DRIP Apps portal
2
Parallel Development
Develop app client integration alongside existing realm client
3
Testing
Test app client with your own realm first
4
Gradual Migration
Migrate features one by one from realm client to app client
5
Deprecation
Once fully migrated, deprecate the realm client