Commit graph

42 commits

Author SHA1 Message Date
ryan-crabbe-berri
7edf3a9cb5
style(ui): run prettier --write across the dashboard (#29622)
Formatting-only pass; no logic changes. Brings the UI into compliance
with .prettierrc so the new format-check CI job passes
2026-06-04 11:37:54 -07:00
mateo-berri
be4f46683a fix(scim): cascade FK cleanup on user delete and surface block status in UI
SCIM DELETE /Users/{id} previously called litellm_usertable.delete without
clearing rows that FK back to the user, so Postgres rejected the delete with
LiteLLM_InvitationLink_user_id_fkey and the SCIM caller saw a 500. Add a
helper to drop invitation_link, organization_membership, and team_membership
rows before the user delete (mirrors /user/delete in internal_user_endpoints).

Also add a Status column to the Virtual Keys and Internal Users tables so
admins can see at a glance which keys are blocked and which users SCIM has
deactivated. SCIM-blocked keys carry a tooltip explaining the origin.

Pin the dashboard's Node version to 20 via .nvmrc to match CI.
2026-05-01 20:20:39 -07:00
Ryan Crabbe
1d7cff22cb feat(ui): add click-to-copy icon on User ID in internal users table
Add a CopyOutlined icon next to the truncated User ID that copies
the full UUID to clipboard on click. Follows the existing pattern
used in model_hub_table_columns.tsx.
2026-03-19 08:57:42 -07:00
yuneng-jiang
83e6096dae [Feature] UI - Internal Users: Add/remove team membership from user info page
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-14 09:37:44 -07:00
Cursor Agent
7737e9c313 feat(ui): migrate user_dashboard.tsx and user_info_view.tsx to /v2/user/info
- user_dashboard.tsx: Replace userInfoCall with userGetInfoV2 for spend data,
  remove keys/teams logic (keys come from props/useKeys hook, teams from fetchTeams)
- user_info_view.tsx: Replace userInfoCall with userGetInfoV2, flatten data
  structure from nested {user_info: {...}} to flat response, fetch team details
  separately using teamInfoCall, remove keys display (Virtual Keys section)
- Update user_dashboard.test.tsx and user_info_view.test.tsx mocks

Co-authored-by: yuneng-jiang <yuneng-jiang@users.noreply.github.com>
2026-03-12 07:50:36 +00:00
yuneng-jiang
f81aefd48a Team Settings Model Select 2026-01-15 21:57:11 -08:00
yuneng-jiang
da902c5c55 Migrate User and Team filters to use reusable components 2026-01-12 21:04:16 -08:00
yuneng-jiang
71cf7b9dd8 Delete User Modal on Info Page 2025-12-06 16:59:05 -08:00
yuneng-jiang
afedc9aac3 Fixing test 2025-12-02 17:34:53 -08:00
yuneng-jiang
451690bf11
Merge pull request #17321 from BerriAI/litellm_ui_user_alias_table
[Feature] Add User Alias Column to Internal User Table
2025-12-02 17:26:49 -08:00
yuneng-jiang
21baa354cc Standardize API Key vs Virtual Key in UI 2025-12-01 13:13:39 -08:00
yuneng-jiang
69a6c25a5f Add user alias to user table 2025-12-01 12:28:53 -08:00
yuneng-jiang
87b4e9ebad User table loading state 2025-11-26 16:24:29 -08:00
yuneng-jiang
3da9974a87 Tests 2025-11-25 15:54:55 -08:00
yuneng-jiang
db587926a4 Sorting changes, pending tests and loading state 2025-11-25 14:46:46 -08:00
yuneng-jiang
f1c5ed19aa
Delete user and mcp server modal and mcp table tooltips (#16751) 2025-11-17 19:45:24 -08:00
yuneng-jiang
473886d35a
user_alias in read and update path (#16669) 2025-11-14 19:34:28 -08:00
yuneng-jiang
7e22f4abc6
Normalize table action columns (#16657) 2025-11-14 14:11:01 -08:00
yuneng-jiang
01065a1284
Fixed inconsistent button sizes and variants (#16600) 2025-11-13 22:02:07 -08:00
Achintya Rajan
5fca481ebb removing unused imports 2025-10-10 10:24:57 -07:00
=
5197268a58 added and ran prettier autoformatter 2025-10-04 18:19:48 -07:00
Krish Dholakia
63a2a47ce0
Merge pull request #14003 from BerriAI/teams-on-users-page
Team name badge added on the User Details
2025-09-04 21:03:02 -07:00
tanjiro
80970951c5 fix ui for expandable badge 2025-09-02 19:36:06 +09:00
tanjiro
51f44c0419 limit to 20 teams and make it expandable after that 2025-09-02 19:26:09 +09:00
tanjiro
eed2358335 move filter inside user table 2025-08-31 14:03:32 +09:00
tanjiro
948b05da86 added badge 2025-08-27 16:33:19 +09:00
tanjiro
f7a3af5cde
new notifications (#13813) 2025-08-20 14:32:04 -07:00
tanjiro
0e6cf7fb9d edit budget_duration.
- make sure edit view and info view have similar setting names
2025-08-15 03:25:29 +09:00
tanjiro
be109c2180 put the error toast on the ui 2025-08-13 23:05:11 +09:00
tanjiro
88e4d302a2
Fix internal users table overflow (#12736)
* modify column name

* fix overflow

* remove height
2025-08-12 17:23:23 -07:00
Krish Dholakia
d72b3389a1
Bulk Edit Users on UI (#12763)
* feat(bulk_edit_user.tsx): initial working ui for editing users in bulk on the ui

easier to give access / assign to a default team

* feat(team_endpoints-+-bulk_edit_users.tsx): add bulk adding users to teams

make it easier to add existing users to a default team

* fix(bulk_edit_user.tsx): fix ui linting error

* fix: fix linting error
2025-07-19 11:04:23 -07:00
tanjiro
720b94fd2b
Add Copy-on-Click for IDs (#12615)
* added the mcp_connect copy button to key_info_view

* user id copy button

* copy button on session view

* model id copy

* more copy buttons

* icon size
2025-07-15 11:25:57 -07:00
tanjiro
2faba5f215
Consistent layout for Create and Back buttons on all the pages (#12542)
* create new model button

* cleanup + prettier

* prettier

* create new model button added for model and model info+ back button added

* prettier

* team and team info has create team button + back to teams button added in team_info

* prettier

* better prettier

* always show create new organization button and add back to organizations button

* minor, prettier

* prettier

* remove user header and prettier

* move top buttons to the left

* prettier

* back to all logs button style fixed

* prettier

* modify button text

* create new guardrail button style

* prettier

* button modifications

* guardrails page done

* prettier

* add new guardrail text button + prettier on mcp

* button related changes

* prettier

* mcp servers page done
2025-07-12 08:18:02 -07:00
tanjiro
8bf94b9090
Comma separated spend and budget (#12317)
* all_keys_table, key_info_view, organizations

* teams

* the whole usage page

* teams page

* users table

* user info

* more commas

* some more commas
2025-07-04 11:14:39 -07:00
Krish Dholakia
8579332f44
Add model access groups on UI (#11719)
* fix(anthropic/chat/transformation.py): append prefix to start of assistant response, if set

ensures assistant response contains complete response

* fix(anthropic/chat/transformation.py): add flag to allow user to opt out of enabling prefix in prompt

* fix(anthropic/chat/transformation.py): working e2e support for prefix prompt in assistant response

* feat(networking.tsx): always include model access groups on UI

show admin created access groups when giving key/user/team model permissions

* feat(add_model_tab.tsx): initial ui component for adding to an existing model access group

allows user to add model to an access group (simplify giving users/keys/teams model access)

* feat(proxy_server.py): add 'only_model_access_groups' flag support to `/v1/models`

simplifies listing available access groups on UI

* test: add e2e test for new only_model_access_groups param

* feat(add_model_tab.tsx): allow adding+viewing model access groups on models tab

make feature functional on UI

* feat(view_users.tsx): route edit user to user info page

more detailed user edit

* feat(columns.tsx): route edit user to user info page

more detailed user edit

* fix(columns.tsx): fix linting error

* build(ui/): fix linting errors
2025-06-13 21:20:25 -07:00
tanjiro
c002e4cd4e
admin can reset password for user (#11618) 2025-06-11 08:55:36 -07:00
tanjiro
0cde73ffb7
Spend rounded to 4 for Organizations and Users page (#11023)
* spend rounded to 4

* fixed for organization and users table
2025-05-21 20:41:54 -07:00
Krish Dholakia
ab68af4ff5
Litellm multi admin fixes (#10259)
* fix(create_user_button.tsx): do not set 'no-default-models' when user is a proxy admin

* fix(user_info_view.tsx): show all user personal models

* feat(user_info_view.tsx): allow giving users more personal models

* feat(user_edit_view.tsx): allow proxy admin to edit user role, available models, etc.
2025-04-23 22:02:02 -07:00
Krish Dholakia
f670ebeb2f
Users page - new user info pane (#10213)
* feat(user_info_view.tsx): be able to click in and see all teams user is part of

makes it easy to see which teams a user belongs to

* test(ui/): add unit testing for user info view

* fix(user_info_view.tsx): fix linting errors

* fix(login.ts): fix login

* fix: fix linting error
2025-04-22 21:55:47 -07:00
Krish Dholakia
5f98d4d7de
UI - Users page - Enable global sorting (allows finding users with highest spend) (#10211)
* fix(view_users.tsx): add time tracking logic to debounce search - prevent new queries from being overwritten by previous ones

* fix(internal_user_endpoints.py): add sort functionality to user list endpoint

* feat(internal_user_endpoints.py): support sort by on `/user/list`

* fix(view_users.tsx): enable global sorting

allows finding user with highest spend

* feat(view_users.tsx): support filtering by sso user id

* test(search_users.spec.ts): add tests to ensure filtering works

* test: add more unit testing
2025-04-22 19:59:53 -07:00
Krish Dholakia
887c66c6b7
Show 'user_email' on key table on UI (#8887)
* refactor(internal_user_endpoints.py): refactor `/user/list` to accept 'user_ids' and use prisma for db calls

enables bulk search from UI

* fix(internal_user_endpoints.py): fix linting errors

* fix(all_keys_table.tsx): show user email on create key table

make it easier for admin to know which key is associated to which user

* docs(internal_user_endpoints.py): improve docstring

* fix: sync schema with main

* fix(columns.tsx): display SSO ID on Internal User Table

make it easy to identify what the SSO ID for a user is

* fix(columns.tsx): add tooltip to header

help user understand what SSO ID means

* style: add more tooltips in the management flows

make it easier to understand what you're seeing

* style(all_keys_table.tsx): replace 'Not Set' with '-'

reduces words on table

* fix(internal_user_endpoints.py): fix user ids check

* test: fix test

* fix(internal_user_endpoints.py): maintain returning key count in `/user/list`
2025-02-27 21:56:14 -08:00
Ishaan Jaff
f8e43296fb
(UI) Fixes for managing Internal Users (#8786)
* allow bulk adding internal users

* allow sorting users by created at

* cleanup

* clean up user table

* show total num users

* show per user error when bulk adding users

* fix - don't allow creating duplicate internal users in DB

* ui flow fix for bulk adding users

* allow adding user in multiple teams with models

* correctly extract info

* working invitation link

* fix fill in table after bulk add

* fix the results from creating new users in bulkd

* bulk invite users

* fix view user flow

* fix ui type errors

* fix type errors

* fix type errors
2025-02-24 23:40:13 -08:00