@homeflare/distilled-litellm 0.2.0 → 0.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (390) hide show
  1. package/README.md +41 -12
  2. package/dist/services/a2a.js +1 -1
  3. package/dist/services/a2a_registration.js +1 -1
  4. package/dist/services/access_groups.d.ts +18 -0
  5. package/dist/services/access_groups.d.ts.map +1 -1
  6. package/dist/services/access_groups.js +15 -1
  7. package/dist/services/access_groups.js.map +1 -1
  8. package/dist/services/adaptive_router.js +1 -1
  9. package/dist/services/agents.d.ts +10 -0
  10. package/dist/services/agents.d.ts.map +1 -1
  11. package/dist/services/agents.js +10 -1
  12. package/dist/services/agents.js.map +1 -1
  13. package/dist/services/alerting.js +1 -1
  14. package/dist/services/anthropic_passthrough.js +1 -1
  15. package/dist/services/anthropic_skills.d.ts +7 -1
  16. package/dist/services/anthropic_skills.d.ts.map +1 -1
  17. package/dist/services/anthropic_skills.js +6 -2
  18. package/dist/services/anthropic_skills.js.map +1 -1
  19. package/dist/services/assistants.js +1 -1
  20. package/dist/services/audio.js +1 -1
  21. package/dist/services/audit_logging.d.ts +2 -0
  22. package/dist/services/audit_logging.d.ts.map +1 -1
  23. package/dist/services/audit_logging.js +2 -1
  24. package/dist/services/audit_logging.js.map +1 -1
  25. package/dist/services/auto_router.d.ts +162 -62
  26. package/dist/services/auto_router.d.ts.map +1 -1
  27. package/dist/services/auto_router.js +92 -31
  28. package/dist/services/auto_router.js.map +1 -1
  29. package/dist/services/batch.js +1 -1
  30. package/dist/services/beta_agents.js +1 -1
  31. package/dist/services/beta_mcp.js +1 -1
  32. package/dist/services/budget_management.d.ts +8 -3
  33. package/dist/services/budget_management.d.ts.map +1 -1
  34. package/dist/services/budget_management.js +7 -4
  35. package/dist/services/budget_management.js.map +1 -1
  36. package/dist/services/budget_spend_tracking.d.ts +24 -5
  37. package/dist/services/budget_spend_tracking.d.ts.map +1 -1
  38. package/dist/services/budget_spend_tracking.js +17 -4
  39. package/dist/services/budget_spend_tracking.js.map +1 -1
  40. package/dist/services/cache_settings.js +1 -1
  41. package/dist/services/caching.js +1 -1
  42. package/dist/services/chat_completions.js +1 -1
  43. package/dist/services/claude_code_marketplace.d.ts +11 -10
  44. package/dist/services/claude_code_marketplace.d.ts.map +1 -1
  45. package/dist/services/claude_code_marketplace.js +8 -6
  46. package/dist/services/claude_code_marketplace.js.map +1 -1
  47. package/dist/services/cloudzero.js +1 -1
  48. package/dist/services/completions.js +1 -1
  49. package/dist/services/compliance.js +1 -1
  50. package/dist/services/config_overrides.d.ts +5 -1
  51. package/dist/services/config_overrides.d.ts.map +1 -1
  52. package/dist/services/config_overrides.js +3 -1
  53. package/dist/services/config_overrides.js.map +1 -1
  54. package/dist/services/config_yaml.d.ts +120 -6
  55. package/dist/services/config_yaml.d.ts.map +1 -1
  56. package/dist/services/config_yaml.js +67 -1
  57. package/dist/services/config_yaml.js.map +1 -1
  58. package/dist/services/containers.d.ts +8 -2
  59. package/dist/services/containers.d.ts.map +1 -1
  60. package/dist/services/containers.js +13 -5
  61. package/dist/services/containers.js.map +1 -1
  62. package/dist/services/coordination_redis_settings.js +1 -1
  63. package/dist/services/cost_tracking.d.ts +91 -1
  64. package/dist/services/cost_tracking.d.ts.map +1 -1
  65. package/dist/services/cost_tracking.js +82 -2
  66. package/dist/services/cost_tracking.js.map +1 -1
  67. package/dist/services/credential_management.d.ts +2 -1
  68. package/dist/services/credential_management.d.ts.map +1 -1
  69. package/dist/services/credential_management.js +3 -2
  70. package/dist/services/credential_management.js.map +1 -1
  71. package/dist/services/customer_management.d.ts +25 -2
  72. package/dist/services/customer_management.d.ts.map +1 -1
  73. package/dist/services/customer_management.js +22 -3
  74. package/dist/services/customer_management.js.map +1 -1
  75. package/dist/services/email_management.js +1 -1
  76. package/dist/services/embeddings.js +1 -1
  77. package/dist/services/evals.js +1 -1
  78. package/dist/services/experimental.js +1 -1
  79. package/dist/services/fallback_management.js +1 -1
  80. package/dist/services/files.js +1 -1
  81. package/dist/services/fine_tuning.js +1 -1
  82. package/dist/services/gemini_agents.js +1 -1
  83. package/dist/services/google_genai_endpoints.js +1 -1
  84. package/dist/services/guardrails.d.ts +80 -7
  85. package/dist/services/guardrails.d.ts.map +1 -1
  86. package/dist/services/guardrails.js +37 -1
  87. package/dist/services/guardrails.js.map +1 -1
  88. package/dist/services/health.d.ts +2 -2
  89. package/dist/services/health.d.ts.map +1 -1
  90. package/dist/services/health.js +2 -2
  91. package/dist/services/health.js.map +1 -1
  92. package/dist/services/images.js +1 -1
  93. package/dist/services/index.d.ts +1 -15
  94. package/dist/services/index.d.ts.map +1 -1
  95. package/dist/services/index.js +1 -15
  96. package/dist/services/index.js.map +1 -1
  97. package/dist/services/internal_user_management.d.ts +227 -39
  98. package/dist/services/internal_user_management.d.ts.map +1 -1
  99. package/dist/services/internal_user_management.js +194 -37
  100. package/dist/services/internal_user_management.js.map +1 -1
  101. package/dist/services/invite_links.js +1 -1
  102. package/dist/services/jwt_mappings.d.ts +3 -0
  103. package/dist/services/jwt_mappings.d.ts.map +1 -1
  104. package/dist/services/jwt_mappings.js +4 -1
  105. package/dist/services/jwt_mappings.js.map +1 -1
  106. package/dist/services/key_management.d.ts +93 -49
  107. package/dist/services/key_management.d.ts.map +1 -1
  108. package/dist/services/key_management.js +75 -39
  109. package/dist/services/key_management.js.map +1 -1
  110. package/dist/services/langfuse_passthrough.js +1 -1
  111. package/dist/services/llm_passthrough.d.ts +1199 -0
  112. package/dist/services/llm_passthrough.d.ts.map +1 -0
  113. package/dist/services/llm_passthrough.js +2150 -0
  114. package/dist/services/llm_passthrough.js.map +1 -0
  115. package/dist/services/llm_utils.js +1 -1
  116. package/dist/services/logging_callbacks.js +1 -1
  117. package/dist/services/mcp_byok_oauth.d.ts +18 -11
  118. package/dist/services/mcp_byok_oauth.d.ts.map +1 -1
  119. package/dist/services/mcp_byok_oauth.js +27 -24
  120. package/dist/services/mcp_byok_oauth.js.map +1 -1
  121. package/dist/services/mcp_discoverable.d.ts +34 -0
  122. package/dist/services/mcp_discoverable.d.ts.map +1 -1
  123. package/dist/services/mcp_discoverable.js +51 -1
  124. package/dist/services/mcp_discoverable.js.map +1 -1
  125. package/dist/services/mcp_management.d.ts +90 -2
  126. package/dist/services/mcp_management.d.ts.map +1 -1
  127. package/dist/services/mcp_management.js +115 -3
  128. package/dist/services/mcp_management.js.map +1 -1
  129. package/dist/services/mcp_rest.d.ts +13 -0
  130. package/dist/services/mcp_rest.d.ts.map +1 -1
  131. package/dist/services/mcp_rest.js +10 -2
  132. package/dist/services/mcp_rest.js.map +1 -1
  133. package/dist/services/memory_management.d.ts +2 -0
  134. package/dist/services/memory_management.d.ts.map +1 -1
  135. package/dist/services/memory_management.js +2 -1
  136. package/dist/services/memory_management.js.map +1 -1
  137. package/dist/services/misc.d.ts +86 -1
  138. package/dist/services/misc.d.ts.map +1 -1
  139. package/dist/services/misc.js +126 -2
  140. package/dist/services/misc.js.map +1 -1
  141. package/dist/services/model_management.d.ts +310 -19
  142. package/dist/services/model_management.d.ts.map +1 -1
  143. package/dist/services/model_management.js +240 -7
  144. package/dist/services/model_management.js.map +1 -1
  145. package/dist/services/moderations.js +1 -1
  146. package/dist/services/ocr.js +1 -1
  147. package/dist/services/open_ai_pass_through.d.ts +35 -90
  148. package/dist/services/open_ai_pass_through.d.ts.map +1 -1
  149. package/dist/services/open_ai_pass_through.js +41 -139
  150. package/dist/services/open_ai_pass_through.js.map +1 -1
  151. package/dist/services/organization_management.d.ts +21 -1
  152. package/dist/services/organization_management.d.ts.map +1 -1
  153. package/dist/services/organization_management.js +20 -2
  154. package/dist/services/organization_management.js.map +1 -1
  155. package/dist/services/plugins.js +1 -1
  156. package/dist/services/policies.d.ts +2 -0
  157. package/dist/services/policies.d.ts.map +1 -1
  158. package/dist/services/policies.js +3 -1
  159. package/dist/services/policies.js.map +1 -1
  160. package/dist/services/policy_engine.d.ts +6 -0
  161. package/dist/services/policy_engine.d.ts.map +1 -1
  162. package/dist/services/policy_engine.js +4 -1
  163. package/dist/services/policy_engine.js.map +1 -1
  164. package/dist/services/project_management.d.ts +15 -0
  165. package/dist/services/project_management.d.ts.map +1 -1
  166. package/dist/services/project_management.js +14 -1
  167. package/dist/services/project_management.js.map +1 -1
  168. package/dist/services/prompts.js +1 -1
  169. package/dist/services/public.d.ts +124 -0
  170. package/dist/services/public.d.ts.map +1 -1
  171. package/dist/services/public.js +158 -1
  172. package/dist/services/public.js.map +1 -1
  173. package/dist/services/rag.js +1 -1
  174. package/dist/services/realtime.d.ts +4 -26
  175. package/dist/services/realtime.d.ts.map +1 -1
  176. package/dist/services/realtime.js +7 -57
  177. package/dist/services/realtime.js.map +1 -1
  178. package/dist/services/rerank.d.ts +72 -0
  179. package/dist/services/rerank.d.ts.map +1 -1
  180. package/dist/services/rerank.js +61 -4
  181. package/dist/services/rerank.js.map +1 -1
  182. package/dist/services/responses.d.ts +30 -0
  183. package/dist/services/responses.d.ts.map +1 -1
  184. package/dist/services/responses.js +59 -1
  185. package/dist/services/responses.js.map +1 -1
  186. package/dist/services/router_settings.js +1 -1
  187. package/dist/services/rust_control_plane.js +1 -1
  188. package/dist/services/scim.d.ts +41 -1
  189. package/dist/services/scim.d.ts.map +1 -1
  190. package/dist/services/scim.js +60 -2
  191. package/dist/services/scim.js.map +1 -1
  192. package/dist/services/search.js +1 -1
  193. package/dist/services/search_tools.js +1 -1
  194. package/dist/services/settings.d.ts +88 -0
  195. package/dist/services/settings.d.ts.map +1 -1
  196. package/dist/services/settings.js +113 -1
  197. package/dist/services/settings.js.map +1 -1
  198. package/dist/services/sso_settings.d.ts +1 -1
  199. package/dist/services/sso_settings.d.ts.map +1 -1
  200. package/dist/services/sso_settings.js +1 -1
  201. package/dist/services/sso_settings.js.map +1 -1
  202. package/dist/services/tag_management.d.ts +7 -0
  203. package/dist/services/tag_management.d.ts.map +1 -1
  204. package/dist/services/tag_management.js +8 -1
  205. package/dist/services/tag_management.js.map +1 -1
  206. package/dist/services/team_management.d.ts +265 -17
  207. package/dist/services/team_management.d.ts.map +1 -1
  208. package/dist/services/team_management.js +247 -12
  209. package/dist/services/team_management.js.map +1 -1
  210. package/dist/services/tools.js +1 -1
  211. package/dist/services/ui_settings.js +1 -1
  212. package/dist/services/ui_theme_settings.js +1 -1
  213. package/dist/services/usage_ai.js +1 -1
  214. package/dist/services/vantage.js +1 -1
  215. package/dist/services/vector_store_management.js +1 -1
  216. package/dist/services/vector_stores.js +1 -1
  217. package/dist/services/videos.js +1 -1
  218. package/dist/services/web_socket.d.ts +0 -18
  219. package/dist/services/web_socket.d.ts.map +1 -1
  220. package/dist/services/web_socket.js +1 -33
  221. package/dist/services/web_socket.js.map +1 -1
  222. package/dist/services/workflow_management.js +1 -1
  223. package/package.json +1 -1
  224. package/src/services/a2a.ts +1 -1
  225. package/src/services/a2a_registration.ts +1 -1
  226. package/src/services/access_groups.ts +44 -1
  227. package/src/services/adaptive_router.ts +1 -1
  228. package/src/services/agents.ts +22 -1
  229. package/src/services/alerting.ts +1 -1
  230. package/src/services/anthropic_passthrough.ts +1 -1
  231. package/src/services/anthropic_skills.ts +12 -2
  232. package/src/services/assistants.ts +1 -1
  233. package/src/services/audio.ts +1 -1
  234. package/src/services/audit_logging.ts +4 -1
  235. package/src/services/auto_router.ts +303 -93
  236. package/src/services/batch.ts +1 -1
  237. package/src/services/beta_agents.ts +1 -1
  238. package/src/services/beta_mcp.ts +1 -1
  239. package/src/services/budget_management.ts +12 -4
  240. package/src/services/budget_spend_tracking.ts +38 -6
  241. package/src/services/cache_settings.ts +1 -1
  242. package/src/services/caching.ts +1 -1
  243. package/src/services/chat_completions.ts +1 -1
  244. package/src/services/claude_code_marketplace.ts +20 -14
  245. package/src/services/cloudzero.ts +1 -1
  246. package/src/services/completions.ts +1 -1
  247. package/src/services/compliance.ts +1 -1
  248. package/src/services/config_overrides.ts +8 -2
  249. package/src/services/config_yaml.ts +251 -6
  250. package/src/services/containers.ts +29 -11
  251. package/src/services/coordination_redis_settings.ts +1 -1
  252. package/src/services/cost_tracking.ts +198 -2
  253. package/src/services/credential_management.ts +9 -4
  254. package/src/services/customer_management.ts +49 -3
  255. package/src/services/email_management.ts +1 -1
  256. package/src/services/embeddings.ts +1 -1
  257. package/src/services/evals.ts +1 -1
  258. package/src/services/experimental.ts +1 -1
  259. package/src/services/fallback_management.ts +1 -1
  260. package/src/services/files.ts +1 -1
  261. package/src/services/fine_tuning.ts +1 -1
  262. package/src/services/gemini_agents.ts +1 -1
  263. package/src/services/google_genai_endpoints.ts +1 -1
  264. package/src/services/guardrails.ts +198 -8
  265. package/src/services/health.ts +3 -2
  266. package/src/services/images.ts +1 -1
  267. package/src/services/index.ts +1 -15
  268. package/src/services/internal_user_management.ts +565 -103
  269. package/src/services/invite_links.ts +1 -1
  270. package/src/services/jwt_mappings.ts +7 -1
  271. package/src/services/key_management.ts +229 -126
  272. package/src/services/langfuse_passthrough.ts +1 -1
  273. package/src/services/llm_passthrough.ts +4542 -0
  274. package/src/services/llm_utils.ts +1 -1
  275. package/src/services/logging_callbacks.ts +1 -1
  276. package/src/services/mcp_byok_oauth.ts +65 -45
  277. package/src/services/mcp_discoverable.ts +109 -1
  278. package/src/services/mcp_management.ts +258 -3
  279. package/src/services/mcp_rest.ts +30 -5
  280. package/src/services/memory_management.ts +4 -1
  281. package/src/services/misc.ts +269 -2
  282. package/src/services/model_management.ts +666 -21
  283. package/src/services/moderations.ts +1 -1
  284. package/src/services/ocr.ts +1 -1
  285. package/src/services/open_ai_pass_through.ts +81 -286
  286. package/src/services/organization_management.ts +44 -2
  287. package/src/services/plugins.ts +1 -1
  288. package/src/services/policies.ts +5 -1
  289. package/src/services/policy_engine.ts +10 -1
  290. package/src/services/project_management.ts +33 -1
  291. package/src/services/prompts.ts +1 -1
  292. package/src/services/public.ts +356 -1
  293. package/src/services/rag.ts +1 -1
  294. package/src/services/realtime.ts +11 -111
  295. package/src/services/rerank.ts +187 -7
  296. package/src/services/responses.ts +117 -1
  297. package/src/services/router_settings.ts +1 -1
  298. package/src/services/rust_control_plane.ts +1 -1
  299. package/src/services/scim.ts +134 -3
  300. package/src/services/search.ts +1 -1
  301. package/src/services/search_tools.ts +1 -1
  302. package/src/services/settings.ts +278 -1
  303. package/src/services/sso_settings.ts +2 -1
  304. package/src/services/tag_management.ts +15 -1
  305. package/src/services/team_management.ts +676 -37
  306. package/src/services/tools.ts +1 -1
  307. package/src/services/ui_settings.ts +1 -1
  308. package/src/services/ui_theme_settings.ts +1 -1
  309. package/src/services/usage_ai.ts +1 -1
  310. package/src/services/vantage.ts +1 -1
  311. package/src/services/vector_store_management.ts +1 -1
  312. package/src/services/vector_stores.ts +1 -1
  313. package/src/services/videos.ts +1 -1
  314. package/src/services/web_socket.ts +1 -61
  315. package/src/services/workflow_management.ts +1 -1
  316. package/dist/services/anthropic_pass_through.d.ts +0 -70
  317. package/dist/services/anthropic_pass_through.d.ts.map +0 -1
  318. package/dist/services/anthropic_pass_through.js +0 -114
  319. package/dist/services/anthropic_pass_through.js.map +0 -1
  320. package/dist/services/assembly_ai_eu_pass_through.d.ts +0 -70
  321. package/dist/services/assembly_ai_eu_pass_through.d.ts.map +0 -1
  322. package/dist/services/assembly_ai_eu_pass_through.js +0 -114
  323. package/dist/services/assembly_ai_eu_pass_through.js.map +0 -1
  324. package/dist/services/assembly_ai_pass_through.d.ts +0 -70
  325. package/dist/services/assembly_ai_pass_through.d.ts.map +0 -1
  326. package/dist/services/assembly_ai_pass_through.js +0 -114
  327. package/dist/services/assembly_ai_pass_through.js.map +0 -1
  328. package/dist/services/aws_comprehend_medical_pass_through.d.ts +0 -36
  329. package/dist/services/aws_comprehend_medical_pass_through.d.ts.map +0 -1
  330. package/dist/services/aws_comprehend_medical_pass_through.js +0 -56
  331. package/dist/services/aws_comprehend_medical_pass_through.js.map +0 -1
  332. package/dist/services/azure_ai_pass_through.d.ts +0 -70
  333. package/dist/services/azure_ai_pass_through.d.ts.map +0 -1
  334. package/dist/services/azure_ai_pass_through.js +0 -112
  335. package/dist/services/azure_ai_pass_through.js.map +0 -1
  336. package/dist/services/azure_pass_through.d.ts +0 -70
  337. package/dist/services/azure_pass_through.d.ts.map +0 -1
  338. package/dist/services/azure_pass_through.js +0 -107
  339. package/dist/services/azure_pass_through.js.map +0 -1
  340. package/dist/services/bedrock_pass_through.d.ts +0 -70
  341. package/dist/services/bedrock_pass_through.d.ts.map +0 -1
  342. package/dist/services/bedrock_pass_through.js +0 -114
  343. package/dist/services/bedrock_pass_through.js.map +0 -1
  344. package/dist/services/cohere_pass_through.d.ts +0 -70
  345. package/dist/services/cohere_pass_through.d.ts.map +0 -1
  346. package/dist/services/cohere_pass_through.js +0 -112
  347. package/dist/services/cohere_pass_through.js.map +0 -1
  348. package/dist/services/cursor_pass_through.d.ts +0 -70
  349. package/dist/services/cursor_pass_through.d.ts.map +0 -1
  350. package/dist/services/cursor_pass_through.js +0 -112
  351. package/dist/services/cursor_pass_through.js.map +0 -1
  352. package/dist/services/google_ai_studio_pass_through.d.ts +0 -70
  353. package/dist/services/google_ai_studio_pass_through.d.ts.map +0 -1
  354. package/dist/services/google_ai_studio_pass_through.js +0 -112
  355. package/dist/services/google_ai_studio_pass_through.js.map +0 -1
  356. package/dist/services/milvus_pass_through.d.ts +0 -70
  357. package/dist/services/milvus_pass_through.d.ts.map +0 -1
  358. package/dist/services/milvus_pass_through.js +0 -112
  359. package/dist/services/milvus_pass_through.js.map +0 -1
  360. package/dist/services/mistral_pass_through.d.ts +0 -70
  361. package/dist/services/mistral_pass_through.d.ts.map +0 -1
  362. package/dist/services/mistral_pass_through.js +0 -114
  363. package/dist/services/mistral_pass_through.js.map +0 -1
  364. package/dist/services/vertex_ai_pass_through.d.ts +0 -180
  365. package/dist/services/vertex_ai_pass_through.d.ts.map +0 -1
  366. package/dist/services/vertex_ai_pass_through.js +0 -334
  367. package/dist/services/vertex_ai_pass_through.js.map +0 -1
  368. package/dist/services/vllm_pass_through.d.ts +0 -70
  369. package/dist/services/vllm_pass_through.d.ts.map +0 -1
  370. package/dist/services/vllm_pass_through.js +0 -104
  371. package/dist/services/vllm_pass_through.js.map +0 -1
  372. package/dist/services/watsonx_pass_through.d.ts +0 -70
  373. package/dist/services/watsonx_pass_through.d.ts.map +0 -1
  374. package/dist/services/watsonx_pass_through.js +0 -114
  375. package/dist/services/watsonx_pass_through.js.map +0 -1
  376. package/src/services/anthropic_pass_through.ts +0 -233
  377. package/src/services/assembly_ai_eu_pass_through.ts +0 -237
  378. package/src/services/assembly_ai_pass_through.ts +0 -237
  379. package/src/services/aws_comprehend_medical_pass_through.ts +0 -109
  380. package/src/services/azure_ai_pass_through.ts +0 -231
  381. package/src/services/azure_pass_through.ts +0 -227
  382. package/src/services/bedrock_pass_through.ts +0 -229
  383. package/src/services/cohere_pass_through.ts +0 -227
  384. package/src/services/cursor_pass_through.ts +0 -227
  385. package/src/services/google_ai_studio_pass_through.ts +0 -227
  386. package/src/services/milvus_pass_through.ts +0 -227
  387. package/src/services/mistral_pass_through.ts +0 -229
  388. package/src/services/vertex_ai_pass_through.ts +0 -684
  389. package/src/services/vllm_pass_through.ts +0 -227
  390. package/src/services/watsonx_pass_through.ts +0 -229
@@ -1,4 +1,4 @@
1
- // AUTO-GENERATED by scripts/generate.ts from .generated-specs (pinned litellm-openapi @ 1.100.0 — see README). Do not edit.
1
+ // AUTO-GENERATED by scripts/generate.ts from .generated-specs (pinned litellm-openapi @ 1.103.0 — see README). Do not edit.
2
2
  import * as S from "@distilled.cloud/core/schema";
3
3
  import * as Redacted from "effect/Redacted";
4
4
  import * as API from "@distilled.cloud/core/api";
@@ -36,14 +36,10 @@ export class UnprocessableEntity extends /*@__PURE__*/ /*@__PURE__*/ T.applyErro
36
36
  message: S.String,
37
37
  }).pipe(C.withBadRequestError), [{ status: 422 }]) {
38
38
  }
39
- export const UpdateUserRequestNoUserIDorEmailAliasesMap =
40
- /*@__PURE__*/ S.Record(S.String, S.Unknown);
41
- export const UpdateUserRequestNoUserIDorEmailAllowedCacheControlsList =
42
- /*@__PURE__*/ S.Array(S.Unknown);
43
- export const UpdateUserRequestNoUserIDorEmailBudgetFallbacksValueList =
44
- /*@__PURE__*/ S.Array(S.String);
45
- export const UpdateUserRequestNoUserIDorEmailBudgetFallbacksMap =
46
- /*@__PURE__*/ S.Record(S.String, UpdateUserRequestNoUserIDorEmailBudgetFallbacksValueList);
39
+ export const BulkNewUserItemAliasesMap = /*@__PURE__*/ S.Record(S.String, S.Unknown);
40
+ export const BulkNewUserItemAllowedCacheControlsList = /*@__PURE__*/ S.Array(S.Unknown);
41
+ export const BulkNewUserItemBudgetFallbacksValueList = /*@__PURE__*/ S.Array(S.String);
42
+ export const BulkNewUserItemBudgetFallbacksMap = /*@__PURE__*/ S.Record(S.String, BulkNewUserItemBudgetFallbacksValueList);
47
43
  export const BudgetLimitEntry = /*@__PURE__*/ S.suspend(() => S.Struct({
48
44
  budget_duration: S.String,
49
45
  max_budget: S.Number,
@@ -51,22 +47,15 @@ export const BudgetLimitEntry = /*@__PURE__*/ S.suspend(() => S.Struct({
51
47
  })).annotate({
52
48
  identifier: "BudgetLimitEntry",
53
49
  });
54
- export const UpdateUserRequestNoUserIDorEmailBudgetLimitsList =
55
- /*@__PURE__*/ S.Array(BudgetLimitEntry);
56
- export const UpdateUserRequestNoUserIDorEmailConfigMap = /*@__PURE__*/ S.Record(S.String, S.Unknown);
57
- export const UpdateUserRequestNoUserIDorEmailGuardrailsList =
58
- /*@__PURE__*/ S.Array(S.String);
59
- export const UpdateUserRequestNoUserIDorEmailMcpRpmLimitMap =
60
- /*@__PURE__*/ S.Record(S.String, S.Number);
61
- export const UpdateUserRequestNoUserIDorEmailMetadataMap =
62
- /*@__PURE__*/ S.Record(S.String, S.Unknown);
63
- export const UpdateUserRequestNoUserIDorEmailModelMaxBudgetMap =
64
- /*@__PURE__*/ S.Record(S.String, S.Unknown);
65
- export const UpdateUserRequestNoUserIDorEmailModelRpmLimitMap =
66
- /*@__PURE__*/ S.Record(S.String, S.Unknown);
67
- export const UpdateUserRequestNoUserIDorEmailModelTpmLimitMap =
68
- /*@__PURE__*/ S.Record(S.String, S.Unknown);
69
- export const UpdateUserRequestNoUserIDorEmailModelsList = /*@__PURE__*/ S.Array(S.Unknown);
50
+ export const BulkNewUserItemBudgetLimitsList = /*@__PURE__*/ S.Array(BudgetLimitEntry);
51
+ export const BulkNewUserItemConfigMap = /*@__PURE__*/ S.Record(S.String, S.Unknown);
52
+ export const BulkNewUserItemGuardrailsList = /*@__PURE__*/ S.Array(S.String);
53
+ export const BulkNewUserItemMcpRpmLimitMap = /*@__PURE__*/ S.Record(S.String, S.Number);
54
+ export const BulkNewUserItemMetadataMap = /*@__PURE__*/ S.Record(S.String, S.Unknown);
55
+ export const BulkNewUserItemModelMaxBudgetMap = /*@__PURE__*/ S.Record(S.String, S.Unknown);
56
+ export const BulkNewUserItemModelRpmLimitMap = /*@__PURE__*/ S.Record(S.String, S.Unknown);
57
+ export const BulkNewUserItemModelTpmLimitMap = /*@__PURE__*/ S.Record(S.String, S.Unknown);
58
+ export const BulkNewUserItemModelsList = /*@__PURE__*/ S.Array(S.Unknown);
70
59
  export const LiteLLMObjectPermissionBaseAgentAccessGroupsList =
71
60
  /*@__PURE__*/ S.Array(S.String);
72
61
  export const LiteLLMObjectPermissionBaseAgentsList = /*@__PURE__*/ S.Array(S.String);
@@ -82,6 +71,7 @@ export const LiteLLMObjectPermissionBaseMcpToolPermissionsMap =
82
71
  export const LiteLLMObjectPermissionBaseMcpToolsetsList = /*@__PURE__*/ S.Array(S.String);
83
72
  export const LiteLLMObjectPermissionBaseModelsList = /*@__PURE__*/ S.Array(S.String);
84
73
  export const LiteLLMObjectPermissionBaseSearchToolsList = /*@__PURE__*/ S.Array(S.String);
74
+ export const LiteLLMObjectPermissionBaseSkillsList = /*@__PURE__*/ S.Array(S.String);
85
75
  export const LiteLLMObjectPermissionBaseVectorStoresList =
86
76
  /*@__PURE__*/ S.Array(S.String);
87
77
  export const LiteLLMObjectPermissionBase = /*@__PURE__*/ S.suspend(() => S.Struct({
@@ -95,10 +85,154 @@ export const LiteLLMObjectPermissionBase = /*@__PURE__*/ S.suspend(() => S.Struc
95
85
  mcp_toolsets: S.optional(S.NullOr(LiteLLMObjectPermissionBaseMcpToolsetsList)),
96
86
  models: S.optional(S.NullOr(LiteLLMObjectPermissionBaseModelsList)),
97
87
  search_tools: S.optional(S.NullOr(LiteLLMObjectPermissionBaseSearchToolsList)),
88
+ skills: S.optional(S.NullOr(LiteLLMObjectPermissionBaseSkillsList)),
98
89
  vector_stores: S.optional(S.NullOr(LiteLLMObjectPermissionBaseVectorStoresList)),
99
90
  })).annotate({
100
91
  identifier: "LiteLLMObjectPermissionBase",
101
92
  });
93
+ export const BulkNewUserItemOrganizationsList = /*@__PURE__*/ S.Array(S.String);
94
+ export const BulkNewUserItemPermissionsMap = /*@__PURE__*/ S.Record(S.String, S.Unknown);
95
+ export const BulkNewUserItemPoliciesList = /*@__PURE__*/ S.Array(S.String);
96
+ export const BulkNewUserItemPromptsList = /*@__PURE__*/ S.Array(S.String);
97
+ export const BulkNewUserItemTagRpmLimitMap = /*@__PURE__*/ S.Record(S.String, S.Number);
98
+ export const BulkNewUserItemTeamsCase0List = /*@__PURE__*/ S.Array(S.String);
99
+ export const NewUserRequestTeamUserRole = S.String;
100
+ export const NewUserRequestTeam = /*@__PURE__*/ S.suspend(() => S.Struct({
101
+ max_budget_in_team: S.optional(S.NullOr(S.Number)),
102
+ team_id: S.String,
103
+ user_role: S.optional(NewUserRequestTeamUserRole),
104
+ })).annotate({
105
+ identifier: "NewUserRequestTeam",
106
+ });
107
+ export const BulkNewUserItemTeamsCase1List = /*@__PURE__*/ S.Array(NewUserRequestTeam);
108
+ export const BulkNewUserItemTeams = S.Unknown;
109
+ export const BulkNewUserItemUserRole = S.String;
110
+ export const BulkNewUserItem = /*@__PURE__*/ S.suspend(() => S.Struct({
111
+ agent_id: S.optional(S.NullOr(S.String)),
112
+ aliases: S.optional(S.NullOr(BulkNewUserItemAliasesMap)),
113
+ allowed_cache_controls: S.optional(S.NullOr(BulkNewUserItemAllowedCacheControlsList)),
114
+ auto_create_key: S.optional(S.Boolean),
115
+ blocked: S.optional(S.NullOr(S.Boolean)),
116
+ budget_duration: S.optional(S.NullOr(S.String)),
117
+ budget_fallbacks: S.optional(S.NullOr(BulkNewUserItemBudgetFallbacksMap)),
118
+ budget_limits: S.optional(S.NullOr(BulkNewUserItemBudgetLimitsList)),
119
+ config: S.optional(S.NullOr(BulkNewUserItemConfigMap)),
120
+ duration: S.optional(S.NullOr(S.String)),
121
+ guardrails: S.optional(S.NullOr(BulkNewUserItemGuardrailsList)),
122
+ key_alias: S.optional(S.NullOr(S.String)),
123
+ max_budget: S.optional(S.NullOr(S.Number)),
124
+ max_parallel_requests: S.optional(S.NullOr(S.Number)),
125
+ mcp_rpm_limit: S.optional(S.NullOr(BulkNewUserItemMcpRpmLimitMap)),
126
+ metadata: S.optional(S.NullOr(BulkNewUserItemMetadataMap)),
127
+ model_max_budget: S.optional(S.NullOr(BulkNewUserItemModelMaxBudgetMap)),
128
+ model_rpm_limit: S.optional(S.NullOr(BulkNewUserItemModelRpmLimitMap)),
129
+ model_tpm_limit: S.optional(S.NullOr(BulkNewUserItemModelTpmLimitMap)),
130
+ models: S.optional(S.NullOr(BulkNewUserItemModelsList)),
131
+ object_permission: S.optional(S.NullOr(LiteLLMObjectPermissionBase)),
132
+ organizations: S.optional(S.NullOr(BulkNewUserItemOrganizationsList)),
133
+ permissions: S.optional(S.NullOr(BulkNewUserItemPermissionsMap)),
134
+ policies: S.optional(S.NullOr(BulkNewUserItemPoliciesList)),
135
+ prompts: S.optional(S.NullOr(BulkNewUserItemPromptsList)),
136
+ rpm_limit: S.optional(S.NullOr(S.Number)),
137
+ send_invite_email: S.optional(S.NullOr(S.Boolean)),
138
+ spend: S.optional(S.NullOr(S.Number)),
139
+ sso_user_id: S.optional(S.NullOr(S.String)),
140
+ tag_rpm_limit: S.optional(S.NullOr(BulkNewUserItemTagRpmLimitMap)),
141
+ team_id: S.optional(S.NullOr(S.String)),
142
+ teams: S.optional(S.NullOr(BulkNewUserItemTeams)),
143
+ tpm_limit: S.optional(S.NullOr(S.Number)),
144
+ user_alias: S.optional(S.NullOr(S.String)),
145
+ user_email: S.optional(S.NullOr(S.String)),
146
+ user_id: S.optional(S.NullOr(S.String)),
147
+ user_role: S.optional(S.NullOr(BulkNewUserItemUserRole)),
148
+ })).annotate({
149
+ identifier: "BulkNewUserItem",
150
+ });
151
+ export const BulkCreateUsersRouteManagementV1UsersBulkPostRequestUsersList =
152
+ /*@__PURE__*/ S.Array(BulkNewUserItem);
153
+ export const BulkCreateUsersRouteManagementV1UsersBulkPostRequest =
154
+ /*@__PURE__*/ S.suspend(() => S.Struct({
155
+ users: BulkCreateUsersRouteManagementV1UsersBulkPostRequestUsersList,
156
+ }).pipe(T.Http({ method: "POST", uri: "/management/v1/users/bulk", code: 200 }))).annotate({
157
+ identifier: "BulkCreateUsersRouteManagementV1UsersBulkPostRequest",
158
+ });
159
+ export const UserCreateResultTeamsList = /*@__PURE__*/ S.Array(S.String);
160
+ export const UserCreateResult = /*@__PURE__*/ S.suspend(() => S.Struct({
161
+ error: S.optional(S.NullOr(S.String)),
162
+ key: S.optional(S.NullOr(S.String)),
163
+ success: S.Boolean,
164
+ teams: S.optional(S.NullOr(UserCreateResultTeamsList)),
165
+ user_email: S.optional(S.NullOr(S.String)),
166
+ user_id: S.optional(S.NullOr(S.String)),
167
+ })).annotate({
168
+ identifier: "UserCreateResult",
169
+ });
170
+ export const BulkNewUserResponseDataList = /*@__PURE__*/ S.Array(UserCreateResult);
171
+ export const BulkNewUserMeta = /*@__PURE__*/ S.suspend(() => S.Struct({
172
+ created: S.Number,
173
+ failed: S.Number,
174
+ total_requested: S.Number,
175
+ })).annotate({
176
+ identifier: "BulkNewUserMeta",
177
+ });
178
+ export const BulkNewUserResponse = /*@__PURE__*/ S.suspend(() => S.Struct({
179
+ data: BulkNewUserResponseDataList,
180
+ meta: BulkNewUserMeta,
181
+ })).annotate({
182
+ identifier: "BulkNewUserResponse",
183
+ });
184
+ export const BulkDeleteUsersActionManagementV1UsersBulkDeletePostRequestUserIdsList =
185
+ /*@__PURE__*/ S.Array(S.String);
186
+ export const BulkDeleteUsersActionManagementV1UsersBulkDeletePostRequest =
187
+ /*@__PURE__*/ S.suspend(() => S.Struct({
188
+ user_ids: BulkDeleteUsersActionManagementV1UsersBulkDeletePostRequestUserIdsList,
189
+ }).pipe(T.Http({
190
+ method: "POST",
191
+ uri: "/management/v1/users/bulk_delete",
192
+ code: 200,
193
+ }))).annotate({
194
+ identifier: "BulkDeleteUsersActionManagementV1UsersBulkDeletePostRequest",
195
+ });
196
+ export const UserDeleteResultTeamsRemovedList = /*@__PURE__*/ S.Array(S.String);
197
+ export const UserDeleteResult = /*@__PURE__*/ S.suspend(() => S.Struct({
198
+ error: S.optional(S.NullOr(S.String)),
199
+ success: S.Boolean,
200
+ teams_removed: S.optional(UserDeleteResultTeamsRemovedList),
201
+ user_email: S.optional(S.NullOr(S.String)),
202
+ user_id: S.String,
203
+ })).annotate({
204
+ identifier: "UserDeleteResult",
205
+ });
206
+ export const BulkDeleteUsersResponseDataList = /*@__PURE__*/ S.Array(UserDeleteResult);
207
+ export const BulkDeleteUsersResponse = /*@__PURE__*/ S.suspend(() => S.Struct({
208
+ data: BulkDeleteUsersResponseDataList,
209
+ })).annotate({
210
+ identifier: "BulkDeleteUsersResponse",
211
+ });
212
+ export const UpdateUserRequestNoUserIDorEmailAliasesMap =
213
+ /*@__PURE__*/ S.Record(S.String, S.Unknown);
214
+ export const UpdateUserRequestNoUserIDorEmailAllowedCacheControlsList =
215
+ /*@__PURE__*/ S.Array(S.Unknown);
216
+ export const UpdateUserRequestNoUserIDorEmailBudgetFallbacksValueList =
217
+ /*@__PURE__*/ S.Array(S.String);
218
+ export const UpdateUserRequestNoUserIDorEmailBudgetFallbacksMap =
219
+ /*@__PURE__*/ S.Record(S.String, UpdateUserRequestNoUserIDorEmailBudgetFallbacksValueList);
220
+ export const UpdateUserRequestNoUserIDorEmailBudgetLimitsList =
221
+ /*@__PURE__*/ S.Array(BudgetLimitEntry);
222
+ export const UpdateUserRequestNoUserIDorEmailConfigMap = /*@__PURE__*/ S.Record(S.String, S.Unknown);
223
+ export const UpdateUserRequestNoUserIDorEmailGuardrailsList =
224
+ /*@__PURE__*/ S.Array(S.String);
225
+ export const UpdateUserRequestNoUserIDorEmailMcpRpmLimitMap =
226
+ /*@__PURE__*/ S.Record(S.String, S.Number);
227
+ export const UpdateUserRequestNoUserIDorEmailMetadataMap =
228
+ /*@__PURE__*/ S.Record(S.String, S.Unknown);
229
+ export const UpdateUserRequestNoUserIDorEmailModelMaxBudgetMap =
230
+ /*@__PURE__*/ S.Record(S.String, S.Unknown);
231
+ export const UpdateUserRequestNoUserIDorEmailModelRpmLimitMap =
232
+ /*@__PURE__*/ S.Record(S.String, S.Unknown);
233
+ export const UpdateUserRequestNoUserIDorEmailModelTpmLimitMap =
234
+ /*@__PURE__*/ S.Record(S.String, S.Unknown);
235
+ export const UpdateUserRequestNoUserIDorEmailModelsList = /*@__PURE__*/ S.Array(S.Unknown);
102
236
  export const UpdateUserRequestNoUserIDorEmailPermissionsMap =
103
237
  /*@__PURE__*/ S.Record(S.String, S.Unknown);
104
238
  export const UpdateUserRequestNoUserIDorEmailPoliciesList =
@@ -314,6 +448,7 @@ export const LiteLLMObjectPermissionTableMcpToolsetsList =
314
448
  export const LiteLLMObjectPermissionTableModelsList = /*@__PURE__*/ S.Array(S.String);
315
449
  export const LiteLLMObjectPermissionTableSearchToolsList =
316
450
  /*@__PURE__*/ S.Array(S.String);
451
+ export const LiteLLMObjectPermissionTableSkillsList = /*@__PURE__*/ S.Array(S.String);
317
452
  export const LiteLLMObjectPermissionTableVectorStoresList =
318
453
  /*@__PURE__*/ S.Array(S.String);
319
454
  export const LiteLLMObjectPermissionTable = /*@__PURE__*/ S.suspend(() => S.Struct({
@@ -328,6 +463,7 @@ export const LiteLLMObjectPermissionTable = /*@__PURE__*/ S.suspend(() => S.Stru
328
463
  models: S.optional(S.NullOr(LiteLLMObjectPermissionTableModelsList)),
329
464
  object_permission_id: S.String,
330
465
  search_tools: S.optional(S.NullOr(LiteLLMObjectPermissionTableSearchToolsList)),
466
+ skills: S.optional(S.NullOr(LiteLLMObjectPermissionTableSkillsList)),
331
467
  vector_stores: S.optional(S.NullOr(LiteLLMObjectPermissionTableVectorStoresList)),
332
468
  })).annotate({
333
469
  identifier: "LiteLLMObjectPermissionTable",
@@ -359,6 +495,7 @@ export const GetUsersUserListGetRequest = /*@__PURE__*/ S.suspend(() => S.Struct
359
495
  user_ids: S.optional(S.String.pipe(T.Query())),
360
496
  sso_user_ids: S.optional(S.String.pipe(T.Query())),
361
497
  user_email: S.optional(S.String.pipe(T.Query())),
498
+ search: S.optional(S.String.pipe(T.Query())),
362
499
  team: S.optional(S.String.pipe(T.Query())),
363
500
  page: S.optional(S.Number.pipe(T.Query())),
364
501
  page_size: S.optional(S.Number.pipe(T.Query())),
@@ -386,6 +523,9 @@ export const LiteLLMBudgetTable = /*@__PURE__*/ S.suspend(() => S.Struct({
386
523
  model_max_budget: S.optional(S.NullOr(LiteLLMBudgetTableModelMaxBudgetMap)),
387
524
  rpm_limit: S.optional(S.NullOr(S.Number)),
388
525
  soft_budget: S.optional(S.NullOr(S.Number)),
526
+ temp_budget_expiry: S.optional(S.NullOr(S.String)),
527
+ temp_budget_increase: S.optional(S.NullOr(S.Number)),
528
+ tpd_limit: S.optional(S.NullOr(S.Number)),
389
529
  tpm_limit: S.optional(S.NullOr(S.Number)),
390
530
  })).annotate({
391
531
  identifier: "LiteLLMBudgetTable",
@@ -472,14 +612,6 @@ export const PostNewUserUserNewRequestPoliciesList = /*@__PURE__*/ S.Array(S.Str
472
612
  export const PostNewUserUserNewRequestPromptsList = /*@__PURE__*/ S.Array(S.String);
473
613
  export const PostNewUserUserNewRequestTagRpmLimitMap = /*@__PURE__*/ S.Record(S.String, S.Number);
474
614
  export const PostNewUserUserNewRequestTeamsCase0List = /*@__PURE__*/ S.Array(S.String);
475
- export const NewUserRequestTeamUserRole = S.String;
476
- export const NewUserRequestTeam = /*@__PURE__*/ S.suspend(() => S.Struct({
477
- max_budget_in_team: S.optional(S.NullOr(S.Number)),
478
- team_id: S.String,
479
- user_role: S.optional(NewUserRequestTeamUserRole),
480
- })).annotate({
481
- identifier: "NewUserRequestTeam",
482
- });
483
615
  export const PostNewUserUserNewRequestTeamsCase1List = /*@__PURE__*/ S.Array(NewUserRequestTeam);
484
616
  export const PostNewUserUserNewRequestTeams = S.Unknown;
485
617
  export const PostNewUserUserNewRequestUserRole = S.String;
@@ -576,12 +708,17 @@ export const RetryPolicy = /*@__PURE__*/ S.suspend(() => S.Struct({
576
708
  AuthenticationErrorRetries: S.optional(S.NullOr(S.Number)),
577
709
  BadRequestErrorRetries: S.optional(S.NullOr(S.Number)),
578
710
  ContentPolicyViolationErrorRetries: S.optional(S.NullOr(S.Number)),
711
+ DefaultRetries: S.optional(S.NullOr(S.Number)),
579
712
  InternalServerErrorRetries: S.optional(S.NullOr(S.Number)),
580
713
  RateLimitErrorRetries: S.optional(S.NullOr(S.Number)),
714
+ ServiceUnavailableErrorRetries: S.optional(S.NullOr(S.Number)),
581
715
  TimeoutErrorRetries: S.optional(S.NullOr(S.Number)),
582
716
  })).annotate({ identifier: "RetryPolicy" });
583
717
  export const UpdateRouterConfigModelGroupRetryPolicyMap =
584
718
  /*@__PURE__*/ S.Record(S.String, RetryPolicy);
719
+ export const UpdateRouterConfigOptionalPreCallChecksItem = S.String;
720
+ export const UpdateRouterConfigOptionalPreCallChecksList =
721
+ /*@__PURE__*/ S.Array(UpdateRouterConfigOptionalPreCallChecksItem);
585
722
  export const RoutingGroupModelsList = /*@__PURE__*/ S.Array(S.String);
586
723
  export const RoutingGroupRoutingStrategyArgsMap = /*@__PURE__*/ S.Record(S.String, S.Unknown);
587
724
  export const RoutingGroup = /*@__PURE__*/ S.suspend(() => S.Struct({
@@ -603,6 +740,7 @@ export const UpdateRouterConfig = /*@__PURE__*/ S.suspend(() => S.Struct({
603
740
  model_group_alias: S.optional(S.NullOr(UpdateRouterConfigModelGroupAliasMap)),
604
741
  model_group_retry_policy: S.optional(S.NullOr(UpdateRouterConfigModelGroupRetryPolicyMap)),
605
742
  num_retries: S.optional(S.NullOr(S.Number)),
743
+ optional_pre_call_checks: S.optional(S.NullOr(UpdateRouterConfigOptionalPreCallChecksList)),
606
744
  retry_after: S.optional(S.NullOr(S.Number)),
607
745
  retry_policy: S.optional(S.NullOr(RetryPolicy)),
608
746
  routing_groups: S.optional(S.NullOr(UpdateRouterConfigRoutingGroupsList)),
@@ -610,6 +748,7 @@ export const UpdateRouterConfig = /*@__PURE__*/ S.suspend(() => S.Struct({
610
748
  routing_strategy_args: S.optional(S.NullOr(UpdateRouterConfigRoutingStrategyArgsMap)),
611
749
  tag_routing_prefix: S.optional(S.NullOr(S.String)),
612
750
  timeout: S.optional(S.NullOr(S.Number)),
751
+ weights: S.optional(S.NullOr(S.Unknown)),
613
752
  })).annotate({
614
753
  identifier: "UpdateRouterConfig",
615
754
  });
@@ -640,6 +779,7 @@ export const NewUserResponse = /*@__PURE__*/ S.suspend(() => S.Struct({
640
779
  disable_global_guardrails: S.optional(S.NullOr(S.Boolean)),
641
780
  duration: S.optional(S.NullOr(S.String)),
642
781
  enable_prompt_caching: S.optional(S.NullOr(S.Boolean)),
782
+ end_user_budget_id: S.optional(S.NullOr(S.String)),
643
783
  enforced_params: S.optional(S.NullOr(NewUserResponseEnforcedParamsList)),
644
784
  expires: S.optional(S.NullOr(S.String)),
645
785
  guardrails: S.optional(S.NullOr(NewUserResponseGuardrailsList)),
@@ -673,6 +813,7 @@ export const NewUserResponse = /*@__PURE__*/ S.suspend(() => S.Struct({
673
813
  throttle_on_budget_exceeded: S.optional(S.NullOr(S.Boolean)),
674
814
  token: S.optional(S.NullOr(S.String)),
675
815
  token_id: S.optional(S.NullOr(S.String)),
816
+ tpd_limit: S.optional(S.NullOr(S.Number)),
676
817
  tpm_limit: S.optional(S.NullOr(S.Number)),
677
818
  tpm_limit_type: S.optional(S.NullOr(NewUserResponseTpmLimitType)),
678
819
  updated_at: S.optional(S.NullOr(S.String)),
@@ -767,6 +908,22 @@ export const UserUpdateUserUpdatePostResponse = /*@__PURE__*/ S.suspend(() => S.
767
908
  })).annotate({
768
909
  identifier: "UserUpdateUserUpdatePostResponse",
769
910
  });
911
+ /** Bulk Create Users Route Create up to 500 internal users in one request, optionally adding each one to teams. Every entry in `users` takes the same fields as `/user/new`, with two differences: `auto_create_key` defaults to `false` (opt in per user to also get a virtual key back) and `send_invite_email` is not supported. Unknown fields are rejected with 422. Rows are validated together (duplicate ids or emails, unknown teams, roles the caller may not grant), inserted in one statement, and each referenced team is written once for all of its new members. Rows fail independently: a bad row is reported in `data` with `success: false` and an `error`, and the other rows still get created. A user that was created but could not be added to one of its teams is reported with `success: true`, `teams` listing where they did land, and `error` naming the failed team. The whole request is refused with a 403 problem document only if creating the valid rows would exceed the license seat limit. Example curl: ``` curl -X POST "http://localhost:4000/management/v1/users/bulk" \ -H "Content-Type: application/json" \ -H "Authorization: Bearer sk-1234" \ -d '{ "users": [ {"user_email": "a@example.com", "user_role": "internal_user", "teams": ["team-1"]}, {"user_email": "b@example.com", "user_role": "internal_user", "auto_create_key": true} ] }' ``` Returns `data` (one entry per input row, in order, with `user_id`, `user_email`, `success`, `teams`, `key`, `error`) and `meta` with `total_requested`, `created` and `failed`. */
912
+ export const bulkCreateUsersRouteManagementV1UsersBulkPost = /*@__PURE__*/ API.make(() => ({
913
+ input: BulkCreateUsersRouteManagementV1UsersBulkPostRequest,
914
+ output: BulkNewUserResponse,
915
+ errors: [UnprocessableEntity],
916
+ protocol: LitellmProtocol,
917
+ retry: Retry.Retry,
918
+ }));
919
+ /** Bulk Delete Users Action Delete up to 500 users in one call, taking each out of every team it belongs to. Same authorization as `/user/delete`: proxy admins may delete anyone, org admins only users inside organizations they administer. Unknown body fields are a 422. `data` holds one result per requested `user_id`, in request order. A row is `success: false` with an `error` when the id is unknown, repeated in the request, or outside the caller's scope. Rows that pass those checks are deleted together, in one transaction, so either all of them go or none does. Example curl: ``` curl --location 'http://0.0.0.0:4000/management/v1/users/bulk_delete' --header 'Authorization: Bearer sk-1234' --header 'Content-Type: application/json' --data '{"user_ids": ["user-1", "user-2"]}' ``` */
920
+ export const bulkDeleteUsersActionManagementV1UsersBulkDeletePost = /*@__PURE__*/ API.make(() => ({
921
+ input: BulkDeleteUsersActionManagementV1UsersBulkDeletePostRequest,
922
+ output: BulkDeleteUsersResponse,
923
+ errors: [UnprocessableEntity],
924
+ protocol: LitellmProtocol,
925
+ retry: Retry.Retry,
926
+ }));
770
927
  /** Bulk User Update Bulk update multiple users at once. This endpoint allows updating multiple users in a single request. Each user update is processed independently - if some updates fail, others will still succeed. Parameters: - users: Optional[List[UpdateUserRequest]] - List of specific user update requests - all_users: Optional[bool] - Set to true to update all users in the system - user_updates: Optional[UpdateUserRequest] - Updates to apply when all_users=True Returns: - results: List of individual update results - total_requested: Total number of users requested for update - successful_updates: Number of successful updates - failed_updates: Number of failed updates Example request for specific users: ```bash curl --location 'http://0.0.0.0:4000/user/bulk_update' --header 'Authorization: Bearer sk-1234' --header 'Content-Type: application/json' --data '{ "users": [ { "user_id": "user1", "user_role": "internal_user", "max_budget": 100.0 }, { "user_email": "user2@example.com", "user_role": "internal_user_viewer", "max_budget": 50.0 } ] }' ``` Example request for all users: ```bash curl --location 'http://0.0.0.0:4000/user/bulk_update' --header 'Authorization: Bearer sk-1234' --header 'Content-Type: application/json' --data '{ "all_users": true, "user_updates": { "user_role": "internal_user", "max_budget": 50.0 } }' ``` */
771
928
  export const bulkUserUpdateUserBulkUpdatePost = /*@__PURE__*/ API.make(() => ({
772
929
  input: BulkUserUpdateUserBulkUpdatePostRequest,
@@ -807,7 +964,7 @@ export const getUserInfoUserInfo = /*@__PURE__*/ API.make(() => ({
807
964
  protocol: LitellmProtocol,
808
965
  retry: Retry.Retry,
809
966
  }));
810
- /** User Info V2 Lightweight endpoint to get user info. Returns only the user object — no keys, no teams objects. This is the v2 replacement for /user/info, designed to avoid the "god endpoint" problem where the old endpoint loaded all keys and teams into memory. Access control: - Proxy admins can query any user - Team admins can query users within their teams - Internal users can only query themselves (omit user_id or pass own) - Returns 404 for non-existent users or unauthorized access Example request: ``` curl -X GET 'http://localhost:4000/v2/user/info?user_id=user123' \ --header 'Authorization: Bearer sk-1234' ``` */
967
+ /** User Info V2 Lightweight endpoint to get user info. Returns only the user object — no keys, no teams objects. This is the v2 replacement for /user/info, designed to avoid the "god endpoint" problem where the old endpoint loaded all keys and teams into memory. Note on `spend`: this is the user's running budget counter, which the budget reset job resets whenever `budget_reset_at` elapses (see `budget_duration`): to zero by default, or to the overage above `max_budget` when `budget_rollover` is enabled. It is NOT lifetime or per-period historical spend. For historical spend over a date range, use `/user/daily/activity` or `/user/daily/activity/aggregated`, which read daily spend records that only ever accumulate and are never reset. The two values are expected to diverge once a budget reset has occurred within the queried period. Access control: - Proxy admins can query any user - Team admins can query users within their teams - Internal users can only query themselves (omit user_id or pass own) - Returns 404 for non-existent users or unauthorized access Example request: ``` curl -X GET 'http://localhost:4000/v2/user/info?user_id=user123' \ --header 'Authorization: Bearer sk-1234' ``` */
811
968
  export const getUserInfoV2V2UserInfo = /*@__PURE__*/ API.make(() => ({
812
969
  input: GetUserInfoV2V2UserInfoRequest,
813
970
  output: UserInfoV2Response,
@@ -815,7 +972,7 @@ export const getUserInfoV2V2UserInfo = /*@__PURE__*/ API.make(() => ({
815
972
  protocol: LitellmProtocol,
816
973
  retry: Retry.Retry,
817
974
  }));
818
- /** Get Users Get a paginated list of users with filtering and sorting options. Parameters: role: Optional[str] Filter users by role. Can be one of: - proxy_admin - proxy_admin_viewer - internal_user - internal_user_viewer user_ids: Optional[str] Get list of users by user_ids. Comma separated list of user_ids. sso_ids: Optional[str] Get list of users by sso_ids. Comma separated list of sso_ids. user_email: Optional[str] Filter users by partial email match team: Optional[str] Filter users by team id. Will match if user has this team in their teams array. page: int The page number to return page_size: int The number of items per page sort_by: Optional[str] Column to sort by (e.g. 'user_id', 'user_email', 'created_at', 'spend') sort_order: Optional[str] Sort order ('asc' or 'desc') */
975
+ /** Get Users Get a paginated list of users with filtering and sorting options. Parameters: role: Optional[str] Filter users by role. Can be one of: - proxy_admin - proxy_admin_viewer - internal_user - internal_user_viewer user_ids: Optional[str] Get list of users by user_ids. Comma separated list of user_ids. sso_ids: Optional[str] Get list of users by sso_ids. Comma separated list of sso_ids. user_email: Optional[str] Filter users by partial email match search: Optional[str] Combined search: matches users whose user_id or user_email contains the value (case-insensitive) team: Optional[str] Filter users by team id. Will match if user has this team in their teams array. page: int The page number to return page_size: int The number of items per page sort_by: Optional[str] Column to sort by (e.g. 'user_id', 'user_email', 'created_at', 'spend') sort_order: Optional[str] Sort order ('asc' or 'desc') */
819
976
  export const getUsersUserListGet = /*@__PURE__*/ API.make(() => ({
820
977
  input: GetUsersUserListGetRequest,
821
978
  output: UserListResponse,
@@ -823,7 +980,7 @@ export const getUsersUserListGet = /*@__PURE__*/ API.make(() => ({
823
980
  protocol: LitellmProtocol,
824
981
  retry: Retry.Retry,
825
982
  }));
826
- /** New User Use this to create a new INTERNAL user with a budget. Internal Users can access LiteLLM Admin UI to make keys, request access to models. This creates a new user and generates a new api key for the new user. The new api key is returned. Returns user id, budget + new key. Parameters: - user_id: Optional[str] - Specify a user id. If not set, a unique id will be generated. - user_alias: Optional[str] - A descriptive name for you to know who this user id refers to. - teams: Optional[list] - specify a list of team id's a user belongs to. - user_email: Optional[str] - Specify a user email. - send_invite_email: Optional[bool] - Specify if an invite email should be sent. - user_role: Optional[str] - Specify a user role - "proxy_admin", "proxy_admin_viewer", "internal_user", "internal_user_viewer", "team", "customer". Info about each role here: `https://github.com/BerriAI/litellm/litellm/proxy/_types.py#L20` - max_budget: Optional[float] - Specify max budget for a given user. - budget_duration: Optional[str] - Budget is reset at the end of specified duration. If not set, budget is never reset. You can set duration as seconds ("30s"), minutes ("30m"), hours ("30h"), days ("30d"), months ("1mo"). - models: Optional[list] - Model_name's a user is allowed to call. (if empty, key is allowed to call all models). Set to ['no-default-models'] to block all model access. Restricting user to only team-based model access. - tpm_limit: Optional[int] - Specify tpm limit for a given user (Tokens per minute) - rpm_limit: Optional[int] - Specify rpm limit for a given user (Requests per minute) - auto_create_key: bool - Default=True. Flag used for returning a key as part of the /user/new response - aliases: Optional[dict] - Model aliases for the user - [Docs](https://litellm.vercel.app/docs/proxy/virtual_keys#model-aliases) - config: Optional[dict] - [DEPRECATED PARAM] User-specific config. - allowed_cache_controls: Optional[list] - List of allowed cache control values. Example - ["no-cache", "no-store"]. See all values - https://docs.litellm.ai/docs/proxy/caching#turn-on--off-caching-per-request- - blocked: Optional[bool] - [Not Implemented Yet] Whether the user is blocked. - guardrails: Optional[List[str]] - [Not Implemented Yet] List of active guardrails for the user - policies: Optional[List[str]] - List of policy names to apply to the user. Policies define guardrails, conditions, and inheritance rules. - permissions: Optional[dict] - [Not Implemented Yet] User-specific permissions, eg. turning off pii masking. - metadata: Optional[dict] - Metadata for user, store information for user. Example metadata = {"team": "core-infra", "app": "app2", "email": "ishaan@berri.ai" } - max_parallel_requests: Optional[int] - Rate limit a user based on the number of parallel requests. Raises 429 error, if user's parallel requests > x. - soft_budget: Optional[float] - Get alerts when user crosses given budget, doesn't block requests. - model_max_budget: Optional[dict] - Model-specific max budget for user. [Docs](https://docs.litellm.ai/docs/proxy/users#add-model-specific-budgets-to-keys) - budget_fallbacks: Optional[Dict[str, List[str]]] - Per-model fallback chain tried in order when that model's own `model_max_budget` is exceeded, e.g. {"gpt-4o": ["gpt-4o-mini"]}. - model_rpm_limit: Optional[float] - Model-specific rpm limit for user. [Docs](https://docs.litellm.ai/docs/proxy/users#add-model-specific-limits-to-keys) - mcp_rpm_limit: Optional[dict] - Per-MCP-server rpm limit, keyed by MCP server name {"github": 100, "slack": 200}. Enforced for keys and teams only; values set on a user are stored but not enforced per user. - tag_rpm_limit: Optional[dict] - Per-request-tag rpm limit, keyed by request tag {"cell-1": 1000, "cell-2": 500}. Enforced for keys only; values set on a user are stored but not enforced per user. - model_tpm_limit: Optional[float] - Model-specific tpm limit for user. [Docs](https://docs.litellm.ai/docs/proxy/users#add-model-specific-limits-to-keys) - spend: Optional[float] - Amount spent by user. Default is 0. Will be updated by proxy whenever user is used. You can set duration as seconds ("30s"), minutes ("30m"), hours ("30h"), days ("30d"), months ("1mo"). - agent_id: Optional[str] - The agent id associated with the user. - team_id: Optional[str] - [DEPRECATED PARAM] The team id of the user. Default is None. - duration: Optional[str] - Duration for the key auto-created on `/user/new`. Default is None. - key_alias: Optional[str] - Alias for the key auto-created on `/user/new`. Default is None. - sso_user_id: Optional[str] - The id of the user in the SSO provider. - object_permission: Optional[LiteLLM_ObjectPermissionBase] - internal user-specific object permission. Example - {"vector_stores": ["vector_store_1"], "mcp_servers": ["github"], "mcp_tool_permissions": {"github": ["list_issues"]}}. The MCP grants act as a ceiling on every key this user holds. IF null or {} then no object permission. - prompts: Optional[List[str]] - List of allowed prompts for the user. If specified, the user will only be able to use these specific prompts. - organizations: List[str] - List of organization id's the user is a member of - budget_limits: Optional[list] - List of concurrent budget windows for the user. Each window specifies a budget_limit, time_period, and optional budget_duration. Example - [{"budget_limit": 10.0, "time_period": "1d"}, {"budget_limit": 50.0, "time_period": "7d"}]. Returns: - key: (str) The generated api key for the user - expires: (datetime) Datetime object for when key expires. - user_id: (str) Unique user id - used for tracking spend across multiple keys for same user id. - max_budget: (float|None) Max budget for given user. Usage Example ```shell curl -X POST "http://localhost:4000/user/new" -H "Content-Type: application/json" -H "Authorization: Bearer sk-1234" -d '{ "username": "new_user", "email": "new_user@example.com" }' ``` */
983
+ /** New User Use this to create a new INTERNAL user with a budget. Internal Users can access LiteLLM Admin UI to make keys, request access to models. This creates a new user and generates a new api key for the new user. The new api key is returned. Returns user id, budget + new key. Parameters: - user_id: Optional[str] - Specify a user id. If not set, a unique id will be generated. - user_alias: Optional[str] - A descriptive name for you to know who this user id refers to. - teams: Optional[list] - specify a list of team id's a user belongs to. - user_email: Optional[str] - Specify a user email. - send_invite_email: Optional[bool] - Specify if an invite email should be sent. - user_role: Optional[str] - Specify a user role - "proxy_admin", "proxy_admin_viewer", "internal_user", "internal_user_viewer", "team", "customer". Info about each role here: `https://github.com/BerriAI/litellm/litellm/proxy/_types.py#L20` - max_budget: Optional[float] - Specify max budget for a given user. - budget_duration: Optional[str] - Budget is reset at the end of specified duration. If not set, budget is never reset. You can set duration as seconds ("30s"), minutes ("30m"), hours ("30h"), days ("30d"), months ("1mo"). - models: Optional[list] - Model_name's a user is allowed to call. (if empty, key is allowed to call all models). Set to ['no-default-models'] to block all model access. Restricting user to only team-based model access. - tpm_limit: Optional[int] - Specify tpm limit for a given user (Tokens per minute) - rpm_limit: Optional[int] - Specify rpm limit for a given user (Requests per minute) - auto_create_key: bool - Default=True. Flag used for returning a key as part of the /user/new response - aliases: Optional[dict] - Model aliases for the user - [Docs](https://litellm.vercel.app/docs/proxy/virtual_keys#model-aliases) - config: Optional[dict] - [DEPRECATED PARAM] User-specific config. - allowed_cache_controls: Optional[list] - List of allowed cache control values. Example - ["no-cache", "no-store"]. See all values - https://docs.litellm.ai/docs/proxy/caching#turn-on--off-caching-per-request- - blocked: Optional[bool] - [Not Implemented Yet] Whether the user is blocked. - guardrails: Optional[List[str]] - [Not Implemented Yet] List of active guardrails for the user - policies: Optional[List[str]] - List of policy names to apply to the user. Policies define guardrails, conditions, and inheritance rules. - permissions: Optional[dict] - [Not Implemented Yet] User-specific permissions, eg. turning off pii masking. - metadata: Optional[dict] - Metadata for user, store information for user. Example metadata = {"team": "core-infra", "app": "app2", "email": "ishaan@berri.ai" } - max_parallel_requests: Optional[int] - Rate limit a user based on the number of parallel requests. Raises 429 error, if user's parallel requests > x. - model_max_budget: Optional[dict] - Model-specific max budget for user. [Docs](https://docs.litellm.ai/docs/proxy/users#add-model-specific-budgets-to-keys) - budget_fallbacks: Optional[Dict[str, List[str]]] - Per-model fallback chain tried in order when that model's own `model_max_budget` is exceeded, e.g. {"gpt-4o": ["gpt-4o-mini"]}. - model_rpm_limit: Optional[float] - Model-specific rpm limit for user. [Docs](https://docs.litellm.ai/docs/proxy/users#add-model-specific-limits-to-keys) - mcp_rpm_limit: Optional[dict] - Per-MCP-server rpm limit, keyed by MCP server name {"github": 100, "slack": 200}. Enforced for keys and teams only; values set on a user are stored but not enforced per user. - tag_rpm_limit: Optional[dict] - Per-request-tag rpm limit, keyed by request tag {"cell-1": 1000, "cell-2": 500}. Enforced for keys only; values set on a user are stored but not enforced per user. - model_tpm_limit: Optional[float] - Model-specific tpm limit for user. [Docs](https://docs.litellm.ai/docs/proxy/users#add-model-specific-limits-to-keys) - spend: Optional[float] - Amount spent by user. Default is 0. Will be updated by proxy whenever user is used. You can set duration as seconds ("30s"), minutes ("30m"), hours ("30h"), days ("30d"), months ("1mo"). - agent_id: Optional[str] - The agent id associated with the user. - team_id: Optional[str] - [DEPRECATED PARAM] The team id of the user. Default is None. - duration: Optional[str] - Duration for the key auto-created on `/user/new`. Default is None. - key_alias: Optional[str] - Alias for the key auto-created on `/user/new`. Default is None. - sso_user_id: Optional[str] - The id of the user in the SSO provider. - object_permission: Optional[LiteLLM_ObjectPermissionBase] - internal user-specific object permission. Example - {"vector_stores": ["vector_store_1"], "mcp_servers": ["github"], "mcp_tool_permissions": {"github": ["list_issues"]}}. The MCP grants act as a ceiling on every key this user holds. IF null or {} then no object permission. - prompts: Optional[List[str]] - List of allowed prompts for the user. If specified, the user will only be able to use these specific prompts. - organizations: List[str] - List of organization id's the user is a member of - budget_limits: Optional[list] - List of concurrent budget windows for the user. Each window specifies a budget_limit, time_period, and optional budget_duration. Example - [{"budget_limit": 10.0, "time_period": "1d"}, {"budget_limit": 50.0, "time_period": "7d"}]. Returns: - key: (str) The generated api key for the user - expires: (datetime) Datetime object for when key expires. - user_id: (str) Unique user id - used for tracking spend across multiple keys for same user id. - max_budget: (float|None) Max budget for given user. Usage Example ```shell curl -X POST "http://localhost:4000/user/new" -H "Content-Type: application/json" -H "Authorization: Bearer sk-1234" -d '{ "username": "new_user", "email": "new_user@example.com" }' ``` */
827
984
  export const postNewUserUserNew = /*@__PURE__*/ API.make(() => ({
828
985
  input: PostNewUserUserNewRequest,
829
986
  output: NewUserResponse,
@@ -839,7 +996,7 @@ export const uiGetAvailableRoleUserAvailableRolesGet = /*@__PURE__*/ API.make(()
839
996
  protocol: LitellmProtocol,
840
997
  retry: Retry.Retry,
841
998
  }));
842
- /** User Update Example curl ``` curl --location 'http://0.0.0.0:4000/user/update' --header 'Authorization: Bearer sk-1234' --header 'Content-Type: application/json' --data '{ "user_id": "test-litellm-user-4", "user_role": "proxy_admin_viewer" }' ``` Parameters: - user_id: Optional[str] - Specify a user id. If not set, a unique id will be generated. - user_email: Optional[str] - Specify a user email. - password: Optional[str] - Specify a user password. - user_alias: Optional[str] - A descriptive name for you to know who this user id refers to. - teams: Optional[list] - specify a list of team id's a user belongs to. - send_invite_email: Optional[bool] - Specify if an invite email should be sent. - user_role: Optional[str] - Specify a user role - "proxy_admin", "proxy_admin_viewer", "internal_user", "internal_user_viewer", "team", "customer". Info about each role here: `https://github.com/BerriAI/litellm/litellm/proxy/_types.py#L20` - max_budget: Optional[float] - Specify max budget for a given user. - budget_duration: Optional[str] - Budget is reset at the end of specified duration. If not set, budget is never reset. You can set duration as seconds ("30s"), minutes ("30m"), hours ("30h"), days ("30d"), months ("1mo"). - models: Optional[list] - Model_name's a user is allowed to call. (if empty, key is allowed to call all models) - tpm_limit: Optional[int] - Specify tpm limit for a given user (Tokens per minute) - rpm_limit: Optional[int] - Specify rpm limit for a given user (Requests per minute) - auto_create_key: bool - Default=True. Flag used for returning a key as part of the /user/new response - aliases: Optional[dict] - Model aliases for the user - [Docs](https://litellm.vercel.app/docs/proxy/virtual_keys#model-aliases) - config: Optional[dict] - [DEPRECATED PARAM] User-specific config. - allowed_cache_controls: Optional[list] - List of allowed cache control values. Example - ["no-cache", "no-store"]. See all values - https://docs.litellm.ai/docs/proxy/caching#turn-on--off-caching-per-request- - blocked: Optional[bool] - [Not Implemented Yet] Whether the user is blocked. - guardrails: Optional[List[str]] - [Not Implemented Yet] List of active guardrails for the user - policies: Optional[List[str]] - List of policy names to apply to the user. Policies define guardrails, conditions, and inheritance rules. - permissions: Optional[dict] - [Not Implemented Yet] User-specific permissions, eg. turning off pii masking. - metadata: Optional[dict] - Metadata for user, store information for user. Example metadata = {"team": "core-infra", "app": "app2", "email": "ishaan@berri.ai" } - max_parallel_requests: Optional[int] - Rate limit a user based on the number of parallel requests. Raises 429 error, if user's parallel requests > x. - soft_budget: Optional[float] - Get alerts when user crosses given budget, doesn't block requests. - model_max_budget: Optional[dict] - Model-specific max budget for user. [Docs](https://docs.litellm.ai/docs/proxy/users#add-model-specific-budgets-to-keys) - budget_fallbacks: Optional[Dict[str, List[str]]] - Per-model fallback chain tried in order when that model's own `model_max_budget` is exceeded, e.g. {"gpt-4o": ["gpt-4o-mini"]}. - model_rpm_limit: Optional[float] - Model-specific rpm limit for user. [Docs](https://docs.litellm.ai/docs/proxy/users#add-model-specific-limits-to-keys) - mcp_rpm_limit: Optional[dict] - Per-MCP-server rpm limit, keyed by MCP server name {"github": 100, "slack": 200}. Enforced for keys and teams only; values set on a user are stored but not enforced per user. - tag_rpm_limit: Optional[dict] - Per-request-tag rpm limit, keyed by request tag {"cell-1": 1000, "cell-2": 500}. Enforced for keys only; values set on a user are stored but not enforced per user. - model_tpm_limit: Optional[float] - Model-specific tpm limit for user. [Docs](https://docs.litellm.ai/docs/proxy/users#add-model-specific-limits-to-keys) - spend: Optional[float] - Amount spent by user. Default is 0. Will be updated by proxy whenever user is used. You can set duration as seconds ("30s"), minutes ("30m"), hours ("30h"), days ("30d"), months ("1mo"). - agent_id: Optional[str] - The agent id associated with the user. - team_id: Optional[str] - [DEPRECATED PARAM] The team id of the user. Default is None. - duration: Optional[str] - [NOT IMPLEMENTED]. - key_alias: Optional[str] - [NOT IMPLEMENTED]. - object_permission: Optional[LiteLLM_ObjectPermissionBase] - internal user-specific object permission. Example - {"vector_stores": ["vector_store_1"], "mcp_servers": ["github"], "mcp_tool_permissions": {"github": ["list_issues"]}}. The MCP grants act as a ceiling on every key this user holds. IF null or {} then no object permission. - prompts: Optional[List[str]] - List of allowed prompts for the user. If specified, the user will only be able to use these specific prompts. - budget_limits: Optional[list] - List of concurrent budget windows for the user. Each window specifies a budget_limit, time_period, and optional budget_duration. Example - [{"budget_limit": 10.0, "time_period": "1d"}, {"budget_limit": 50.0, "time_period": "7d"}]. */
999
+ /** User Update Example curl ``` curl --location 'http://0.0.0.0:4000/user/update' --header 'Authorization: Bearer sk-1234' --header 'Content-Type: application/json' --data '{ "user_id": "test-litellm-user-4", "user_role": "proxy_admin_viewer" }' ``` Parameters: - user_id: Optional[str] - Specify a user id. If not set, a unique id will be generated. - user_email: Optional[str] - Specify a user email. - password: Optional[str] - Specify a user password. - user_alias: Optional[str] - A descriptive name for you to know who this user id refers to. - teams: Optional[list] - specify a list of team id's a user belongs to. - send_invite_email: Optional[bool] - Specify if an invite email should be sent. - user_role: Optional[str] - Specify a user role - "proxy_admin", "proxy_admin_viewer", "internal_user", "internal_user_viewer", "team", "customer". Info about each role here: `https://github.com/BerriAI/litellm/litellm/proxy/_types.py#L20` - max_budget: Optional[float] - Specify max budget for a given user. - budget_duration: Optional[str] - Budget is reset at the end of specified duration. If not set, budget is never reset. You can set duration as seconds ("30s"), minutes ("30m"), hours ("30h"), days ("30d"), months ("1mo"). - models: Optional[list] - Model_name's a user is allowed to call. (if empty, key is allowed to call all models) - tpm_limit: Optional[int] - Specify tpm limit for a given user (Tokens per minute) - rpm_limit: Optional[int] - Specify rpm limit for a given user (Requests per minute) - auto_create_key: bool - Default=True. Flag used for returning a key as part of the /user/new response - aliases: Optional[dict] - Model aliases for the user - [Docs](https://litellm.vercel.app/docs/proxy/virtual_keys#model-aliases) - config: Optional[dict] - [DEPRECATED PARAM] User-specific config. - allowed_cache_controls: Optional[list] - List of allowed cache control values. Example - ["no-cache", "no-store"]. See all values - https://docs.litellm.ai/docs/proxy/caching#turn-on--off-caching-per-request- - blocked: Optional[bool] - [Not Implemented Yet] Whether the user is blocked. - guardrails: Optional[List[str]] - [Not Implemented Yet] List of active guardrails for the user - policies: Optional[List[str]] - List of policy names to apply to the user. Policies define guardrails, conditions, and inheritance rules. - permissions: Optional[dict] - [Not Implemented Yet] User-specific permissions, eg. turning off pii masking. - metadata: Optional[dict] - Metadata for user, store information for user. Example metadata = {"team": "core-infra", "app": "app2", "email": "ishaan@berri.ai" } - max_parallel_requests: Optional[int] - Rate limit a user based on the number of parallel requests. Raises 429 error, if user's parallel requests > x. - model_max_budget: Optional[dict] - Model-specific max budget for user. [Docs](https://docs.litellm.ai/docs/proxy/users#add-model-specific-budgets-to-keys) - budget_fallbacks: Optional[Dict[str, List[str]]] - Per-model fallback chain tried in order when that model's own `model_max_budget` is exceeded, e.g. {"gpt-4o": ["gpt-4o-mini"]}. - model_rpm_limit: Optional[float] - Model-specific rpm limit for user. [Docs](https://docs.litellm.ai/docs/proxy/users#add-model-specific-limits-to-keys) - mcp_rpm_limit: Optional[dict] - Per-MCP-server rpm limit, keyed by MCP server name {"github": 100, "slack": 200}. Enforced for keys and teams only; values set on a user are stored but not enforced per user. - tag_rpm_limit: Optional[dict] - Per-request-tag rpm limit, keyed by request tag {"cell-1": 1000, "cell-2": 500}. Enforced for keys only; values set on a user are stored but not enforced per user. - model_tpm_limit: Optional[float] - Model-specific tpm limit for user. [Docs](https://docs.litellm.ai/docs/proxy/users#add-model-specific-limits-to-keys) - spend: Optional[float] - Amount spent by user. Default is 0. Will be updated by proxy whenever user is used. You can set duration as seconds ("30s"), minutes ("30m"), hours ("30h"), days ("30d"), months ("1mo"). - agent_id: Optional[str] - The agent id associated with the user. - team_id: Optional[str] - [DEPRECATED PARAM] The team id of the user. Default is None. - duration: Optional[str] - [NOT IMPLEMENTED]. - key_alias: Optional[str] - [NOT IMPLEMENTED]. - object_permission: Optional[LiteLLM_ObjectPermissionBase] - internal user-specific object permission. Example - {"vector_stores": ["vector_store_1"], "mcp_servers": ["github"], "mcp_tool_permissions": {"github": ["list_issues"]}}. The MCP grants act as a ceiling on every key this user holds. IF null or {} then no object permission. - prompts: Optional[List[str]] - List of allowed prompts for the user. If specified, the user will only be able to use these specific prompts. - budget_limits: Optional[list] - List of concurrent budget windows for the user. Each window specifies a budget_limit, time_period, and optional budget_duration. Example - [{"budget_limit": 10.0, "time_period": "1d"}, {"budget_limit": 50.0, "time_period": "7d"}]. */
843
1000
  export const userUpdateUserUpdatePost = /*@__PURE__*/ API.make(() => ({
844
1001
  input: UserUpdateUserUpdatePostRequest,
845
1002
  output: UserUpdateUserUpdatePostResponse,