package proxy import ( "encoding/json" "net/http" "time" "llm-gateway/internal/provider" ) type ModelsHandler struct { registry *provider.Registry } func NewModelsHandler(registry *provider.Registry) *ModelsHandler { return &ModelsHandler{registry: registry} } func (h *ModelsHandler) ListModels(w http.ResponseWriter, r *http.Request) { names := h.registry.ModelNames() models := make([]map[string]any, len(names)) for i, name := range names { models[i] = map[string]any{ "id": name, "object": "model", "created": time.Now().Unix(), "owned_by": "llm-gateway", } } w.Header().Set("Content-Type", "application/json") json.NewEncoder(w).Encode(map[string]any{ "object": "list", "data": models, }) }