Commit graph

254 commits

Author SHA1 Message Date
yuneng-jiang
271877ffb5
Merge pull request #20623 from BerriAI/litellm_user_id_fix
[Fix] /key/list user_id Empty String Edge Case
2026-02-06 18:06:59 -08:00
yuneng-jiang
4d1b5d80ae fixing user_id 2026-02-06 17:55:45 -08:00
michelligabriele
f4a0b80a25
fix(sso): extract user roles from JWT access token for Keycloak compatibility (#20591)
Keycloak (and similar OIDC providers) include role claims in the JWT
access token but not in the UserInfo endpoint response. Previously,
roles were only extracted from UserInfo, causing all SSO users to
default to internal_user_view_only regardless of their actual role.

Changes:
- Extract user roles from JWT access token in process_sso_jwt_access_token()
  when UserInfo doesn't provide them (tries role_mappings first, then
  GENERIC_USER_ROLE_ATTRIBUTE)
- Handle list-type role values in get_litellm_user_role() since Keycloak
  returns roles as arrays (e.g. ["proxy_admin"] instead of "proxy_admin")
- Add 9 new unit tests covering role extraction and list handling
- Update 3 existing tests for new JWT decode behavior

Closes #20407
2026-02-06 16:05:51 -08:00
yuneng-jiang
a17efa1c8e Add soft_budget to team table and create update endpoints 2026-02-05 14:43:48 -08:00
Sameer Kankute
a86e501632
Merge pull request #20407 from BerriAI/litellm_key_mcp_permissions
Add Key info endpoint object permission data
2026-02-04 17:56:05 +05:30
Sameer Kankute
fc873d8867 Fix mypy issues 2026-02-04 14:40:08 +05:30
Sameer Kankute
42561729ee Add Key info endpoint object permission data 2026-02-04 14:21:19 +05:30
yuneng-jiang
dc07a6922f
Merge pull request #20371 from BerriAI/litellm_config_search_tools
[Feature] Include Config Defined Search Tools in /search_tools/list
2026-02-03 20:00:21 -08:00
yuneng-jiang
cf256c742f allow max_budget reset 2026-02-03 16:32:21 -08:00
yuneng-jiang
3e3b21e6c3 masking sensitive values 2026-02-03 16:09:37 -08:00
yuneng-jiang
23d9a89793 search tools list includes config defined search tools 2026-02-03 15:57:13 -08:00
yuneng-jiang
edfe2394b9 reset_spend endpoint 2026-02-02 15:52:30 -08:00
shin-bot-litellm
31241416d4
feat: add base /scim/v2 endpoint for SCIM resource discovery (#20301)
Add the following SCIM v2 discovery endpoints per RFC 7643/7644:

- GET /scim/v2 - Base resource discovery (ListResponse of ResourceTypes)
- GET /scim/v2/ResourceTypes - List all supported resource types
- GET /scim/v2/ResourceTypes/{id} - Get a specific resource type (User/Group)
- GET /scim/v2/Schemas - List all supported schemas
- GET /scim/v2/Schemas/{uri} - Get a specific schema by URI

These endpoints are required by identity providers (Okta, Azure AD, etc.)
for SCIM resource discovery. Previously, GET /scim/v2 returned 404.

Also adds SCIMResourceType, SCIMSchema, and SCIMSchemaAttribute Pydantic
models to the SCIM types module.

Fixes #20295
2026-02-02 14:27:00 -08:00
yuneng-jiang
1f51f067eb Merge remote-tracking branch 'origin' into litellm_sso_map_teams 2026-02-02 12:40:12 -08:00
Ishaan Jaffer
38f5ae8f05 test_budget_reset_and_expires_at_first_of_month 2026-01-31 12:36:53 -08:00
yuneng-jiang
395ccac651 team mapping 2026-01-30 21:06:03 -08:00
yuneng-jiang
1411a227aa bulk update keys endpoint 2026-01-27 13:58:32 -08:00
yuneng-jiang
45954155d7
Merge pull request #19799 from BerriAI/litellm_sso_email_casing
[Fix] SSO Email Case Sensitivity
2026-01-27 09:52:03 -08:00
yuneng-jiang
50612715a5
Merge pull request #19814 from BerriAI/litellm_team_member_add_fix
[Fix] /team/member_add User Email and ID Verifications
2026-01-27 09:49:01 -08:00
yuneng-jiang
b10f71d583 fixing breaking change: just user_id provided should upsert still 2026-01-26 18:10:51 -08:00
yuneng-jiang
f879b8b1cb fixing team member add 2026-01-26 14:35:35 -08:00
yuneng-jiang
4ee00cfda5 fix sso email case sensitivity 2026-01-26 10:33:57 -08:00
yogeshwaran10
228aff9b9f Fix user max budget reset to unlimited
- Added a Pydantic validator to convert empty string inputs for max_budget to None, preventing float parsing errors from the frontend.
- Modified the internal user update logic to explicitly allow max_budget to be None, ensuring the value isn't filtered out and can be reset to unlimited in the database.
- Added unit tests for validation and logic.

 Closes #19781
2026-01-26 23:30:36 +05:30
yuneng-jiang
5e395db1dc
Merge pull request #19604 from BerriAI/litellm_team_update_org
[Fix] Team Update with Organization having All Proxy Models
2026-01-24 09:09:55 -08:00
xqe2011
ca8c2c3938
fix #19620: SSO user roles are not updated for existing users (#19621)
* Fix: SSO user roles are not updated for existing users
Fixes #19620

* Refactor: Remove redundant user_info retrieval in SSOAuthenticationHandler

* Test: add new tests for user creation and updates in get_user_info_from_db
2026-01-23 09:05:29 -08:00
yuneng-jiang
f78fc4e0fe Fix org all proxy model case 2026-01-22 15:32:10 -08:00
yuneng-jiang
c6b157832b
Merge pull request #19296 from BerriAI/litellm_esca_reissue
[Reissue: Fix] /user/new Privilege Escalation
2026-01-21 16:46:34 -08:00
Yuta Saito
05d9fb6fd6 feat: SEP-986 2026-01-20 07:24:39 +09:00
yuneng-jiang
aad92c0b25 Merge pull request #19116 from BerriAI/litellm_org_admin_escalte
[Fix] /user/new Privilege Escalation
2026-01-17 16:32:04 -08:00
yuneng-jiang
de84b2edce Fixing tests and adding proper returns 2026-01-16 19:24:51 -08:00
yuneng-jiang
476258b3f8 Linting 2026-01-16 17:20:01 -08:00
yuneng-jiang
e9c806797d adding tests 2026-01-16 17:11:13 -08:00
yuneng-jiang
96493e3936 Add status to /list in keys and teams 2026-01-16 17:03:09 -08:00
yuneng-jiang
809b4cb310
Revert "Revert "[Feature] Deleted Keys and Deleted Teams Table"" 2026-01-16 14:25:23 -08:00
YutaSaito
034e3a6d44
Revert "[Feature] Deleted Keys and Deleted Teams Table" 2026-01-17 06:46:41 +09:00
yuneng-jiang
2394e722d6
Merge branch 'main' into litellm_deleted_keys_team 2026-01-16 13:27:16 -08:00
YutaSaito
237ba2203e
Revert "[Fix] /user/new Privilege Escalation" 2026-01-17 05:57:07 +09:00
yuneng-jiang
33ff58b70a Merge remote-tracking branch 'origin' into litellm_deleted_keys_team 2026-01-16 09:55:52 -08:00
yuneng-jiang
e3d1e0345c only show own internal user usage 2026-01-16 09:38:34 -08:00
YutaSaito
bbf9a9e6e6
Revert "[Fix] /team/daily/activity Show Internal Users Their Spend Only" 2026-01-16 11:27:59 +09:00
yuneng-jiang
5ff768e5e0 Merge remote-tracking branch 'origin' into litellm_deleted_keys_team 2026-01-15 15:55:18 -08:00
yuneng-jiang
30859d763e Fix user escalation 2026-01-14 15:13:25 -08:00
yuneng-jiang
9c2f380a99 only show own internal user usage 2026-01-13 17:01:51 -08:00
yuneng-jiang
c05190f5b1 Merge remote-tracking branch 'origin' into litellm_hakhundov_contribution 2026-01-13 16:27:48 -08:00
Ishaan Jaff
a1bba8c99b
[Feat] MSFT SSO - allow overriding env var attribute names (#18998)
* add MSFT SSO constants

* fix MSFT SSO env vars

* test_microsoft_sso_handler_openid_from_response_with_custom_attributes
2026-01-12 18:56:35 -08:00
Ishaan Jaff
21d611554b
[Fix] MSFT SSO - allow setting custom MSFT Base URLs (#18977)
* fix TestCustomMicrosoftSSO

* init CustomMicrosoftSSO

* use CustomMicrosoftSSO

* docs fix

* docs fix
2026-01-12 18:26:53 -08:00
yuneng-jiang
a0a8412a7c Merge remote-tracking branch 'origin' into litellm_hakhundov_contribution 2026-01-12 15:58:12 -08:00
yuneng-jiang
2e6fe80f90 optional query params for org list 2026-01-10 14:44:28 -08:00
yuneng-jiang
dfb298792c New endpoint for router fields + react query 2026-01-09 16:49:22 -08:00
yuneng-jiang
6022d37eef patching with feature flag 2026-01-09 15:07:53 -08:00