Complete customization guide for white-labeling your Vaja AI dashboard
As a Vaja reseller, you can completely customize the look and feel of your dashboard to match your brand identity. This guide explains how to rebrand your platform so it appears as your own product.
yourcompany.vaja.aidashboard.yourcompany.comLogin to your dashboard or use the API:
curl -X POST https://yourcompany.vaja.ai/api/auth/login \
-H "Content-Type: application/json" \
-d '{
"email": "admin@yourcompany.com",
"password": "your-password"
}'
Response:
{
"success": true,
"user": { ... },
"token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9..."
}
curl https://yourcompany.vaja.ai/api/v1/reseller/branding \
-H "Authorization: Bearer YOUR_JWT_TOKEN"
Response:
{
"success": true,
"branding": {
"subdomain": "yourcompany",
"custom_domain": null,
"custom_domain_verified": false,
"logo_url": null,
"favicon_url": null,
"primary_color": "#3B82F6",
"secondary_color": "#10B981",
"company_name": "Your Company Name",
"support_email": "support@yourcompany.com",
"support_url": null
}
}
curl -X PUT https://yourcompany.vaja.ai/api/v1/reseller/branding \
-H "Authorization: Bearer YOUR_JWT_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"logo_url": "https://yourcompany.com/logo.png",
"favicon_url": "https://yourcompany.com/favicon.ico",
"primary_color": "#10B981",
"secondary_color": "#3B82F6",
"company_name": "Acme Voice AI",
"support_email": "support@acmevoice.com",
"support_url": "https://support.acmevoice.com"
}'
https://yourcompany.com/assets/logo.pnghttps://yourcompany.com/favicon.ico#10B981)| Brand | Color | Hex Code |
|---|---|---|
| Salesforce Blue | #00A1E0 |
|
| Stripe Purple | #635BFF |
|
| Slack Aubergine | #4A154B |
|
| Twilio Red | #F22F46 |
Color Picker Tools:
"Acme Voice AI")curl -X POST https://yourcompany.vaja.ai/api/v1/reseller/branding/custom-domain \
-H "Authorization: Bearer YOUR_JWT_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"custom_domain": "dashboard.acmevoice.com"
}'
Add a CNAME record in your DNS provider:
Type: CNAME
Name: dashboard
Target: vaja.ai
TTL: 3600 (or Auto)
Common DNS Providers:
Once DNS is configured, contact Vaja support at support@vaja.ai with:
# Check DNS propagation
nslookup dashboard.acmevoice.com
# Test HTTPS connection
curl -I https://dashboard.acmevoice.com/health
# Verify SSL certificate
openssl s_client -connect dashboard.acmevoice.com:443
Visit your dashboard and verify:
Verify branding consistency on:
Solutions:
# Test if logo URL is accessible
curl -I https://yourcompany.com/logo.png
# Should return: HTTP/2 200
# Content-Type: image/png
Ensure your server allows CORS:
Access-Control-Allow-Origin: *
# symbolSolutions:
#RRGGBB (e.g., #10B981)GET /api/v1/reseller/brandingCheck DNS Propagation:
# Using nslookup
nslookup dashboard.acmevoice.com
# Expected output:
# dashboard.acmevoice.com canonical name = vaja.ai
# Online tool
# Visit: https://dnschecker.org/
curl -X PUT https://aiguru.vaja.ai/api/v1/reseller/branding \
-H "Authorization: Bearer YOUR_JWT_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"logo_url": "https://aiguru.pro/assets/logo.png",
"favicon_url": "https://aiguru.pro/favicon.ico",
"primary_color": "#3B82F6",
"secondary_color": "#10B981",
"company_name": "AI Guru",
"support_email": "support@aiguru.pro",
"support_url": "https://aiguru.pro"
}'
Result:
https://aiguru.vaja.ai# 1. Update branding
curl -X PUT https://acmevoice.vaja.ai/api/v1/reseller/branding \
-H "Authorization: Bearer YOUR_JWT_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"logo_url": "https://cdn.acmevoice.com/logo.svg",
"favicon_url": "https://cdn.acmevoice.com/favicon.ico",
"primary_color": "#8B5CF6",
"secondary_color": "#EC4899",
"company_name": "Acme Voice AI",
"support_email": "help@acmevoice.com",
"support_url": "https://support.acmevoice.com"
}'
# 2. Add custom domain
curl -X POST https://acmevoice.vaja.ai/api/v1/reseller/branding/custom-domain \
-H "Authorization: Bearer YOUR_JWT_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"custom_domain": "dashboard.acmevoice.com"
}'
# 3. Configure DNS (in Cloudflare/GoDaddy/etc)
# Type: CNAME
# Name: dashboard
# Target: vaja.ai
# 4. Contact Vaja support for SSL setup
# 5. Access at https://dashboard.acmevoice.com
Result:
Before launching your white-labeled platform:
GET /api/v1/reseller/branding
Authorization: Bearer YOUR_JWT_TOKEN
PUT /api/v1/reseller/branding
Authorization: Bearer YOUR_JWT_TOKEN
Content-Type: application/json
{
"logo_url": "https://yourcompany.com/logo.png",
"favicon_url": "https://yourcompany.com/favicon.ico",
"primary_color": "#10B981",
"secondary_color": "#3B82F6",
"company_name": "Your Company Name",
"support_email": "support@yourcompany.com",
"support_url": "https://support.yourcompany.com"
}
POST /api/v1/reseller/branding/custom-domain
Authorization: Bearer YOUR_JWT_TOKEN
Content-Type: application/json
{
"custom_domain": "dashboard.yourcompany.com"
}
{
"success": true,
"branding": {
"subdomain": "yourcompany",
"custom_domain": "dashboard.yourcompany.com",
"custom_domain_verified": true,
"logo_url": "https://yourcompany.com/logo.png",
"favicon_url": "https://yourcompany.com/favicon.ico",
"primary_color": "#10B981",
"secondary_color": "#3B82F6",
"company_name": "Your Company Name",
"support_email": "support@yourcompany.com",
"support_url": "https://support.yourcompany.com"
}
}
Contact Support:
Test Your Setup:
# Health check
curl https://yourcompany.vaja.ai/health
# Login test
curl -X POST https://yourcompany.vaja.ai/api/auth/login \
-d '{"email":"admin@yourcompany.com","password":"pass"}'
# Branding check
curl https://yourcompany.vaja.ai/api/v1/reseller/branding \
-H "Authorization: Bearer YOUR_TOKEN"