Skip to main content

Overview

All models live in src/DualMind.API/Core/Models/. They use [JsonProperty("snake_case")] for Supabase compatibility.
All C# models use [JsonProperty("snake_case")] attributes because Supabase PostgREST returns snake_case column names. The backend serializes responses as camelCase for the frontend.

Entity models

User

AIModel

Comparison

ModelVote

ChatThread

ThreadMessage

Provider and ProviderApiKey

Request DTOs

ChatRequest (AI contracts)

VoteRequest

CreateThreadRequest

SyncUserRequest

Response DTOs

ChatResponse

GroqResponse (internal)

ModelStatsDto

FeatureFlagResponse