sitellm-proxy-extras 0.0.1__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 (120) hide show
  1. sitellm_proxy_extras/__init__.py +0 -0
  2. sitellm_proxy_extras/_logging.py +40 -0
  3. sitellm_proxy_extras/migrations/20250326162113_baseline/migration.sql +430 -0
  4. sitellm_proxy_extras/migrations/20250326171002_add_daily_user_table/migration.sql +33 -0
  5. sitellm_proxy_extras/migrations/20250327180120_add_api_requests_to_daily_user_table/migration.sql +3 -0
  6. sitellm_proxy_extras/migrations/20250329084805_new_cron_job_table/migration.sql +14 -0
  7. sitellm_proxy_extras/migrations/20250331215456_track_success_and_failed_requests_daily_agg_table/migration.sql +4 -0
  8. sitellm_proxy_extras/migrations/20250411215431_add_managed_file_table/migration.sql +18 -0
  9. sitellm_proxy_extras/migrations/20250412081753_team_member_permissions/migration.sql +3 -0
  10. sitellm_proxy_extras/migrations/20250415151647_add_cache_read_write_tokens_daily_spend_transactions/migration.sql +4 -0
  11. sitellm_proxy_extras/migrations/20250415191926_add_daily_team_table/migration.sql +36 -0
  12. sitellm_proxy_extras/migrations/20250416115320_add_tag_table_to_db/migration.sql +45 -0
  13. sitellm_proxy_extras/migrations/20250416151339_drop_tag_uniqueness_requirement/migration.sql +3 -0
  14. sitellm_proxy_extras/migrations/20250416185146_add_allowed_routes_litellm_verification_token/migration.sql +3 -0
  15. sitellm_proxy_extras/migrations/20250425182129_add_session_id/migration.sql +4 -0
  16. sitellm_proxy_extras/migrations/20250430193429_add_managed_vector_stores/migration.sql +14 -0
  17. sitellm_proxy_extras/migrations/20250507161526_add_mcp_table_to_db/migration.sql +17 -0
  18. sitellm_proxy_extras/migrations/20250507161527_add_health_check_fields_to_mcp_servers/migration.sql +4 -0
  19. sitellm_proxy_extras/migrations/20250507184818_add_mcp_key_team_permission_mgmt/migration.sql +52 -0
  20. sitellm_proxy_extras/migrations/20250508072103_add_status_to_spendlogs/migration.sql +3 -0
  21. sitellm_proxy_extras/migrations/20250509141545_use_big_int_for_daily_spend_tables/migration.sql +27 -0
  22. sitellm_proxy_extras/migrations/20250510142544_add_session_id_index_spend_logs/migration.sql +3 -0
  23. sitellm_proxy_extras/migrations/20250514142245_add_guardrails_table/migration.sql +15 -0
  24. sitellm_proxy_extras/migrations/20250522223020_managed_object_table/migration.sql +32 -0
  25. sitellm_proxy_extras/migrations/20250526154401_allow_null_entity_id/migration.sql +9 -0
  26. sitellm_proxy_extras/migrations/20250528185438_add_vector_stores_to_object_permissions/migration.sql +3 -0
  27. sitellm_proxy_extras/migrations/20250603210143_cascade_budget_changes/migration.sql +16 -0
  28. sitellm_proxy_extras/migrations/20250618225828_add_health_check_table/migration.sql +28 -0
  29. sitellm_proxy_extras/migrations/20250625145206_cascade_budget_and_loosen_managed_file_json/migration.sql +19 -0
  30. sitellm_proxy_extras/migrations/20250625213625_add_status_to_managed_object_table/migration.sql +3 -0
  31. sitellm_proxy_extras/migrations/20250707212517_add_mcp_info_column_mcp_servers/migration.sql +3 -0
  32. sitellm_proxy_extras/migrations/20250707230009_add_mcp_namespaced_tool_name/migration.sql +42 -0
  33. sitellm_proxy_extras/migrations/20250711220620_add_stdio_mcp/migration.sql +10 -0
  34. sitellm_proxy_extras/migrations/20250718125714_add_litellm_params_to_vector_stores/migration.sql +3 -0
  35. sitellm_proxy_extras/migrations/20250802162330_prompt_table/migration.sql +15 -0
  36. sitellm_proxy_extras/migrations/20250806095134_rename_alias_to_server_name_mcp_table/migration.sql +10 -0
  37. sitellm_proxy_extras/migrations/20250918083359_drop_spec_version_column_from_mcp_table/migration.sql +8 -0
  38. sitellm_proxy_extras/migrations/20250926194702_unnamed_migration/migration.sql +7 -0
  39. sitellm_proxy_extras/migrations/20251003165142_add_allowed_tools_to_mcp/migration.sql +3 -0
  40. sitellm_proxy_extras/migrations/20251003190954_extra_headers_to_mcp_table/migration.sql +3 -0
  41. sitellm_proxy_extras/migrations/20251006143948_add_mcp_tool_permissions/migration.sql +3 -0
  42. sitellm_proxy_extras/migrations/20251011084309_add_tag_table/migration.sql +23 -0
  43. sitellm_proxy_extras/migrations/20251023141814_add_search_tool_table/migration.sql +15 -0
  44. sitellm_proxy_extras/migrations/20251031181430_add_cache_config_table/migration.sql +20 -0
  45. sitellm_proxy_extras/migrations/20251101131415_add_managed_vector_store_index_table/migration.sql +17 -0
  46. sitellm_proxy_extras/migrations/20251103072422_add_static_headers/migration.sql +2 -0
  47. sitellm_proxy_extras/migrations/20251104220043_add_credentials_to_mcp_servers/migration.sql +2 -0
  48. sitellm_proxy_extras/migrations/20251113000000_add_project_table/migration.sql +55 -0
  49. sitellm_proxy_extras/migrations/20251113000001_add_project_fields/migration.sql +5 -0
  50. sitellm_proxy_extras/migrations/20251114173537_add_request_id_to_daily_tag_spend/migration.sql +3 -0
  51. sitellm_proxy_extras/migrations/20251114180624_Add_org_usage_table/migration.sql +42 -0
  52. sitellm_proxy_extras/migrations/20251114182247_agents_table/migration.sql +17 -0
  53. sitellm_proxy_extras/migrations/20251119131227_add_prompt_versioning/migration.sql +12 -0
  54. sitellm_proxy_extras/migrations/20251122125322_Add organization_id to spend logs/migration.sql +3 -0
  55. sitellm_proxy_extras/migrations/20251204124859_add_end_user_spend_table/migration.sql +42 -0
  56. sitellm_proxy_extras/migrations/20251204142718_add_agent_permissions/migration.sql +7 -0
  57. sitellm_proxy_extras/migrations/20251209112246_add_ui_settings_table/migration.sql +10 -0
  58. sitellm_proxy_extras/migrations/20251210125210_add_storage_backend_to_managed_files/migration.sql +4 -0
  59. sitellm_proxy_extras/migrations/20251210205007_add_daily_agent_spend_table/migration.sql +45 -0
  60. sitellm_proxy_extras/migrations/20251211100212_schema_sync/migration.sql +3 -0
  61. sitellm_proxy_extras/migrations/20251219110931_add_deleted_keys_and_deleted_teams_tables/migration.sql +117 -0
  62. sitellm_proxy_extras/migrations/20251220144550_schema_update/migration.sql +20 -0
  63. sitellm_proxy_extras/migrations/20260102131258_add_metadata_urls_to_mcp_servers/migration.sql +5 -0
  64. sitellm_proxy_extras/migrations/20260105151539_add_allow_all_keys_to_mcp_servers/migration.sql +3 -0
  65. sitellm_proxy_extras/migrations/20260106155622_add_endpoint_to_daily_activity_tables/migration.sql +72 -0
  66. sitellm_proxy_extras/migrations/20260107111013_add_router_settings_to_keys_teams/migration.sql +6 -0
  67. sitellm_proxy_extras/migrations/20260108_add_user_email_lower_idx/migration.sql +9 -0
  68. sitellm_proxy_extras/migrations/20260116142756_update_deleted_keys_teams_table_routing_settings/migration.sql +6 -0
  69. sitellm_proxy_extras/migrations/20260123131407_add_policy_tables_and_policies_field/migration.sql +51 -0
  70. sitellm_proxy_extras/migrations/20260131150814_add_team_user_to_vector_stores/migration.sql +13 -0
  71. sitellm_proxy_extras/migrations/20260203120000_add_deprecated_verification_token_table/migration.sql +19 -0
  72. sitellm_proxy_extras/migrations/20260205091235_allow_team_guardrail_config/migration.sql +6 -0
  73. sitellm_proxy_extras/migrations/20260205144610_add_soft_budget_to_team_table/migration.sql +3 -0
  74. sitellm_proxy_extras/migrations/20260207093506_add_available_on_public_internet_to_mcp_servers/migration.sql +3 -0
  75. sitellm_proxy_extras/migrations/20260207110613_add_soft_budget_to_deleted_teams_table/migration.sql +3 -0
  76. sitellm_proxy_extras/migrations/20260209085821_add_verificationtoken_indexes/migration.sql +8 -0
  77. sitellm_proxy_extras/migrations/20260212103349_adjust_tags_policy_table/migration.sql +3 -0
  78. sitellm_proxy_extras/migrations/20260212143306_add_access_group_table/migration.sql +33 -0
  79. sitellm_proxy_extras/migrations/20260213105436_add_managed_vector_store_table/migration.sql +22 -0
  80. sitellm_proxy_extras/migrations/20260213170952_access_group_change_to_model_name/migration.sql +3 -0
  81. sitellm_proxy_extras/migrations/20260214094754_schema_sync/migration.sql +3 -0
  82. sitellm_proxy_extras/migrations/20260214163027_add_pipeline_to_policy_table/migration.sql +3 -0
  83. sitellm_proxy_extras/migrations/20260214185341_object_permissions_for_end_users/migration.sql +11 -0
  84. sitellm_proxy_extras/migrations/20260218231534_add_last_active_to_key_table/migration.sql +6 -0
  85. sitellm_proxy_extras/migrations/20260219105005_add_project_id_to_deleted_keys/migration.sql +3 -0
  86. sitellm_proxy_extras/migrations/20260219181415_baseline_diff/migration.sql +60 -0
  87. sitellm_proxy_extras/migrations/20260220124742_add_spec_path_to_mcp_servers/migration.sql +2 -0
  88. sitellm_proxy_extras/migrations/20260220153844_add_composite_index_aggregate_tables/migration.sql +36 -0
  89. sitellm_proxy_extras/migrations/20260221000000_ensure_project_id_verification_token/migration.sql +5 -0
  90. sitellm_proxy_extras/migrations/20260221183800_add_policy_versioning/migration.sql +17 -0
  91. sitellm_proxy_extras/migrations/20260222000000_add_batch_processed_to_managed_object_table/migration.sql +3 -0
  92. sitellm_proxy_extras/migrations/20260224201417_spend_logs_request_duration/migration.sql +3 -0
  93. sitellm_proxy_extras/migrations/20260224203854_add_agent_object_permissions_table/migration.sql +45 -0
  94. sitellm_proxy_extras/migrations/20260226000000_add_blocked_tools_to_object_permission/migration.sql +2 -0
  95. sitellm_proxy_extras/migrations/20260226120000_add_spend_log_tool_index/migration.sql +11 -0
  96. sitellm_proxy_extras/migrations/20260226202727_add_agent_id_to_delete_keys/migration.sql +3 -0
  97. sitellm_proxy_extras/migrations/20260228000000_add_claude_code_plugin_table/migration.sql +18 -0
  98. sitellm_proxy_extras/migrations/20260228100000_add_spend_logs_composite_index/migration.sql +2 -0
  99. sitellm_proxy_extras/migrations/20260228110000_mcp_default_public_internet_true/migration.sql +2 -0
  100. sitellm_proxy_extras/migrations/20260228170127_support_team_based_guardrails/migration.sql +8 -0
  101. sitellm_proxy_extras/migrations/20260303000000_update_tool_table_policies/migration.sql +25 -0
  102. sitellm_proxy_extras/migrations/20260304175016_add_spend_to_agent_table/migration.sql +3 -0
  103. sitellm_proxy_extras/migrations/20260305000000_add_agent_headers/migration.sql +5 -0
  104. sitellm_proxy_extras/migrations/20260305000000_add_rate_limits_to_agents/migration.sql +5 -0
  105. sitellm_proxy_extras/migrations/20260306175056_add_configs_override_table/migration.sql +3 -0
  106. sitellm_proxy_extras/migrations/20260306233848_schema_sync/migration.sql +62 -0
  107. sitellm_proxy_extras/migrations/20260309000000_add_mcp_approval_status/migration.sql +11 -0
  108. sitellm_proxy_extras/migrations/20260309000001_add_mcp_source_url/migration.sql +3 -0
  109. sitellm_proxy_extras/migrations/20260312124619_schema_sync/migration.sql +3 -0
  110. sitellm_proxy_extras/migrations/20260318140652_add_index_to_team_table/migration.sql +9 -0
  111. sitellm_proxy_extras/migrations/20260319000000_restore_mcp_approval_fields/migration.sql +13 -0
  112. sitellm_proxy_extras/migrations/20260321000000_add_mcp_toolsets/migration.sql +19 -0
  113. sitellm_proxy_extras/migrations/20260331000000_add_prompt_environment_and_created_by/migration.sql +12 -0
  114. sitellm_proxy_extras/migrations/migration_lock.toml +1 -0
  115. sitellm_proxy_extras/schema.prisma +1219 -0
  116. sitellm_proxy_extras/utils.py +586 -0
  117. sitellm_proxy_extras-0.0.1.dist-info/METADATA +44 -0
  118. sitellm_proxy_extras-0.0.1.dist-info/RECORD +120 -0
  119. sitellm_proxy_extras-0.0.1.dist-info/WHEEL +4 -0
  120. sitellm_proxy_extras-0.0.1.dist-info/licenses/LICENSE +26 -0
File without changes
@@ -0,0 +1,40 @@
1
+ import json
2
+ import logging
3
+ import os
4
+ from datetime import datetime
5
+
6
+
7
+ class JsonFormatter(logging.Formatter):
8
+ def formatTime(self, record, datefmt=None):
9
+ dt = datetime.fromtimestamp(record.created)
10
+ return dt.isoformat()
11
+
12
+ def format(self, record):
13
+ json_record = {
14
+ "message": record.getMessage(),
15
+ "level": record.levelname,
16
+ "timestamp": self.formatTime(record),
17
+ }
18
+ if record.exc_info:
19
+ json_record["stacktrace"] = self.formatException(record.exc_info)
20
+ return json.dumps(json_record)
21
+
22
+
23
+ def _is_json_enabled():
24
+ try:
25
+ import sitellm
26
+ return getattr(sitellm, 'json_logs', False)
27
+ except (ImportError, AttributeError):
28
+ return os.getenv("JSON_LOGS", "false").lower() == "true"
29
+
30
+
31
+ logger = logging.getLogger("litellm_proxy_extras")
32
+
33
+ if not logger.handlers:
34
+ handler = logging.StreamHandler()
35
+ if _is_json_enabled():
36
+ handler.setFormatter(JsonFormatter())
37
+ else:
38
+ handler.setFormatter(logging.Formatter("%(asctime)s - %(name)s - %(levelname)s - %(message)s"))
39
+ logger.addHandler(handler)
40
+ logger.setLevel(logging.INFO)
@@ -0,0 +1,430 @@
1
+ -- CreateTable
2
+ CREATE TABLE IF NOT EXISTS "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 IF NOT EXISTS "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 IF NOT EXISTS "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 IF NOT EXISTS "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 IF NOT EXISTS "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 IF NOT EXISTS "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 IF NOT EXISTS "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 IF NOT EXISTS "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 IF NOT EXISTS "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 IF NOT EXISTS "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 IF NOT EXISTS "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 IF NOT EXISTS "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 IF NOT EXISTS "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 IF NOT EXISTS "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 IF NOT EXISTS "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 IF NOT EXISTS "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 IF NOT EXISTS "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 IF NOT EXISTS "LiteLLM_CredentialsTable_credential_name_key" ON "LiteLLM_CredentialsTable"("credential_name");
303
+
304
+ -- CreateIndex
305
+ CREATE UNIQUE INDEX IF NOT EXISTS "LiteLLM_TeamTable_model_id_key" ON "LiteLLM_TeamTable"("model_id");
306
+
307
+ -- CreateIndex
308
+ CREATE UNIQUE INDEX IF NOT EXISTS "LiteLLM_UserTable_sso_user_id_key" ON "LiteLLM_UserTable"("sso_user_id");
309
+
310
+ -- CreateIndex
311
+ CREATE INDEX IF NOT EXISTS "LiteLLM_SpendLogs_startTime_idx" ON "LiteLLM_SpendLogs"("startTime");
312
+
313
+ -- CreateIndex
314
+ CREATE INDEX IF NOT EXISTS "LiteLLM_SpendLogs_end_user_idx" ON "LiteLLM_SpendLogs"("end_user");
315
+
316
+ -- CreateIndex
317
+ CREATE UNIQUE INDEX IF NOT EXISTS "LiteLLM_OrganizationMembership_user_id_organization_id_key" ON "LiteLLM_OrganizationMembership"("user_id", "organization_id");
318
+
319
+ -- AddForeignKey
320
+ DO $$
321
+ BEGIN
322
+ IF NOT EXISTS (SELECT 1 FROM pg_constraint WHERE conname = 'LiteLLM_OrganizationTable_budget_id_fkey') THEN
323
+ 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;
324
+ END IF;
325
+ END $$;
326
+
327
+ -- AddForeignKey
328
+ DO $$
329
+ BEGIN
330
+ IF NOT EXISTS (SELECT 1 FROM pg_constraint WHERE conname = 'LiteLLM_TeamTable_organization_id_fkey') THEN
331
+ 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;
332
+ END IF;
333
+ END $$;
334
+
335
+ -- AddForeignKey
336
+ DO $$
337
+ BEGIN
338
+ IF NOT EXISTS (SELECT 1 FROM pg_constraint WHERE conname = 'LiteLLM_TeamTable_model_id_fkey') THEN
339
+ 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;
340
+ END IF;
341
+ END $$;
342
+
343
+ -- AddForeignKey
344
+ DO $$
345
+ BEGIN
346
+ IF NOT EXISTS (SELECT 1 FROM pg_constraint WHERE conname = 'LiteLLM_UserTable_organization_id_fkey') THEN
347
+ 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;
348
+ END IF;
349
+ END $$;
350
+
351
+ -- AddForeignKey
352
+ DO $$
353
+ BEGIN
354
+ IF NOT EXISTS (SELECT 1 FROM pg_constraint WHERE conname = 'LiteLLM_VerificationToken_budget_id_fkey') THEN
355
+ 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;
356
+ END IF;
357
+ END $$;
358
+
359
+ -- AddForeignKey
360
+ DO $$
361
+ BEGIN
362
+ IF NOT EXISTS (SELECT 1 FROM pg_constraint WHERE conname = 'LiteLLM_VerificationToken_organization_id_fkey') THEN
363
+ 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;
364
+ END IF;
365
+ END $$;
366
+
367
+ -- AddForeignKey
368
+ DO $$
369
+ BEGIN
370
+ IF NOT EXISTS (SELECT 1 FROM pg_constraint WHERE conname = 'LiteLLM_EndUserTable_budget_id_fkey') THEN
371
+ 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;
372
+ END IF;
373
+ END $$;
374
+
375
+ -- AddForeignKey
376
+ DO $$
377
+ BEGIN
378
+ IF NOT EXISTS (SELECT 1 FROM pg_constraint WHERE conname = 'LiteLLM_TeamMembership_budget_id_fkey') THEN
379
+ 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;
380
+ END IF;
381
+ END $$;
382
+
383
+ -- AddForeignKey
384
+ DO $$
385
+ BEGIN
386
+ IF NOT EXISTS (SELECT 1 FROM pg_constraint WHERE conname = 'LiteLLM_OrganizationMembership_user_id_fkey') THEN
387
+ 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;
388
+ END IF;
389
+ END $$;
390
+
391
+ -- AddForeignKey
392
+ DO $$
393
+ BEGIN
394
+ IF NOT EXISTS (SELECT 1 FROM pg_constraint WHERE conname = 'LiteLLM_OrganizationMembership_organization_id_fkey') THEN
395
+ 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;
396
+ END IF;
397
+ END $$;
398
+
399
+ -- AddForeignKey
400
+ DO $$
401
+ BEGIN
402
+ IF NOT EXISTS (SELECT 1 FROM pg_constraint WHERE conname = 'LiteLLM_OrganizationMembership_budget_id_fkey') THEN
403
+ 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;
404
+ END IF;
405
+ END $$;
406
+
407
+ -- AddForeignKey
408
+ DO $$
409
+ BEGIN
410
+ IF NOT EXISTS (SELECT 1 FROM pg_constraint WHERE conname = 'LiteLLM_InvitationLink_user_id_fkey') THEN
411
+ 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;
412
+ END IF;
413
+ END $$;
414
+
415
+ -- AddForeignKey
416
+ DO $$
417
+ BEGIN
418
+ IF NOT EXISTS (SELECT 1 FROM pg_constraint WHERE conname = 'LiteLLM_InvitationLink_created_by_fkey') THEN
419
+ 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;
420
+ END IF;
421
+ END $$;
422
+
423
+ -- AddForeignKey
424
+ DO $$
425
+ BEGIN
426
+ IF NOT EXISTS (SELECT 1 FROM pg_constraint WHERE conname = 'LiteLLM_InvitationLink_updated_by_fkey') THEN
427
+ 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;
428
+ END IF;
429
+ END $$;
430
+
@@ -0,0 +1,33 @@
1
+ -- CreateTable
2
+ CREATE TABLE IF NOT EXISTS "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 IF NOT EXISTS "LiteLLM_DailyUserSpend_date_idx" ON "LiteLLM_DailyUserSpend"("date");
21
+
22
+ -- CreateIndex
23
+ CREATE INDEX IF NOT EXISTS "LiteLLM_DailyUserSpend_user_id_idx" ON "LiteLLM_DailyUserSpend"("user_id");
24
+
25
+ -- CreateIndex
26
+ CREATE INDEX IF NOT EXISTS "LiteLLM_DailyUserSpend_api_key_idx" ON "LiteLLM_DailyUserSpend"("api_key");
27
+
28
+ -- CreateIndex
29
+ CREATE INDEX IF NOT EXISTS "LiteLLM_DailyUserSpend_model_idx" ON "LiteLLM_DailyUserSpend"("model");
30
+
31
+ -- CreateIndex
32
+ CREATE UNIQUE INDEX IF NOT EXISTS "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 IF NOT EXISTS "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 IF NOT EXISTS "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 IF NOT EXISTS "failed_requests" INTEGER NOT NULL DEFAULT 0,
3
+ ADD COLUMN IF NOT EXISTS "successful_requests" INTEGER NOT NULL DEFAULT 0;
4
+
@@ -0,0 +1,18 @@
1
+ -- CreateTable
2
+ CREATE TABLE IF NOT EXISTS "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 IF NOT EXISTS "LiteLLM_ManagedFileTable_unified_file_id_key" ON "LiteLLM_ManagedFileTable"("unified_file_id");
15
+
16
+ -- CreateIndex
17
+ CREATE INDEX IF NOT EXISTS "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 IF NOT EXISTS "team_member_permissions" TEXT[] DEFAULT ARRAY[]::TEXT[];
3
+
@@ -0,0 +1,4 @@
1
+ -- AlterTable
2
+ ALTER TABLE "LiteLLM_DailyUserSpend" ADD COLUMN IF NOT EXISTS "cache_creation_input_tokens" INTEGER NOT NULL DEFAULT 0,
3
+ ADD COLUMN IF NOT EXISTS "cache_read_input_tokens" INTEGER NOT NULL DEFAULT 0;
4
+
@@ -0,0 +1,36 @@
1
+ -- CreateTable
2
+ CREATE TABLE IF NOT EXISTS "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 IF NOT EXISTS "LiteLLM_DailyTeamSpend_date_idx" ON "LiteLLM_DailyTeamSpend"("date");
24
+
25
+ -- CreateIndex
26
+ CREATE INDEX IF NOT EXISTS "LiteLLM_DailyTeamSpend_team_id_idx" ON "LiteLLM_DailyTeamSpend"("team_id");
27
+
28
+ -- CreateIndex
29
+ CREATE INDEX IF NOT EXISTS "LiteLLM_DailyTeamSpend_api_key_idx" ON "LiteLLM_DailyTeamSpend"("api_key");
30
+
31
+ -- CreateIndex
32
+ CREATE INDEX IF NOT EXISTS "LiteLLM_DailyTeamSpend_model_idx" ON "LiteLLM_DailyTeamSpend"("model");
33
+
34
+ -- CreateIndex
35
+ CREATE UNIQUE INDEX IF NOT EXISTS "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 IF NOT EXISTS "cache_creation_input_tokens" INTEGER NOT NULL DEFAULT 0,
3
+ ADD COLUMN IF NOT EXISTS "cache_read_input_tokens" INTEGER NOT NULL DEFAULT 0;
4
+
5
+ -- CreateTable
6
+ CREATE TABLE IF NOT EXISTS "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 IF NOT EXISTS "LiteLLM_DailyTagSpend_tag_key" ON "LiteLLM_DailyTagSpend"("tag");
30
+
31
+ -- CreateIndex
32
+ CREATE INDEX IF NOT EXISTS "LiteLLM_DailyTagSpend_date_idx" ON "LiteLLM_DailyTagSpend"("date");
33
+
34
+ -- CreateIndex
35
+ CREATE INDEX IF NOT EXISTS "LiteLLM_DailyTagSpend_tag_idx" ON "LiteLLM_DailyTagSpend"("tag");
36
+
37
+ -- CreateIndex
38
+ CREATE INDEX IF NOT EXISTS "LiteLLM_DailyTagSpend_api_key_idx" ON "LiteLLM_DailyTagSpend"("api_key");
39
+
40
+ -- CreateIndex
41
+ CREATE INDEX IF NOT EXISTS "LiteLLM_DailyTagSpend_model_idx" ON "LiteLLM_DailyTagSpend"("model");
42
+
43
+ -- CreateIndex
44
+ CREATE UNIQUE INDEX IF NOT EXISTS "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 IF EXISTS "LiteLLM_DailyTagSpend_tag_key";
3
+
@@ -0,0 +1,3 @@
1
+ -- AlterTable
2
+ ALTER TABLE "LiteLLM_VerificationToken" ADD COLUMN IF NOT EXISTS "allowed_routes" TEXT[] DEFAULT ARRAY[]::TEXT[];
3
+
@@ -0,0 +1,4 @@
1
+ -- AlterTable
2
+ ALTER TABLE "LiteLLM_SpendLogs" ADD COLUMN IF NOT EXISTS "proxy_server_request" JSONB DEFAULT '{}',
3
+ ADD COLUMN IF NOT EXISTS "session_id" TEXT;
4
+