Prerequisites
- Base URL:
http://localhost:8056(default port from.env) - Admin Token:
ADMIN_API_TOKEN=token(default, check your.envfile)
/admin/ prefix with X-Admin-API-Key header.
1. Create User
Create a new user or return existing user if email already exists.Using curl
Using Python
email(required): User’s email addressname(optional): User’s display namemax_concurrent_bots(optional): Maximum concurrent bots (default: 0)
2. Create API Token
Generate an API token for a user to access the API.Using curl
Using Python
Complete Workflow Example
Using curl
Using Python
Other User Management Operations
Get User by Email
curl:Get User by ID
curl:List All Users
curl:Update User
Update user settings such as concurrent bot limits. curl:name: User’s display namemax_concurrent_bots: Maximum concurrent botsimage_url: User’s profile image URLdata: Custom JSONB data (advanced)
Revoke Token
curl:Analytics & Monitoring
Meeting & User Stats
Paginated list of all meetings with embedded user details.{ "total": 218, "items": [...] } where each item includes full meeting data and the associated user.
User Analytics
List all users (for dashboard tables).Meeting Analytics
List all meetings (for dashboard tables).Meeting Telematics
Detailed telemetry for a specific meeting including sessions, transcription stats, and performance metrics.{ "meeting": {...}, "sessions": [...], "transcription_stats": {...}, "performance_metrics": {...} }.
User Details
Comprehensive user analytics including meeting stats and usage patterns.| Parameter | Type | Default | Description |
|---|---|---|---|
include_meetings | bool | true | Include meeting history |
include_tokens | bool | false | Include API token list |
{ "user": {...}, "meeting_stats": {...}, "usage_patterns": {...}, "api_tokens": [...] }.
Webhook Configuration (User-facing)
Admin can also set webhooks for users viaPUT /user/webhook on the user API (port 8056) with the user’s API key. See Settings API.
Token Security Best Practices
- Secure Distribution: Share tokens via secure channels
- Rotate Regularly: For production deployments, rotate tokens periodically
- Revoke Compromised Tokens: Immediately delete tokens if compromised
- Monitor Usage: Track token usage through meeting logs
Troubleshooting
Common Issues
“Invalid or missing admin token”- Check your
.envfile forADMIN_API_TOKEN - Ensure you’re using
X-Admin-API-Keyheader (notX-API-Key)
- Verify user was created successfully
- Check user ID/email spelling
- Use
GET /admin/usersto list all users
- Ensure services are running:
make ps - Check API Gateway is healthy:
curl http://localhost:8056/
- Verify token was copied correctly
- Ensure using
X-API-Keyheader (notX-Admin-API-Key) - Check token wasn’t deleted
Reference Links
- API Gateway Docs: http://localhost:8056/docs
- Deployment Guide: deployment
- Notebooks:
nbs/manage_users.ipynb,nbs/0_basic_test.ipynb
Getting Help
- Discord: https://discord.gg/Ga9duGkVz9
- GitHub Issues: https://github.com/Vexa-ai/vexa/issues
Note: For complete API documentation including bot management and transcription endpoints, see http://localhost:8056/docs