Team Management
Organize users into teams and groups with role-based access control
Team Management
SoxAI organizes users into teams and groups. Teams can have multiple groups, each with its own quota policy. This lets you manage access and usage for large organizations.
Concepts
| Concept | Description |
|---|---|
| Tenant | Top-level organizational unit. Contains all users and teams |
| Team | A collection of users within a tenant. Has one owner |
| Group | A subset of team members sharing a quota policy |
| Role | owner, admin, or member within a team |
Creating a Team
Console: Teams → Create Team
| Field | Description |
|---|---|
| Name | Display name for the team |
| Description | Optional description |
The user who creates the team becomes the owner.
Inviting Members
Console: Team → Members → Invite Member
Enter the user's email address and select their role:
| Role | Permissions |
|---|---|
admin | Manage members, groups, quota policies |
member | Use API, view own usage |
Members who are not yet registered will receive an email invitation.
Groups
Groups let you apply different quota policies to subsets of your team. For example:
- Engineers group — higher token limits, access to all models
- Testers group — restricted to cheap models, low hourly limits
- External API group — minimal limits, model allowlist enforced
Creating a Group
Console: Team → Groups → Create Group
Assign a quota policy to the group (or leave empty to inherit the tenant default).
Assigning Members to Groups
Console: Team → Members → [Member] → Edit → Group
A member can belong to at most one group per team.
Quota Priority
When a request is made, SoxAI determines the applicable quota in this order:
- Check for a user-level quota override for this user in this team
- If no override, use the quota policy of the user's group
- If the user is not in a group, use the team's default policy
- If no team policy, use the tenant default policy
- If no tenant default, no limit applies
Usage Reporting
Team admins can view usage broken down by member:
Console: Team → Usage → select date range
Export usage data as CSV for billing purposes.
API Access
Team management operations are available via the Admin API for programmatic management:
# List team members
curl https://api.soxai.io/api/teams/{team_id}/members \
-H "Authorization: Bearer $ADMIN_TOKEN"
# Add member to group
curl -X PUT https://api.soxai.io/api/teams/{team_id}/members/{user_id} \
-H "Authorization: Bearer $ADMIN_TOKEN" \
-H "Content-Type: application/json" \
-d '{"group_id": 42}'