# Add Team

> Create a new team on a live LiteLLM proxy. Asks for team name, budget, and allowed models, then calls POST /team/new and shows the result. Use when the user wants to create a new team, set up team budgets, or configure model access for a team on the proxy.

- Skill: `berriai/add-team` (Agent Skill)
- Install (CLI): `npx skillmds@latest add berriai/add-team`
- Raw SKILL.md: https://api.skillmd.com/api/skills/berriai/add-team/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: AI & ML
- License: MIT
- Author: BerriAI (https://skillmd.com/u/berriai)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/berriai/add-team

---


# Add Team

Create a new team on a live LiteLLM proxy.

## Setup

Ask for these if not already known:
```
LITELLM_BASE_URL  — e.g. https://my-proxy.example.com
LITELLM_API_KEY   — proxy admin key
```

API reference: https://litellm.vercel.app/docs/proxy/team_based_routing

## Ask the user

1. **Team name** (required, becomes `team_alias`)
2. **Max budget** (optional, e.g. `100.00`)
3. **Allowed models** (optional, e.g. `gpt-4o, gpt-4o-mini`) — leave empty to allow all
4. **TPM / RPM limits** (optional)

## Run

```bash
BASE="$LITELLM_BASE_URL"
KEY="$LITELLM_API_KEY"

curl -s -X POST "$BASE/team/new" \
  -H "Authorization: Bearer $KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "team_alias": "<name>",
    "max_budget": <budget_or_null>,
    "models": [<models_or_empty>],
    "tpm_limit": <tpm_or_null>,
    "rpm_limit": <rpm_or_null>
  }'
```

## Verify

Confirm the team was created:
```bash
curl -s "$BASE/team/info?team_id=<team_id>" \
  -H "Authorization: Bearer $KEY"
```

## Output

Show the user:
- `team_id` — they'll need this to generate keys for the team
- `team_alias`, `max_budget`, `models`

On error:
- **401** — check that `LITELLM_API_KEY` is a valid admin key
- **400** — check required fields (team_alias is required)
- Other errors — show `detail` and the likely fix

