// This is your Prisma schema file, // learn more about it in the docs: https://pris.ly/d/prisma-schema // Looking for ways to speed up your queries, or scale easily with your serverless or edge functions? // Try Prisma Accelerate: https://pris.ly/cli/accelerate-init generator client { provider = "prisma-client-js" } datasource db { provider = "postgresql" url = env("DATABASE_CONNECTION_URI") directUrl = env("DATABASE_DIRECT_URL") } enum InstanceConnectionStatus { open close connecting } enum DeviceMessage { ios android web unknown desktop } enum SessionStatus { opened closed paused } enum TriggerType { all keyword none advanced } enum TriggerOperator { contains equals startsWith endsWith regex } enum OpenaiBotType { assistant chatCompletion } enum DifyBotType { chatBot textGenerator agent workflow } model Instance { id String @id @default(cuid()) name String @unique @db.VarChar(255) connectionStatus InstanceConnectionStatus @default(open) @map("connection_status") ownerJid String? @map("owner_jid") @db.VarChar(100) profileName String? @map("profile_name") @db.VarChar(100) profilePicUrl String? @map("profile_pic_url") @db.VarChar(500) integration String? @db.VarChar(100) number String? @db.VarChar(100) businessId String? @map("business_id") @db.VarChar(100) token String? @db.VarChar(255) clientName String? @map("client_name") @db.VarChar(100) disconnectionReasonCode Int? @map("disconnection_reason_code") @db.Integer disconnectionObject Json? @map("disconnection_object") @db.JsonB disconnectionAt DateTime? @map("disconnection_at") @db.Timestamptz() createdAt DateTime? @default(now()) @map("created_at") @db.Timestamptz() updatedAt DateTime? @updatedAt @map("updated_at") @db.Timestamptz() Chat Chat[] Contact Contact[] Message Message[] Webhook Webhook? Chatwoot Chatwoot? Label Label[] Proxy Proxy? Setting Setting? Rabbitmq Rabbitmq? Sqs Sqs? Websocket Websocket? Typebot Typebot[] Session Session? MessageUpdate MessageUpdate[] TypebotSetting TypebotSetting? Media Media[] OpenaiCreds OpenaiCreds[] OpenaiBot OpenaiBot[] OpenaiSetting OpenaiSetting? Template Template[] Dify Dify[] DifySetting DifySetting? integrationSessions IntegrationSession[] EvolutionBot EvolutionBot[] EvolutionBotSetting EvolutionBotSetting? Flowise Flowise[] FlowiseSetting FlowiseSetting? @@map("instances") } model Session { id String @id @default(cuid()) sessionId String @unique @map("session_id") creds String? @db.Text createdAt DateTime @default(now()) @map("created_at") @db.Timestamptz() Instance Instance @relation(fields: [sessionId], references: [id], onDelete: Cascade) @@map("sessions") } model Chat { id String @id @default(cuid()) remoteJid String @map("remote_jid") @db.VarChar(100) name String? @db.VarChar(100) labels Json? @db.JsonB createdAt DateTime? @default(now()) @map("created_at") @db.Timestamptz() updatedAt DateTime? @updatedAt @map("updated_at") @db.Timestamptz() instanceId String @map("instance_id") Instance Instance @relation(fields: [instanceId], references: [id], onDelete: Cascade) @@map("chats") } model Contact { id String @id @default(cuid()) remoteJid String @map("remote_jid") @db.VarChar(100) pushName String? @map("push_name") @db.VarChar(100) profilePicUrl String? @map("profile_pic_url") @db.VarChar(500) createdAt DateTime? @default(now()) @map("created_at") @db.Timestamptz() updatedAt DateTime? @updatedAt @map("updated_at") @db.Timestamptz() instanceId String @map("instance_id") Instance Instance @relation(fields: [instanceId], references: [id], onDelete: Cascade) @@unique([remoteJid, instanceId]) @@map("contacts") } model Message { id String @id @default(cuid()) key Json @db.JsonB pushName String? @map("push_name") @db.VarChar(100) participant String? @db.VarChar(100) messageType String @map("message_type") @db.VarChar(100) message Json @db.JsonB contextInfo Json? @map("context_info") @db.JsonB messageTimestamp Int @map("message_timestamp") @db.Integer chatwootMessageId Int? @map("chatwoot_message_id") @db.Integer chatwootInboxId Int? @map("chatwoot_inbox_id") @db.Integer chatwootConversationId Int? @map("chatwoot_conversation_id") @db.Integer chatwootContactInboxSourceId String? @map("chatwoot_contact_inbox_source_id") @db.VarChar(100) chatwootIsRead Boolean? @map("chatwoot_is_read") @db.Boolean webhookUrl String? @map("webhook_url") @db.VarChar(500) source DeviceMessage instanceId String @map("instance_id") Instance Instance @relation(fields: [instanceId], references: [id], onDelete: Cascade) MessageUpdate MessageUpdate[] Media Media? sessionId String? @map("session_id") session IntegrationSession? @relation(fields: [sessionId], references: [id]) @@map("messages") } model MessageUpdate { id String @id @default(cuid()) keyId String @map("key_id") @db.VarChar(100) remoteJid String @map("remote_jid") @db.VarChar(100) fromMe Boolean @map("from_me") @db.Boolean participant String? @db.VarChar(100) pollUpdates Json? @map("poll_updates") @db.JsonB status String @db.VarChar(30) messageId String @map("message_id") Message Message @relation(fields: [messageId], references: [id], onDelete: Cascade) instanceId String @map("instance_id") Instance Instance @relation(fields: [instanceId], references: [id], onDelete: Cascade) @@map("message_updates") } model Webhook { id String @id @default(cuid()) url String @db.VarChar(500) enabled Boolean? @default(true) @db.Boolean events Json? @db.JsonB webhookByEvents Boolean? @default(false) @map("webhook_by_events") @db.Boolean webhookBase64 Boolean? @default(false) @map("webhook_base64") @db.Boolean createdAt DateTime? @default(now()) @map("created_at") @db.Timestamptz() updatedAt DateTime @updatedAt @map("updated_at") @db.Timestamptz() instanceId String @unique @map("instance_id") Instance Instance @relation(fields: [instanceId], references: [id], onDelete: Cascade) @@map("webhooks") } model Chatwoot { id String @id @default(cuid()) enabled Boolean? @default(true) @db.Boolean accountId String? @map("account_id") @db.VarChar(100) token String? @db.VarChar(100) url String? @db.VarChar(500) nameInbox String? @map("name_inbox") @db.VarChar(100) signMsg Boolean? @default(false) @map("sign_msg") @db.Boolean signDelimiter String? @map("sign_delimiter") @db.VarChar(100) number String? @db.VarChar(100) reopenConversation Boolean? @default(false) @map("reopen_conversation") @db.Boolean conversationPending Boolean? @default(false) @map("conversation_pending") @db.Boolean mergeBrazilContacts Boolean? @default(false) @map("merge_brazil_contacts") @db.Boolean importContacts Boolean? @default(false) @map("import_contacts") @db.Boolean importMessages Boolean? @default(false) @map("import_messages") @db.Boolean daysLimitImportMessages Int? @map("days_limit_import_messages") @db.Integer organization String? @db.VarChar(100) logo String? @db.VarChar(500) ignoreJids Json? @map("ignore_jids") createdAt DateTime? @default(now()) @map("created_at") @db.Timestamptz() updatedAt DateTime @updatedAt @map("updated_at") @db.Timestamptz() instanceId String @unique @map("instance_id") Instance Instance @relation(fields: [instanceId], references: [id], onDelete: Cascade) @@map("chatwoots") } model Label { id String @id @default(cuid()) labelId String? @map("label_id") @db.VarChar(100) name String @db.VarChar(100) color String @db.VarChar(100) predefinedId String? @map("predefined_id") @db.VarChar(100) createdAt DateTime? @default(now()) @map("created_at") @db.Timestamptz() updatedAt DateTime @updatedAt @map("updated_at") @db.Timestamptz() instanceId String @map("instance_id") Instance Instance @relation(fields: [instanceId], references: [id], onDelete: Cascade) @@unique([labelId, instanceId]) @@map("labels") } model Proxy { id String @id @default(cuid()) enabled Boolean @default(false) @db.Boolean host String @db.VarChar(100) port String @db.VarChar(100) protocol String @db.VarChar(100) username String @db.VarChar(100) password String @db.VarChar(100) createdAt DateTime? @default(now()) @map("created_at") @db.Timestamptz() updatedAt DateTime @updatedAt @map("updated_at") @db.Timestamptz() instanceId String @unique @map("instance_id") Instance Instance @relation(fields: [instanceId], references: [id], onDelete: Cascade) @@map("proxies") } model Setting { id String @id @default(cuid()) rejectCall Boolean @default(false) @map("reject_call") @db.Boolean msgCall String? @map("msg_call") @db.VarChar(100) groupsIgnore Boolean @default(false) @map("groups_ignore") @db.Boolean alwaysOnline Boolean @default(false) @map("always_online") @db.Boolean readMessages Boolean @default(false) @map("read_messages") @db.Boolean readStatus Boolean @default(false) @map("read_status") @db.Boolean syncFullHistory Boolean @default(false) @map("sync_full_history") @db.Boolean createdAt DateTime? @default(now()) @map("created_at") @db.Timestamptz() updatedAt DateTime @updatedAt @map("updated_at") @db.Timestamptz() instanceId String @unique @map("instance_id") Instance Instance @relation(fields: [instanceId], references: [id], onDelete: Cascade) @@map("settings") } model Rabbitmq { id String @id @default(cuid()) enabled Boolean @default(false) @db.Boolean events Json @db.JsonB createdAt DateTime? @default(now()) @map("created_at") @db.Timestamptz() updatedAt DateTime @updatedAt @map("updated_at") @db.Timestamptz() instanceId String @unique @map("instance_id") Instance Instance @relation(fields: [instanceId], references: [id], onDelete: Cascade) @@map("rabbitmqs") } model Sqs { id String @id @default(cuid()) enabled Boolean @default(false) @db.Boolean events Json @db.JsonB createdAt DateTime? @default(now()) @map("created_at") @db.Timestamptz() updatedAt DateTime @updatedAt @map("updated_at") @db.Timestamptz() instanceId String @unique @map("instance_id") Instance Instance @relation(fields: [instanceId], references: [id], onDelete: Cascade) @@map("sqss") } model Websocket { id String @id @default(cuid()) enabled Boolean @default(false) @db.Boolean events Json @db.JsonB createdAt DateTime? @default(now()) @map("created_at") @db.Timestamptz() updatedAt DateTime @updatedAt @map("updated_at") @db.Timestamptz() instanceId String @unique @map("instance_id") Instance Instance @relation(fields: [instanceId], references: [id], onDelete: Cascade) @@map("websockets") } model Typebot { id String @id @default(cuid()) enabled Boolean @default(true) @db.Boolean description String? @db.VarChar(255) url String @db.VarChar(500) typebot String @db.VarChar(100) expire Int? @default(0) @db.Integer keywordFinish String? @map("keyword_finish") @db.VarChar(100) delayMessage Int? @map("delay_message") @db.Integer unknownMessage String? @map("unknown_message") @db.VarChar(100) listeningFromMe Boolean? @default(false) @map("listening_from_me") @db.Boolean stopBotFromMe Boolean? @default(false) @map("stop_bot_from_me") @db.Boolean keepOpen Boolean? @default(false) @map("keep_open") @db.Boolean debounceTime Int? @map("debounce_time") @db.Integer createdAt DateTime? @default(now()) @map("created_at") @db.Timestamptz() updatedAt DateTime? @updatedAt @map("updated_at") @db.Timestamptz() ignoreJids Json? @map("ignore_jids") triggerType TriggerType? @map("trigger_type") triggerOperator TriggerOperator? @map("trigger_operator") triggerValue String? @map("trigger_value") instanceId String @map("instance_id") Instance Instance @relation(fields: [instanceId], references: [id], onDelete: Cascade) TypebotSetting TypebotSetting[] @@map("typebots") } model TypebotSetting { id String @id @default(cuid()) expire Int? @default(0) @db.Integer keywordFinish String? @map("keyword_finish") @db.VarChar(100) delayMessage Int? @map("delay_message") @db.Integer unknownMessage String? @map("unknown_message") @db.VarChar(100) listeningFromMe Boolean? @default(false) @map("listening_from_me") @db.Boolean stopBotFromMe Boolean? @default(false) @map("stop_bot_from_me") @db.Boolean keepOpen Boolean? @default(false) @map("keep_open") @db.Boolean debounceTime Int? @map("debounce_time") @db.Integer ignoreJids Json? @map("ignore_jids") createdAt DateTime? @default(now()) @map("created_at") @db.Timestamptz() updatedAt DateTime @updatedAt @map("updated_at") @db.Timestamptz() typebotIdFallback String? @map("typebot_id_fallback") @db.VarChar(100) Fallback Typebot? @relation(fields: [typebotIdFallback], references: [id]) instanceId String @unique @map("instance_id") Instance Instance @relation(fields: [instanceId], references: [id], onDelete: Cascade) @@map("typebot_settings") } model Media { id String @id @default(cuid()) fileName String @unique @map("file_name") @db.VarChar(500) type String @db.VarChar(100) mimetype String @map("mime_type") @db.VarChar(100) createdAt DateTime? @default(now()) @map("created_at") @db.Date messageId String @unique @map("message_id") Message Message @relation(fields: [messageId], references: [id], onDelete: Cascade) instanceId String @map("instance_id") Instance Instance @relation(fields: [instanceId], references: [id], onDelete: Cascade) @@map("medias") } model OpenaiCreds { id String @id @default(cuid()) name String? @unique @db.VarChar(255) apiKey String? @unique @map("api_key") @db.VarChar(255) createdAt DateTime? @default(now()) @map("created_at") @db.Timestamptz() updatedAt DateTime @updatedAt @map("updated_at") @db.Timestamptz() instanceId String @map("instance_id") Instance Instance @relation(fields: [instanceId], references: [id], onDelete: Cascade) OpenaiAssistant OpenaiBot[] OpenaiSetting OpenaiSetting? @@map("openai_creds") } model OpenaiBot { id String @id @default(cuid()) enabled Boolean @default(true) @db.Boolean description String? @db.VarChar(255) assistantId String? @map("assistant_id") @db.VarChar(255) functionUrl String? @map("function_url") @db.VarChar(500) model String? @db.VarChar(100) systemMessages Json? @map("system_messages") @db.JsonB assistantMessages Json? @map("assistant_messages") @db.JsonB userMessages Json? @map("user_messages") @db.JsonB maxTokens Int? @map("max_tokens") @db.Integer expire Int? @default(0) @db.Integer keywordFinish String? @map("keyword_finish") @db.VarChar(100) delayMessage Int? @map("delay_message") @db.Integer unknownMessage String? @map("unknown_message") @db.VarChar(100) listeningFromMe Boolean? @default(false) @map("listening_from_me") @db.Boolean stopBotFromMe Boolean? @default(false) @map("stop_bot_from_me") @db.Boolean keepOpen Boolean? @default(false) @map("keep_open") @db.Boolean debounceTime Int? @map("debounce_time") @db.Integer ignoreJids Json? @map("ignore_jids") triggerType TriggerType? @map("trigger_type") triggerOperator TriggerOperator? @map("trigger_operator") triggerValue String? @map("trigger_value") createdAt DateTime? @default(now()) @map("created_at") @db.Timestamptz() updatedAt DateTime @updatedAt @map("updated_at") @db.Timestamptz() botType OpenaiBotType @map("bot_type") openaiCredsId String @map("openai_creds_id") OpenaiCreds OpenaiCreds @relation(fields: [openaiCredsId], references: [id], onDelete: Cascade) instanceId String @map("instance_id") Instance Instance @relation(fields: [instanceId], references: [id], onDelete: Cascade) OpenaiSetting OpenaiSetting[] @@map("openai_bots") } model IntegrationSession { id String @id @default(cuid()) sessionId String @unique @map("session_id") @db.VarChar(255) remoteJid String @map("remote_jid") @db.VarChar(100) pushName String? @map("push_name") status SessionStatus awaitUser Boolean @default(false) @map("await_user") @db.Boolean context Json? type String? @db.VarChar(100) createdAt DateTime? @default(now()) @map("created_at") @db.Timestamptz() updatedAt DateTime @updatedAt @map("updated_at") @db.Timestamptz() parameters Json? @db.JsonB botId String? instanceId String @map("instance_id") Instance Instance @relation(fields: [instanceId], references: [id], onDelete: Cascade) Message Message[] @@map("integration_sessions") } model OpenaiSetting { id String @id @default(cuid()) expire Int? @default(0) @db.Integer keywordFinish String? @map("keyword_finish") @db.VarChar(100) delayMessage Int? @map("delay_message") @db.Integer unknownMessage String? @map("unknown_message") @db.VarChar(100) listeningFromMe Boolean? @default(false) @map("listening_from_me") @db.Boolean stopBotFromMe Boolean? @default(false) @map("stop_bot_from_me") @db.Boolean keepOpen Boolean? @default(false) @map("keep_open") @db.Boolean debounceTime Int? @map("debounce_time") @db.Integer ignoreJids Json? @map("ignore_jids") speechToText Boolean? @default(false) @map("speech_to_text") @db.Boolean createdAt DateTime? @default(now()) @map("created_at") @db.Timestamptz() updatedAt DateTime @updatedAt @map("updated_at") @db.Timestamptz() openaiCredsId String @unique @map("openai_creds_id") OpenaiCreds OpenaiCreds? @relation(fields: [openaiCredsId], references: [id]) openaiIdFallback String? @map("openai_id_fallback") @db.VarChar(100) Fallback OpenaiBot? @relation(fields: [openaiIdFallback], references: [id]) instanceId String @unique @map("instance_id") Instance Instance @relation(fields: [instanceId], references: [id], onDelete: Cascade) @@map("openai_settings") } model Template { id String @id @default(cuid()) templateId String @unique @map("template_id") @db.VarChar(255) name String @unique @db.VarChar(255) template Json @db.JsonB webhookUrl String? @map("webhook_url") @db.VarChar(500) createdAt DateTime? @default(now()) @map("created_at") @db.Timestamptz() updatedAt DateTime @updatedAt @map("updated_at") @db.Timestamptz() instanceId String @map("instance_id") Instance Instance @relation(fields: [instanceId], references: [id], onDelete: Cascade) @@map("templates") } model Dify { id String @id @default(cuid()) enabled Boolean @default(true) @db.Boolean description String? @db.VarChar(255) botType DifyBotType @map("bot_type") apiUrl String? @map("api_url") @db.VarChar(255) apiKey String? @map("api_key") @db.VarChar(255) expire Int? @default(0) @db.Integer keywordFinish String? @map("keyword_finish") @db.VarChar(100) delayMessage Int? @map("delay_message") @db.Integer unknownMessage String? @map("unknown_message") @db.VarChar(100) listeningFromMe Boolean? @default(false) @map("listening_from_me") @db.Boolean stopBotFromMe Boolean? @default(false) @map("stop_bot_from_me") @db.Boolean keepOpen Boolean? @default(false) @map("keep_open") @db.Boolean debounceTime Int? @map("debounce_time") @db.Integer ignoreJids Json? @map("ignore_jids") triggerType TriggerType? @map("trigger_type") triggerOperator TriggerOperator? @map("trigger_operator") triggerValue String? @map("trigger_value") createdAt DateTime? @default(now()) @map("created_at") @db.Timestamptz() updatedAt DateTime @updatedAt @map("updated_at") @db.Timestamptz() instanceId String @map("instance_id") Instance Instance @relation(fields: [instanceId], references: [id], onDelete: Cascade) DifySetting DifySetting[] @@map("difys") } model DifySetting { id String @id @default(cuid()) expire Int? @default(0) @db.Integer keywordFinish String? @map("keyword_finish") @db.VarChar(100) delayMessage Int? @map("delay_message") @db.Integer unknownMessage String? @map("unknown_message") @db.VarChar(100) listeningFromMe Boolean? @default(false) @map("listening_from_me") @db.Boolean stopBotFromMe Boolean? @default(false) @map("stop_bot_from_me") @db.Boolean keepOpen Boolean? @default(false) @map("keep_open") @db.Boolean debounceTime Int? @map("debounce_time") @db.Integer ignoreJids Json? @map("ignore_jids") createdAt DateTime? @default(now()) @map("created_at") @db.Timestamptz() updatedAt DateTime @updatedAt @map("updated_at") @db.Timestamptz() difyIdFallback String? @map("dify_id_fallback") @db.VarChar(100) Fallback Dify? @relation(fields: [difyIdFallback], references: [id]) instanceId String @unique @map("instance_id") Instance Instance @relation(fields: [instanceId], references: [id], onDelete: Cascade) @@map("dify_settings") } model EvolutionBot { id String @id @default(cuid()) enabled Boolean @default(true) @db.Boolean description String? @db.VarChar(255) apiUrl String? @map("api_url") @db.VarChar(255) apiKey String? @map("api_key") @db.VarChar(255) expire Int? @default(0) @db.Integer keywordFinish String? @map("keyword_finish") @db.VarChar(100) delayMessage Int? @map("delay_message") @db.Integer unknownMessage String? @map("unknown_message") @db.VarChar(100) listeningFromMe Boolean? @default(false) @map("listening_from_me") @db.Boolean stopBotFromMe Boolean? @default(false) @map("stop_bot_from_me") @db.Boolean keepOpen Boolean? @default(false) @map("keep_open") @db.Boolean debounceTime Int? @map("debounce_time") @db.Integer ignoreJids Json? @map("ignore_jids") triggerType TriggerType? @map("trigger_type") triggerOperator TriggerOperator? @map("trigger_operator") triggerValue String? @map("trigger_value") createdAt DateTime? @default(now()) @map("created_at") @db.Timestamptz() updatedAt DateTime @updatedAt @map("updated_at") @db.Timestamptz() instanceId String @map("instance_id") Instance Instance @relation(fields: [instanceId], references: [id], onDelete: Cascade) EvolutionBotSetting EvolutionBotSetting[] @@map("evolution_bots") } model EvolutionBotSetting { id String @id @default(cuid()) expire Int? @default(0) @db.Integer keywordFinish String? @map("keyword_finish") @db.VarChar(100) delayMessage Int? @map("delay_message") @db.Integer unknownMessage String? @map("unknown_message") @db.VarChar(100) listeningFromMe Boolean? @default(false) @map("listening_from_me") @db.Boolean stopBotFromMe Boolean? @default(false) @map("stop_bot_from_me") @db.Boolean keepOpen Boolean? @default(false) @map("keep_open") @db.Boolean debounceTime Int? @map("debounce_time") @db.Integer ignoreJids Json? @map("ignore_jids") createdAt DateTime? @default(now()) @map("created_at") @db.Timestamptz() updatedAt DateTime @updatedAt @map("updated_at") @db.Timestamptz() botIdFallback String? @map("bot_id_fallback") @db.VarChar(100) Fallback EvolutionBot? @relation(fields: [botIdFallback], references: [id]) instanceId String @unique @map("instance_id") Instance Instance @relation(fields: [instanceId], references: [id], onDelete: Cascade) @@map("evolution_bot_settings") } model Flowise { id String @id @default(cuid()) enabled Boolean @default(true) @db.Boolean description String? @db.VarChar(255) apiUrl String? @map("api_url") @db.VarChar(255) apiKey String? @map("api_key") @db.VarChar(255) expire Int? @default(0) @db.Integer keywordFinish String? @map("keyword_finish") @db.VarChar(100) delayMessage Int? @map("delay_message") @db.Integer unknownMessage String? @map("unknown_message") @db.VarChar(100) listeningFromMe Boolean? @default(false) @map("listening_from_me") @db.Boolean stopBotFromMe Boolean? @default(false) @map("stop_bot_from_me") @db.Boolean keepOpen Boolean? @default(false) @map("keep_open") @db.Boolean debounceTime Int? @map("debounce_time") @db.Integer ignoreJids Json? @map("ignore_jids") triggerType TriggerType? @map("trigger_type") triggerOperator TriggerOperator? @map("trigger_operator") triggerValue String? @map("trigger_value") createdAt DateTime? @default(now()) @map("created_at") @db.Timestamptz() updatedAt DateTime @updatedAt @map("updated_at") @db.Timestamptz() instanceId String @map("instance_id") Instance Instance @relation(fields: [instanceId], references: [id], onDelete: Cascade) FlowiseSetting FlowiseSetting[] @@map("flowises") } model FlowiseSetting { id String @id @default(cuid()) expire Int? @default(0) @db.Integer keywordFinish String? @map("keyword_finish") @db.VarChar(100) delayMessage Int? @map("delay_message") @db.Integer unknownMessage String? @map("unknown_message") @db.VarChar(100) listeningFromMe Boolean? @default(false) @map("listening_from_me") @db.Boolean stopBotFromMe Boolean? @default(false) @map("stop_bot_from_me") @db.Boolean keepOpen Boolean? @default(false) @map("keep_open") @db.Boolean debounceTime Int? @map("debounce_time") @db.Integer ignoreJids Json? @map("ignore_jids") createdAt DateTime? @default(now()) @map("created_at") @db.Timestamptz() updatedAt DateTime @updatedAt @map("updated_at") @db.Timestamptz() flowiseIdFallback String? @map("flowise_id_fallback") @db.VarChar(100) Fallback Flowise? @relation(fields: [flowiseIdFallback], references: [id]) instanceId String @unique @map("instance_id") Instance Instance @relation(fields: [instanceId], references: [id], onDelete: Cascade) @@map("flowise_settings") }