@@ -229,6 +229,7 @@ func NewApp(cfg *config.Config, db *pgxpool.Pool) (*App, error) {
229229
230230 feedbackRecordsRepo := repository .NewFeedbackRecordsRepository (db )
231231 embeddingsRepo := repository .NewEmbeddingsRepository (db )
232+ tenantDataRepo := repository .NewTenantDataRepository (db )
232233 embeddingProviderName , embeddingModel := embeddingProviderAndModel (cfg )
233234 embeddingModelForDB := embeddingModel
234235
@@ -317,6 +318,8 @@ func NewApp(cfg *config.Config, db *pgxpool.Pool) (*App, error) {
317318
318319 webhooksService := service .NewWebhooksService (webhooksRepo , messageManager , cfg .Webhook .MaxCount , cfg .Webhook .URLBlacklist )
319320 webhooksHandler := handlers .NewWebhooksHandler (webhooksService )
321+ tenantDataService := service .NewTenantDataService (tenantDataRepo )
322+ tenantDataHandler := handlers .NewTenantDataHandler (tenantDataService )
320323
321324 feedbackRecordsHandler := handlers .NewFeedbackRecordsHandler (feedbackRecordsService )
322325 healthHandler := handlers .NewHealthHandler ()
@@ -329,7 +332,7 @@ func NewApp(cfg *config.Config, db *pgxpool.Pool) (*App, error) {
329332 }
330333
331334 server := newHTTPServer (
332- cfg , healthHandler , openapiHandler , feedbackRecordsHandler , webhooksHandler , searchHandler ,
335+ cfg , healthHandler , openapiHandler , feedbackRecordsHandler , webhooksHandler , tenantDataHandler , searchHandler ,
333336 meterProvider , tracerProvider ,
334337 )
335338
@@ -353,6 +356,7 @@ func newHTTPServer(
353356 openapi * handlers.OpenAPIHandler ,
354357 feedback * handlers.FeedbackRecordsHandler ,
355358 webhooks * handlers.WebhooksHandler ,
359+ tenantData * handlers.TenantDataHandler ,
356360 search * handlers.SearchHandler ,
357361 meterProvider * sdkmetric.MeterProvider ,
358362 tracerProvider * sdktrace.TracerProvider ,
@@ -368,13 +372,14 @@ func newHTTPServer(
368372 protected .HandleFunc ("GET /v1/feedback-records/{id}" , feedback .Get )
369373 protected .HandleFunc ("PATCH /v1/feedback-records/{id}" , feedback .Update )
370374 protected .HandleFunc ("DELETE /v1/feedback-records/{id}" , feedback .Delete )
371- protected .HandleFunc ("DELETE /v1/feedback-records" , feedback .BulkDelete )
375+ protected .HandleFunc ("DELETE /v1/feedback-records" , feedback .DeleteByUser )
372376
373377 protected .HandleFunc ("POST /v1/webhooks" , webhooks .Create )
374378 protected .HandleFunc ("GET /v1/webhooks" , webhooks .List )
375379 protected .HandleFunc ("GET /v1/webhooks/{id}" , webhooks .Get )
376380 protected .HandleFunc ("PATCH /v1/webhooks/{id}" , webhooks .Update )
377381 protected .HandleFunc ("DELETE /v1/webhooks/{id}" , webhooks .Delete )
382+ protected .HandleFunc ("DELETE /v1/tenants/{tenant_id}/data" , tenantData .Delete )
378383
379384 // Search endpoints are always registered; when embeddings are disabled, the handler returns 503.
380385 protected .HandleFunc ("POST /v1/feedback-records/search/semantic" , search .SemanticSearch )
0 commit comments