litellm-proxy-extras 0.4.3__py3-none-any.whl

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 (54) hide show
  1. litellm_proxy_extras/__init__.py +0 -0
  2. litellm_proxy_extras/_logging.py +12 -0
  3. litellm_proxy_extras/migrations/20250326162113_baseline/migration.sql +360 -0
  4. litellm_proxy_extras/migrations/20250326171002_add_daily_user_table/migration.sql +33 -0
  5. litellm_proxy_extras/migrations/20250327180120_add_api_requests_to_daily_user_table/migration.sql +3 -0
  6. litellm_proxy_extras/migrations/20250329084805_new_cron_job_table/migration.sql +14 -0
  7. litellm_proxy_extras/migrations/20250331215456_track_success_and_failed_requests_daily_agg_table/migration.sql +4 -0
  8. litellm_proxy_extras/migrations/20250411215431_add_managed_file_table/migration.sql +18 -0
  9. litellm_proxy_extras/migrations/20250412081753_team_member_permissions/migration.sql +3 -0
  10. litellm_proxy_extras/migrations/20250415151647_add_cache_read_write_tokens_daily_spend_transactions/migration.sql +4 -0
  11. litellm_proxy_extras/migrations/20250415191926_add_daily_team_table/migration.sql +36 -0
  12. litellm_proxy_extras/migrations/20250416115320_add_tag_table_to_db/migration.sql +45 -0
  13. litellm_proxy_extras/migrations/20250416151339_drop_tag_uniqueness_requirement/migration.sql +3 -0
  14. litellm_proxy_extras/migrations/20250416185146_add_allowed_routes_litellm_verification_token/migration.sql +3 -0
  15. litellm_proxy_extras/migrations/20250425182129_add_session_id/migration.sql +4 -0
  16. litellm_proxy_extras/migrations/20250430193429_add_managed_vector_stores/migration.sql +14 -0
  17. litellm_proxy_extras/migrations/20250507161526_add_mcp_table_to_db/migration.sql +17 -0
  18. litellm_proxy_extras/migrations/20250507161527_add_health_check_fields_to_mcp_servers/migration.sql +4 -0
  19. litellm_proxy_extras/migrations/20250507184818_add_mcp_key_team_permission_mgmt/migration.sql +32 -0
  20. litellm_proxy_extras/migrations/20250508072103_add_status_to_spendlogs/migration.sql +3 -0
  21. litellm_proxy_extras/migrations/20250509141545_use_big_int_for_daily_spend_tables/migration.sql +27 -0
  22. litellm_proxy_extras/migrations/20250510142544_add_session_id_index_spend_logs/migration.sql +3 -0
  23. litellm_proxy_extras/migrations/20250514142245_add_guardrails_table/migration.sql +15 -0
  24. litellm_proxy_extras/migrations/20250522223020_managed_object_table/migration.sql +32 -0
  25. litellm_proxy_extras/migrations/20250526154401_allow_null_entity_id/migration.sql +9 -0
  26. litellm_proxy_extras/migrations/20250528185438_add_vector_stores_to_object_permissions/migration.sql +3 -0
  27. litellm_proxy_extras/migrations/20250603210143_cascade_budget_changes/migration.sql +6 -0
  28. litellm_proxy_extras/migrations/20250618225828_add_health_check_table/migration.sql +28 -0
  29. litellm_proxy_extras/migrations/20250625145206_cascade_budget_and_loosen_managed_file_json/migration.sql +9 -0
  30. litellm_proxy_extras/migrations/20250625213625_add_status_to_managed_object_table/migration.sql +3 -0
  31. litellm_proxy_extras/migrations/20250707212517_add_mcp_info_column_mcp_servers/migration.sql +3 -0
  32. litellm_proxy_extras/migrations/20250707230009_add_mcp_namespaced_tool_name/migration.sql +42 -0
  33. litellm_proxy_extras/migrations/20250711220620_add_stdio_mcp/migration.sql +10 -0
  34. litellm_proxy_extras/migrations/20250718125714_add_litellm_params_to_vector_stores/migration.sql +3 -0
  35. litellm_proxy_extras/migrations/20250802162330_prompt_table/migration.sql +15 -0
  36. litellm_proxy_extras/migrations/20250806095134_rename_alias_to_server_name_mcp_table/migration.sql +10 -0
  37. litellm_proxy_extras/migrations/20250918083359_drop_spec_version_column_from_mcp_table/migration.sql +8 -0
  38. litellm_proxy_extras/migrations/20250926194702_unnamed_migration/migration.sql +7 -0
  39. litellm_proxy_extras/migrations/20251003165142_add_allowed_tools_to_mcp/migration.sql +3 -0
  40. litellm_proxy_extras/migrations/20251003190954_extra_headers_to_mcp_table/migration.sql +3 -0
  41. litellm_proxy_extras/migrations/20251006143948_add_mcp_tool_permissions/migration.sql +3 -0
  42. litellm_proxy_extras/migrations/20251011084309_add_tag_table/migration.sql +18 -0
  43. litellm_proxy_extras/migrations/20251023141814_add_search_tool_table/migration.sql +15 -0
  44. litellm_proxy_extras/migrations/20251031181430_add_cache_config_table/migration.sql +20 -0
  45. litellm_proxy_extras/migrations/20251101131415_add_managed_vector_store_index_table/migration.sql +17 -0
  46. litellm_proxy_extras/migrations/20251103072422_add_static_headers/migration.sql +2 -0
  47. litellm_proxy_extras/migrations/20251104220043_add_credentials_to_mcp_servers/migration.sql +2 -0
  48. litellm_proxy_extras/migrations/migration_lock.toml +1 -0
  49. litellm_proxy_extras/schema.prisma +612 -0
  50. litellm_proxy_extras/utils.py +369 -0
  51. litellm_proxy_extras-0.4.3.dist-info/METADATA +44 -0
  52. litellm_proxy_extras-0.4.3.dist-info/RECORD +54 -0
  53. litellm_proxy_extras-0.4.3.dist-info/WHEEL +4 -0
  54. litellm_proxy_extras-0.4.3.dist-info/licenses/LICENSE +26 -0
File without changes
@@ -0,0 +1,12 @@
1
+ import logging
2
+
3
+ # Set up package logger
4
+ logger = logging.getLogger("litellm_proxy_extras")
5
+ if not logger.handlers: # Only add handler if none exists
6
+ handler = logging.StreamHandler()
7
+ formatter = logging.Formatter(
8
+ "%(asctime)s - %(name)s - %(levelname)s - %(message)s"
9
+ )
10
+ handler.setFormatter(formatter)
11
+ logger.addHandler(handler)
12
+ logger.setLevel(logging.INFO)
@@ -0,0 +1,360 @@
1
+ -- CreateTable
2
+ CREATE TABLE "LiteLLM_BudgetTable" (
3
+ "budget_id" TEXT NOT NULL,
4
+ "max_budget" DOUBLE PRECISION,
5
+ "soft_budget" DOUBLE PRECISION,
6
+ "max_parallel_requests" INTEGER,
7
+ "tpm_limit" BIGINT,
8
+ "rpm_limit" BIGINT,
9
+ "model_max_budget" JSONB,
10
+ "budget_duration" TEXT,
11
+ "budget_reset_at" TIMESTAMP(3),
12
+ "created_at" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
13
+ "created_by" TEXT NOT NULL,
14
+ "updated_at" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
15
+ "updated_by" TEXT NOT NULL,
16
+
17
+ CONSTRAINT "LiteLLM_BudgetTable_pkey" PRIMARY KEY ("budget_id")
18
+ );
19
+
20
+ -- CreateTable
21
+ CREATE TABLE "LiteLLM_CredentialsTable" (
22
+ "credential_id" TEXT NOT NULL,
23
+ "credential_name" TEXT NOT NULL,
24
+ "credential_values" JSONB NOT NULL,
25
+ "credential_info" JSONB,
26
+ "created_at" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
27
+ "created_by" TEXT NOT NULL,
28
+ "updated_at" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
29
+ "updated_by" TEXT NOT NULL,
30
+
31
+ CONSTRAINT "LiteLLM_CredentialsTable_pkey" PRIMARY KEY ("credential_id")
32
+ );
33
+
34
+ -- CreateTable
35
+ CREATE TABLE "LiteLLM_ProxyModelTable" (
36
+ "model_id" TEXT NOT NULL,
37
+ "model_name" TEXT NOT NULL,
38
+ "litellm_params" JSONB NOT NULL,
39
+ "model_info" JSONB,
40
+ "created_at" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
41
+ "created_by" TEXT NOT NULL,
42
+ "updated_at" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
43
+ "updated_by" TEXT NOT NULL,
44
+
45
+ CONSTRAINT "LiteLLM_ProxyModelTable_pkey" PRIMARY KEY ("model_id")
46
+ );
47
+
48
+ -- CreateTable
49
+ CREATE TABLE "LiteLLM_OrganizationTable" (
50
+ "organization_id" TEXT NOT NULL,
51
+ "organization_alias" TEXT NOT NULL,
52
+ "budget_id" TEXT NOT NULL,
53
+ "metadata" JSONB NOT NULL DEFAULT '{}',
54
+ "models" TEXT[],
55
+ "spend" DOUBLE PRECISION NOT NULL DEFAULT 0.0,
56
+ "model_spend" JSONB NOT NULL DEFAULT '{}',
57
+ "created_at" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
58
+ "created_by" TEXT NOT NULL,
59
+ "updated_at" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
60
+ "updated_by" TEXT NOT NULL,
61
+
62
+ CONSTRAINT "LiteLLM_OrganizationTable_pkey" PRIMARY KEY ("organization_id")
63
+ );
64
+
65
+ -- CreateTable
66
+ CREATE TABLE "LiteLLM_ModelTable" (
67
+ "id" SERIAL NOT NULL,
68
+ "aliases" JSONB,
69
+ "created_at" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
70
+ "created_by" TEXT NOT NULL,
71
+ "updated_at" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
72
+ "updated_by" TEXT NOT NULL,
73
+
74
+ CONSTRAINT "LiteLLM_ModelTable_pkey" PRIMARY KEY ("id")
75
+ );
76
+
77
+ -- CreateTable
78
+ CREATE TABLE "LiteLLM_TeamTable" (
79
+ "team_id" TEXT NOT NULL,
80
+ "team_alias" TEXT,
81
+ "organization_id" TEXT,
82
+ "admins" TEXT[],
83
+ "members" TEXT[],
84
+ "members_with_roles" JSONB NOT NULL DEFAULT '{}',
85
+ "metadata" JSONB NOT NULL DEFAULT '{}',
86
+ "max_budget" DOUBLE PRECISION,
87
+ "spend" DOUBLE PRECISION NOT NULL DEFAULT 0.0,
88
+ "models" TEXT[],
89
+ "max_parallel_requests" INTEGER,
90
+ "tpm_limit" BIGINT,
91
+ "rpm_limit" BIGINT,
92
+ "budget_duration" TEXT,
93
+ "budget_reset_at" TIMESTAMP(3),
94
+ "blocked" BOOLEAN NOT NULL DEFAULT false,
95
+ "created_at" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
96
+ "updated_at" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
97
+ "model_spend" JSONB NOT NULL DEFAULT '{}',
98
+ "model_max_budget" JSONB NOT NULL DEFAULT '{}',
99
+ "model_id" INTEGER,
100
+
101
+ CONSTRAINT "LiteLLM_TeamTable_pkey" PRIMARY KEY ("team_id")
102
+ );
103
+
104
+ -- CreateTable
105
+ CREATE TABLE "LiteLLM_UserTable" (
106
+ "user_id" TEXT NOT NULL,
107
+ "user_alias" TEXT,
108
+ "team_id" TEXT,
109
+ "sso_user_id" TEXT,
110
+ "organization_id" TEXT,
111
+ "password" TEXT,
112
+ "teams" TEXT[] DEFAULT ARRAY[]::TEXT[],
113
+ "user_role" TEXT,
114
+ "max_budget" DOUBLE PRECISION,
115
+ "spend" DOUBLE PRECISION NOT NULL DEFAULT 0.0,
116
+ "user_email" TEXT,
117
+ "models" TEXT[],
118
+ "metadata" JSONB NOT NULL DEFAULT '{}',
119
+ "max_parallel_requests" INTEGER,
120
+ "tpm_limit" BIGINT,
121
+ "rpm_limit" BIGINT,
122
+ "budget_duration" TEXT,
123
+ "budget_reset_at" TIMESTAMP(3),
124
+ "allowed_cache_controls" TEXT[] DEFAULT ARRAY[]::TEXT[],
125
+ "model_spend" JSONB NOT NULL DEFAULT '{}',
126
+ "model_max_budget" JSONB NOT NULL DEFAULT '{}',
127
+ "created_at" TIMESTAMP(3) DEFAULT CURRENT_TIMESTAMP,
128
+ "updated_at" TIMESTAMP(3) DEFAULT CURRENT_TIMESTAMP,
129
+
130
+ CONSTRAINT "LiteLLM_UserTable_pkey" PRIMARY KEY ("user_id")
131
+ );
132
+
133
+ -- CreateTable
134
+ CREATE TABLE "LiteLLM_VerificationToken" (
135
+ "token" TEXT NOT NULL,
136
+ "key_name" TEXT,
137
+ "key_alias" TEXT,
138
+ "soft_budget_cooldown" BOOLEAN NOT NULL DEFAULT false,
139
+ "spend" DOUBLE PRECISION NOT NULL DEFAULT 0.0,
140
+ "expires" TIMESTAMP(3),
141
+ "models" TEXT[],
142
+ "aliases" JSONB NOT NULL DEFAULT '{}',
143
+ "config" JSONB NOT NULL DEFAULT '{}',
144
+ "user_id" TEXT,
145
+ "team_id" TEXT,
146
+ "permissions" JSONB NOT NULL DEFAULT '{}',
147
+ "max_parallel_requests" INTEGER,
148
+ "metadata" JSONB NOT NULL DEFAULT '{}',
149
+ "blocked" BOOLEAN,
150
+ "tpm_limit" BIGINT,
151
+ "rpm_limit" BIGINT,
152
+ "max_budget" DOUBLE PRECISION,
153
+ "budget_duration" TEXT,
154
+ "budget_reset_at" TIMESTAMP(3),
155
+ "allowed_cache_controls" TEXT[] DEFAULT ARRAY[]::TEXT[],
156
+ "model_spend" JSONB NOT NULL DEFAULT '{}',
157
+ "model_max_budget" JSONB NOT NULL DEFAULT '{}',
158
+ "budget_id" TEXT,
159
+ "organization_id" TEXT,
160
+ "created_at" TIMESTAMP(3) DEFAULT CURRENT_TIMESTAMP,
161
+ "created_by" TEXT,
162
+ "updated_at" TIMESTAMP(3) DEFAULT CURRENT_TIMESTAMP,
163
+ "updated_by" TEXT,
164
+
165
+ CONSTRAINT "LiteLLM_VerificationToken_pkey" PRIMARY KEY ("token")
166
+ );
167
+
168
+ -- CreateTable
169
+ CREATE TABLE "LiteLLM_EndUserTable" (
170
+ "user_id" TEXT NOT NULL,
171
+ "alias" TEXT,
172
+ "spend" DOUBLE PRECISION NOT NULL DEFAULT 0.0,
173
+ "allowed_model_region" TEXT,
174
+ "default_model" TEXT,
175
+ "budget_id" TEXT,
176
+ "blocked" BOOLEAN NOT NULL DEFAULT false,
177
+
178
+ CONSTRAINT "LiteLLM_EndUserTable_pkey" PRIMARY KEY ("user_id")
179
+ );
180
+
181
+ -- CreateTable
182
+ CREATE TABLE "LiteLLM_Config" (
183
+ "param_name" TEXT NOT NULL,
184
+ "param_value" JSONB,
185
+
186
+ CONSTRAINT "LiteLLM_Config_pkey" PRIMARY KEY ("param_name")
187
+ );
188
+
189
+ -- CreateTable
190
+ CREATE TABLE "LiteLLM_SpendLogs" (
191
+ "request_id" TEXT NOT NULL,
192
+ "call_type" TEXT NOT NULL,
193
+ "api_key" TEXT NOT NULL DEFAULT '',
194
+ "spend" DOUBLE PRECISION NOT NULL DEFAULT 0.0,
195
+ "total_tokens" INTEGER NOT NULL DEFAULT 0,
196
+ "prompt_tokens" INTEGER NOT NULL DEFAULT 0,
197
+ "completion_tokens" INTEGER NOT NULL DEFAULT 0,
198
+ "startTime" TIMESTAMP(3) NOT NULL,
199
+ "endTime" TIMESTAMP(3) NOT NULL,
200
+ "completionStartTime" TIMESTAMP(3),
201
+ "model" TEXT NOT NULL DEFAULT '',
202
+ "model_id" TEXT DEFAULT '',
203
+ "model_group" TEXT DEFAULT '',
204
+ "custom_llm_provider" TEXT DEFAULT '',
205
+ "api_base" TEXT DEFAULT '',
206
+ "user" TEXT DEFAULT '',
207
+ "metadata" JSONB DEFAULT '{}',
208
+ "cache_hit" TEXT DEFAULT '',
209
+ "cache_key" TEXT DEFAULT '',
210
+ "request_tags" JSONB DEFAULT '[]',
211
+ "team_id" TEXT,
212
+ "end_user" TEXT,
213
+ "requester_ip_address" TEXT,
214
+ "messages" JSONB DEFAULT '{}',
215
+ "response" JSONB DEFAULT '{}',
216
+
217
+ CONSTRAINT "LiteLLM_SpendLogs_pkey" PRIMARY KEY ("request_id")
218
+ );
219
+
220
+ -- CreateTable
221
+ CREATE TABLE "LiteLLM_ErrorLogs" (
222
+ "request_id" TEXT NOT NULL,
223
+ "startTime" TIMESTAMP(3) NOT NULL,
224
+ "endTime" TIMESTAMP(3) NOT NULL,
225
+ "api_base" TEXT NOT NULL DEFAULT '',
226
+ "model_group" TEXT NOT NULL DEFAULT '',
227
+ "litellm_model_name" TEXT NOT NULL DEFAULT '',
228
+ "model_id" TEXT NOT NULL DEFAULT '',
229
+ "request_kwargs" JSONB NOT NULL DEFAULT '{}',
230
+ "exception_type" TEXT NOT NULL DEFAULT '',
231
+ "exception_string" TEXT NOT NULL DEFAULT '',
232
+ "status_code" TEXT NOT NULL DEFAULT '',
233
+
234
+ CONSTRAINT "LiteLLM_ErrorLogs_pkey" PRIMARY KEY ("request_id")
235
+ );
236
+
237
+ -- CreateTable
238
+ CREATE TABLE "LiteLLM_UserNotifications" (
239
+ "request_id" TEXT NOT NULL,
240
+ "user_id" TEXT NOT NULL,
241
+ "models" TEXT[],
242
+ "justification" TEXT NOT NULL,
243
+ "status" TEXT NOT NULL,
244
+
245
+ CONSTRAINT "LiteLLM_UserNotifications_pkey" PRIMARY KEY ("request_id")
246
+ );
247
+
248
+ -- CreateTable
249
+ CREATE TABLE "LiteLLM_TeamMembership" (
250
+ "user_id" TEXT NOT NULL,
251
+ "team_id" TEXT NOT NULL,
252
+ "spend" DOUBLE PRECISION NOT NULL DEFAULT 0.0,
253
+ "budget_id" TEXT,
254
+
255
+ CONSTRAINT "LiteLLM_TeamMembership_pkey" PRIMARY KEY ("user_id","team_id")
256
+ );
257
+
258
+ -- CreateTable
259
+ CREATE TABLE "LiteLLM_OrganizationMembership" (
260
+ "user_id" TEXT NOT NULL,
261
+ "organization_id" TEXT NOT NULL,
262
+ "user_role" TEXT,
263
+ "spend" DOUBLE PRECISION DEFAULT 0.0,
264
+ "budget_id" TEXT,
265
+ "created_at" TIMESTAMP(3) DEFAULT CURRENT_TIMESTAMP,
266
+ "updated_at" TIMESTAMP(3) DEFAULT CURRENT_TIMESTAMP,
267
+
268
+ CONSTRAINT "LiteLLM_OrganizationMembership_pkey" PRIMARY KEY ("user_id","organization_id")
269
+ );
270
+
271
+ -- CreateTable
272
+ CREATE TABLE "LiteLLM_InvitationLink" (
273
+ "id" TEXT NOT NULL,
274
+ "user_id" TEXT NOT NULL,
275
+ "is_accepted" BOOLEAN NOT NULL DEFAULT false,
276
+ "accepted_at" TIMESTAMP(3),
277
+ "expires_at" TIMESTAMP(3) NOT NULL,
278
+ "created_at" TIMESTAMP(3) NOT NULL,
279
+ "created_by" TEXT NOT NULL,
280
+ "updated_at" TIMESTAMP(3) NOT NULL,
281
+ "updated_by" TEXT NOT NULL,
282
+
283
+ CONSTRAINT "LiteLLM_InvitationLink_pkey" PRIMARY KEY ("id")
284
+ );
285
+
286
+ -- CreateTable
287
+ CREATE TABLE "LiteLLM_AuditLog" (
288
+ "id" TEXT NOT NULL,
289
+ "updated_at" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
290
+ "changed_by" TEXT NOT NULL DEFAULT '',
291
+ "changed_by_api_key" TEXT NOT NULL DEFAULT '',
292
+ "action" TEXT NOT NULL,
293
+ "table_name" TEXT NOT NULL,
294
+ "object_id" TEXT NOT NULL,
295
+ "before_value" JSONB,
296
+ "updated_values" JSONB,
297
+
298
+ CONSTRAINT "LiteLLM_AuditLog_pkey" PRIMARY KEY ("id")
299
+ );
300
+
301
+ -- CreateIndex
302
+ CREATE UNIQUE INDEX "LiteLLM_CredentialsTable_credential_name_key" ON "LiteLLM_CredentialsTable"("credential_name");
303
+
304
+ -- CreateIndex
305
+ CREATE UNIQUE INDEX "LiteLLM_TeamTable_model_id_key" ON "LiteLLM_TeamTable"("model_id");
306
+
307
+ -- CreateIndex
308
+ CREATE UNIQUE INDEX "LiteLLM_UserTable_sso_user_id_key" ON "LiteLLM_UserTable"("sso_user_id");
309
+
310
+ -- CreateIndex
311
+ CREATE INDEX "LiteLLM_SpendLogs_startTime_idx" ON "LiteLLM_SpendLogs"("startTime");
312
+
313
+ -- CreateIndex
314
+ CREATE INDEX "LiteLLM_SpendLogs_end_user_idx" ON "LiteLLM_SpendLogs"("end_user");
315
+
316
+ -- CreateIndex
317
+ CREATE UNIQUE INDEX "LiteLLM_OrganizationMembership_user_id_organization_id_key" ON "LiteLLM_OrganizationMembership"("user_id", "organization_id");
318
+
319
+ -- AddForeignKey
320
+ ALTER TABLE "LiteLLM_OrganizationTable" ADD CONSTRAINT "LiteLLM_OrganizationTable_budget_id_fkey" FOREIGN KEY ("budget_id") REFERENCES "LiteLLM_BudgetTable"("budget_id") ON DELETE RESTRICT ON UPDATE CASCADE;
321
+
322
+ -- AddForeignKey
323
+ ALTER TABLE "LiteLLM_TeamTable" ADD CONSTRAINT "LiteLLM_TeamTable_organization_id_fkey" FOREIGN KEY ("organization_id") REFERENCES "LiteLLM_OrganizationTable"("organization_id") ON DELETE SET NULL ON UPDATE CASCADE;
324
+
325
+ -- AddForeignKey
326
+ ALTER TABLE "LiteLLM_TeamTable" ADD CONSTRAINT "LiteLLM_TeamTable_model_id_fkey" FOREIGN KEY ("model_id") REFERENCES "LiteLLM_ModelTable"("id") ON DELETE SET NULL ON UPDATE CASCADE;
327
+
328
+ -- AddForeignKey
329
+ ALTER TABLE "LiteLLM_UserTable" ADD CONSTRAINT "LiteLLM_UserTable_organization_id_fkey" FOREIGN KEY ("organization_id") REFERENCES "LiteLLM_OrganizationTable"("organization_id") ON DELETE SET NULL ON UPDATE CASCADE;
330
+
331
+ -- AddForeignKey
332
+ ALTER TABLE "LiteLLM_VerificationToken" ADD CONSTRAINT "LiteLLM_VerificationToken_budget_id_fkey" FOREIGN KEY ("budget_id") REFERENCES "LiteLLM_BudgetTable"("budget_id") ON DELETE SET NULL ON UPDATE CASCADE;
333
+
334
+ -- AddForeignKey
335
+ ALTER TABLE "LiteLLM_VerificationToken" ADD CONSTRAINT "LiteLLM_VerificationToken_organization_id_fkey" FOREIGN KEY ("organization_id") REFERENCES "LiteLLM_OrganizationTable"("organization_id") ON DELETE SET NULL ON UPDATE CASCADE;
336
+
337
+ -- AddForeignKey
338
+ ALTER TABLE "LiteLLM_EndUserTable" ADD CONSTRAINT "LiteLLM_EndUserTable_budget_id_fkey" FOREIGN KEY ("budget_id") REFERENCES "LiteLLM_BudgetTable"("budget_id") ON DELETE SET NULL ON UPDATE CASCADE;
339
+
340
+ -- AddForeignKey
341
+ ALTER TABLE "LiteLLM_TeamMembership" ADD CONSTRAINT "LiteLLM_TeamMembership_budget_id_fkey" FOREIGN KEY ("budget_id") REFERENCES "LiteLLM_BudgetTable"("budget_id") ON DELETE SET NULL ON UPDATE CASCADE;
342
+
343
+ -- AddForeignKey
344
+ ALTER TABLE "LiteLLM_OrganizationMembership" ADD CONSTRAINT "LiteLLM_OrganizationMembership_user_id_fkey" FOREIGN KEY ("user_id") REFERENCES "LiteLLM_UserTable"("user_id") ON DELETE RESTRICT ON UPDATE CASCADE;
345
+
346
+ -- AddForeignKey
347
+ ALTER TABLE "LiteLLM_OrganizationMembership" ADD CONSTRAINT "LiteLLM_OrganizationMembership_organization_id_fkey" FOREIGN KEY ("organization_id") REFERENCES "LiteLLM_OrganizationTable"("organization_id") ON DELETE RESTRICT ON UPDATE CASCADE;
348
+
349
+ -- AddForeignKey
350
+ ALTER TABLE "LiteLLM_OrganizationMembership" ADD CONSTRAINT "LiteLLM_OrganizationMembership_budget_id_fkey" FOREIGN KEY ("budget_id") REFERENCES "LiteLLM_BudgetTable"("budget_id") ON DELETE SET NULL ON UPDATE CASCADE;
351
+
352
+ -- AddForeignKey
353
+ ALTER TABLE "LiteLLM_InvitationLink" ADD CONSTRAINT "LiteLLM_InvitationLink_user_id_fkey" FOREIGN KEY ("user_id") REFERENCES "LiteLLM_UserTable"("user_id") ON DELETE RESTRICT ON UPDATE CASCADE;
354
+
355
+ -- AddForeignKey
356
+ ALTER TABLE "LiteLLM_InvitationLink" ADD CONSTRAINT "LiteLLM_InvitationLink_created_by_fkey" FOREIGN KEY ("created_by") REFERENCES "LiteLLM_UserTable"("user_id") ON DELETE RESTRICT ON UPDATE CASCADE;
357
+
358
+ -- AddForeignKey
359
+ ALTER TABLE "LiteLLM_InvitationLink" ADD CONSTRAINT "LiteLLM_InvitationLink_updated_by_fkey" FOREIGN KEY ("updated_by") REFERENCES "LiteLLM_UserTable"("user_id") ON DELETE RESTRICT ON UPDATE CASCADE;
360
+
@@ -0,0 +1,33 @@
1
+ -- CreateTable
2
+ CREATE TABLE "LiteLLM_DailyUserSpend" (
3
+ "id" TEXT NOT NULL,
4
+ "user_id" TEXT NOT NULL,
5
+ "date" TEXT NOT NULL,
6
+ "api_key" TEXT NOT NULL,
7
+ "model" TEXT NOT NULL,
8
+ "model_group" TEXT,
9
+ "custom_llm_provider" TEXT,
10
+ "prompt_tokens" INTEGER NOT NULL DEFAULT 0,
11
+ "completion_tokens" INTEGER NOT NULL DEFAULT 0,
12
+ "spend" DOUBLE PRECISION NOT NULL DEFAULT 0.0,
13
+ "created_at" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
14
+ "updated_at" TIMESTAMP(3) NOT NULL,
15
+
16
+ CONSTRAINT "LiteLLM_DailyUserSpend_pkey" PRIMARY KEY ("id")
17
+ );
18
+
19
+ -- CreateIndex
20
+ CREATE INDEX "LiteLLM_DailyUserSpend_date_idx" ON "LiteLLM_DailyUserSpend"("date");
21
+
22
+ -- CreateIndex
23
+ CREATE INDEX "LiteLLM_DailyUserSpend_user_id_idx" ON "LiteLLM_DailyUserSpend"("user_id");
24
+
25
+ -- CreateIndex
26
+ CREATE INDEX "LiteLLM_DailyUserSpend_api_key_idx" ON "LiteLLM_DailyUserSpend"("api_key");
27
+
28
+ -- CreateIndex
29
+ CREATE INDEX "LiteLLM_DailyUserSpend_model_idx" ON "LiteLLM_DailyUserSpend"("model");
30
+
31
+ -- CreateIndex
32
+ CREATE UNIQUE INDEX "LiteLLM_DailyUserSpend_user_id_date_api_key_model_custom_ll_key" ON "LiteLLM_DailyUserSpend"("user_id", "date", "api_key", "model", "custom_llm_provider");
33
+
@@ -0,0 +1,3 @@
1
+ -- AlterTable
2
+ ALTER TABLE "LiteLLM_DailyUserSpend" ADD COLUMN "api_requests" INTEGER NOT NULL DEFAULT 0;
3
+
@@ -0,0 +1,14 @@
1
+ -- CreateEnum
2
+ CREATE TYPE "JobStatus" AS ENUM ('ACTIVE', 'INACTIVE');
3
+
4
+ -- CreateTable
5
+ CREATE TABLE "LiteLLM_CronJob" (
6
+ "cronjob_id" TEXT NOT NULL,
7
+ "pod_id" TEXT NOT NULL,
8
+ "status" "JobStatus" NOT NULL DEFAULT 'INACTIVE',
9
+ "last_updated" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
10
+ "ttl" TIMESTAMP(3) NOT NULL,
11
+
12
+ CONSTRAINT "LiteLLM_CronJob_pkey" PRIMARY KEY ("cronjob_id")
13
+ );
14
+
@@ -0,0 +1,4 @@
1
+ -- AlterTable
2
+ ALTER TABLE "LiteLLM_DailyUserSpend" ADD COLUMN "failed_requests" INTEGER NOT NULL DEFAULT 0,
3
+ ADD COLUMN "successful_requests" INTEGER NOT NULL DEFAULT 0;
4
+
@@ -0,0 +1,18 @@
1
+ -- CreateTable
2
+ CREATE TABLE "LiteLLM_ManagedFileTable" (
3
+ "id" TEXT NOT NULL,
4
+ "unified_file_id" TEXT NOT NULL,
5
+ "file_object" JSONB NOT NULL,
6
+ "model_mappings" JSONB NOT NULL,
7
+ "created_at" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
8
+ "updated_at" TIMESTAMP(3) NOT NULL,
9
+
10
+ CONSTRAINT "LiteLLM_ManagedFileTable_pkey" PRIMARY KEY ("id")
11
+ );
12
+
13
+ -- CreateIndex
14
+ CREATE UNIQUE INDEX "LiteLLM_ManagedFileTable_unified_file_id_key" ON "LiteLLM_ManagedFileTable"("unified_file_id");
15
+
16
+ -- CreateIndex
17
+ CREATE INDEX "LiteLLM_ManagedFileTable_unified_file_id_idx" ON "LiteLLM_ManagedFileTable"("unified_file_id");
18
+
@@ -0,0 +1,3 @@
1
+ -- AlterTable
2
+ ALTER TABLE "LiteLLM_TeamTable" ADD COLUMN "team_member_permissions" TEXT[] DEFAULT ARRAY[]::TEXT[];
3
+
@@ -0,0 +1,4 @@
1
+ -- AlterTable
2
+ ALTER TABLE "LiteLLM_DailyUserSpend" ADD COLUMN "cache_creation_input_tokens" INTEGER NOT NULL DEFAULT 0,
3
+ ADD COLUMN "cache_read_input_tokens" INTEGER NOT NULL DEFAULT 0;
4
+
@@ -0,0 +1,36 @@
1
+ -- CreateTable
2
+ CREATE TABLE "LiteLLM_DailyTeamSpend" (
3
+ "id" TEXT NOT NULL,
4
+ "team_id" TEXT NOT NULL,
5
+ "date" TEXT NOT NULL,
6
+ "api_key" TEXT NOT NULL,
7
+ "model" TEXT NOT NULL,
8
+ "model_group" TEXT,
9
+ "custom_llm_provider" TEXT,
10
+ "prompt_tokens" INTEGER NOT NULL DEFAULT 0,
11
+ "completion_tokens" INTEGER NOT NULL DEFAULT 0,
12
+ "spend" DOUBLE PRECISION NOT NULL DEFAULT 0.0,
13
+ "api_requests" INTEGER NOT NULL DEFAULT 0,
14
+ "successful_requests" INTEGER NOT NULL DEFAULT 0,
15
+ "failed_requests" INTEGER NOT NULL DEFAULT 0,
16
+ "created_at" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
17
+ "updated_at" TIMESTAMP(3) NOT NULL,
18
+
19
+ CONSTRAINT "LiteLLM_DailyTeamSpend_pkey" PRIMARY KEY ("id")
20
+ );
21
+
22
+ -- CreateIndex
23
+ CREATE INDEX "LiteLLM_DailyTeamSpend_date_idx" ON "LiteLLM_DailyTeamSpend"("date");
24
+
25
+ -- CreateIndex
26
+ CREATE INDEX "LiteLLM_DailyTeamSpend_team_id_idx" ON "LiteLLM_DailyTeamSpend"("team_id");
27
+
28
+ -- CreateIndex
29
+ CREATE INDEX "LiteLLM_DailyTeamSpend_api_key_idx" ON "LiteLLM_DailyTeamSpend"("api_key");
30
+
31
+ -- CreateIndex
32
+ CREATE INDEX "LiteLLM_DailyTeamSpend_model_idx" ON "LiteLLM_DailyTeamSpend"("model");
33
+
34
+ -- CreateIndex
35
+ CREATE UNIQUE INDEX "LiteLLM_DailyTeamSpend_team_id_date_api_key_model_custom_ll_key" ON "LiteLLM_DailyTeamSpend"("team_id", "date", "api_key", "model", "custom_llm_provider");
36
+
@@ -0,0 +1,45 @@
1
+ -- AlterTable
2
+ ALTER TABLE "LiteLLM_DailyTeamSpend" ADD COLUMN "cache_creation_input_tokens" INTEGER NOT NULL DEFAULT 0,
3
+ ADD COLUMN "cache_read_input_tokens" INTEGER NOT NULL DEFAULT 0;
4
+
5
+ -- CreateTable
6
+ CREATE TABLE "LiteLLM_DailyTagSpend" (
7
+ "id" TEXT NOT NULL,
8
+ "tag" TEXT NOT NULL,
9
+ "date" TEXT NOT NULL,
10
+ "api_key" TEXT NOT NULL,
11
+ "model" TEXT NOT NULL,
12
+ "model_group" TEXT,
13
+ "custom_llm_provider" TEXT,
14
+ "prompt_tokens" INTEGER NOT NULL DEFAULT 0,
15
+ "completion_tokens" INTEGER NOT NULL DEFAULT 0,
16
+ "cache_read_input_tokens" INTEGER NOT NULL DEFAULT 0,
17
+ "cache_creation_input_tokens" INTEGER NOT NULL DEFAULT 0,
18
+ "spend" DOUBLE PRECISION NOT NULL DEFAULT 0.0,
19
+ "api_requests" INTEGER NOT NULL DEFAULT 0,
20
+ "successful_requests" INTEGER NOT NULL DEFAULT 0,
21
+ "failed_requests" INTEGER NOT NULL DEFAULT 0,
22
+ "created_at" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
23
+ "updated_at" TIMESTAMP(3) NOT NULL,
24
+
25
+ CONSTRAINT "LiteLLM_DailyTagSpend_pkey" PRIMARY KEY ("id")
26
+ );
27
+
28
+ -- CreateIndex
29
+ CREATE UNIQUE INDEX "LiteLLM_DailyTagSpend_tag_key" ON "LiteLLM_DailyTagSpend"("tag");
30
+
31
+ -- CreateIndex
32
+ CREATE INDEX "LiteLLM_DailyTagSpend_date_idx" ON "LiteLLM_DailyTagSpend"("date");
33
+
34
+ -- CreateIndex
35
+ CREATE INDEX "LiteLLM_DailyTagSpend_tag_idx" ON "LiteLLM_DailyTagSpend"("tag");
36
+
37
+ -- CreateIndex
38
+ CREATE INDEX "LiteLLM_DailyTagSpend_api_key_idx" ON "LiteLLM_DailyTagSpend"("api_key");
39
+
40
+ -- CreateIndex
41
+ CREATE INDEX "LiteLLM_DailyTagSpend_model_idx" ON "LiteLLM_DailyTagSpend"("model");
42
+
43
+ -- CreateIndex
44
+ CREATE UNIQUE INDEX "LiteLLM_DailyTagSpend_tag_date_api_key_model_custom_llm_pro_key" ON "LiteLLM_DailyTagSpend"("tag", "date", "api_key", "model", "custom_llm_provider");
45
+
@@ -0,0 +1,3 @@
1
+ -- DropIndex
2
+ DROP INDEX "LiteLLM_DailyTagSpend_tag_key";
3
+
@@ -0,0 +1,3 @@
1
+ -- AlterTable
2
+ ALTER TABLE "LiteLLM_VerificationToken" ADD COLUMN "allowed_routes" TEXT[] DEFAULT ARRAY[]::TEXT[];
3
+
@@ -0,0 +1,4 @@
1
+ -- AlterTable
2
+ ALTER TABLE "LiteLLM_SpendLogs" ADD COLUMN "proxy_server_request" JSONB DEFAULT '{}',
3
+ ADD COLUMN "session_id" TEXT;
4
+
@@ -0,0 +1,14 @@
1
+ -- CreateTable
2
+ CREATE TABLE "LiteLLM_ManagedVectorStoresTable" (
3
+ "vector_store_id" TEXT NOT NULL,
4
+ "custom_llm_provider" TEXT NOT NULL,
5
+ "vector_store_name" TEXT,
6
+ "vector_store_description" TEXT,
7
+ "vector_store_metadata" JSONB,
8
+ "created_at" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
9
+ "updated_at" TIMESTAMP(3) NOT NULL,
10
+ "litellm_credential_name" TEXT,
11
+
12
+ CONSTRAINT "LiteLLM_ManagedVectorStoresTable_pkey" PRIMARY KEY ("vector_store_id")
13
+ );
14
+
@@ -0,0 +1,17 @@
1
+ -- CreateTable
2
+ CREATE TABLE "LiteLLM_MCPServerTable" (
3
+ "server_id" TEXT NOT NULL,
4
+ "alias" TEXT,
5
+ "description" TEXT,
6
+ "url" TEXT NOT NULL,
7
+ "transport" TEXT NOT NULL DEFAULT 'sse',
8
+ "spec_version" TEXT NOT NULL DEFAULT '2025-03-26',
9
+ "auth_type" TEXT,
10
+ "created_at" TIMESTAMP(3) DEFAULT CURRENT_TIMESTAMP,
11
+ "created_by" TEXT,
12
+ "updated_at" TIMESTAMP(3) DEFAULT CURRENT_TIMESTAMP,
13
+ "updated_by" TEXT,
14
+
15
+ CONSTRAINT "LiteLLM_MCPServerTable_pkey" PRIMARY KEY ("server_id")
16
+ );
17
+
@@ -0,0 +1,4 @@
1
+ -- Add health check fields to MCP server table
2
+ ALTER TABLE "LiteLLM_MCPServerTable" ADD COLUMN "status" TEXT DEFAULT 'unknown';
3
+ ALTER TABLE "LiteLLM_MCPServerTable" ADD COLUMN "last_health_check" TIMESTAMP(3);
4
+ ALTER TABLE "LiteLLM_MCPServerTable" ADD COLUMN "health_check_error" TEXT;
@@ -0,0 +1,32 @@
1
+ -- AlterTable
2
+ ALTER TABLE "LiteLLM_OrganizationTable" ADD COLUMN "object_permission_id" TEXT;
3
+
4
+ -- AlterTable
5
+ ALTER TABLE "LiteLLM_TeamTable" ADD COLUMN "object_permission_id" TEXT;
6
+
7
+ -- AlterTable
8
+ ALTER TABLE "LiteLLM_UserTable" ADD COLUMN "object_permission_id" TEXT;
9
+
10
+ -- AlterTable
11
+ ALTER TABLE "LiteLLM_VerificationToken" ADD COLUMN "object_permission_id" TEXT;
12
+
13
+ -- CreateTable
14
+ CREATE TABLE "LiteLLM_ObjectPermissionTable" (
15
+ "object_permission_id" TEXT NOT NULL,
16
+ "mcp_servers" TEXT[] DEFAULT ARRAY[]::TEXT[],
17
+
18
+ CONSTRAINT "LiteLLM_ObjectPermissionTable_pkey" PRIMARY KEY ("object_permission_id")
19
+ );
20
+
21
+ -- AddForeignKey
22
+ ALTER TABLE "LiteLLM_OrganizationTable" ADD CONSTRAINT "LiteLLM_OrganizationTable_object_permission_id_fkey" FOREIGN KEY ("object_permission_id") REFERENCES "LiteLLM_ObjectPermissionTable"("object_permission_id") ON DELETE SET NULL ON UPDATE CASCADE;
23
+
24
+ -- AddForeignKey
25
+ ALTER TABLE "LiteLLM_TeamTable" ADD CONSTRAINT "LiteLLM_TeamTable_object_permission_id_fkey" FOREIGN KEY ("object_permission_id") REFERENCES "LiteLLM_ObjectPermissionTable"("object_permission_id") ON DELETE SET NULL ON UPDATE CASCADE;
26
+
27
+ -- AddForeignKey
28
+ ALTER TABLE "LiteLLM_UserTable" ADD CONSTRAINT "LiteLLM_UserTable_object_permission_id_fkey" FOREIGN KEY ("object_permission_id") REFERENCES "LiteLLM_ObjectPermissionTable"("object_permission_id") ON DELETE SET NULL ON UPDATE CASCADE;
29
+
30
+ -- AddForeignKey
31
+ ALTER TABLE "LiteLLM_VerificationToken" ADD CONSTRAINT "LiteLLM_VerificationToken_object_permission_id_fkey" FOREIGN KEY ("object_permission_id") REFERENCES "LiteLLM_ObjectPermissionTable"("object_permission_id") ON DELETE SET NULL ON UPDATE CASCADE;
32
+
@@ -0,0 +1,3 @@
1
+ -- AlterTable
2
+ ALTER TABLE "LiteLLM_SpendLogs" ADD COLUMN "status" TEXT;
3
+