package main // The public integrations catalog (docs/integrations.md): the embedded, // reviewed registry served verbatim — like GET /api/apps — so the web client // can render the connect catalog and the exact consent lines the sidecar will // enforce. Manifests are reviewed public data; there is nothing secret here. import ( "encoding/json" "net/http" "lchat/integrations" ) func (s *Server) getIntegrations(w http.ResponseWriter, r *http.Request) { w.Header().Set("Content-Type", "application/json") json.NewEncoder(w).Encode(map[string]any{"schema": 1, "services": integrations.MustRegistry().List()}) }