configapi

package
v0.22.9 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 4, 2026 License: Apache-2.0 Imports: 16 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func APITokenIdRoute added in v0.22.0

func APITokenIdRoute(w http.ResponseWriter, req *http.Request)

func APITokenRoute added in v0.22.0

func APITokenRoute(w http.ResponseWriter, req *http.Request)

func BackupFileApiGet added in v0.12.0

func BackupFileApiGet(w http.ResponseWriter, req *http.Request)

BackupFileApiGet godoc @Summary Get backup file @Description Returns the backup cosmos-compose JSON file @Tags config @Produce json @Security BearerAuth @Success 200 {file} binary @Failure 401 {object} utils.HTTPErrorResult @Failure 403 {object} utils.HTTPErrorResult @Failure 405 {object} utils.HTTPErrorResult @Failure 500 {object} utils.HTTPErrorResult @Router /api/get-backup [get]

func ConfigApiDNS added in v0.21.0

func ConfigApiDNS(w http.ResponseWriter, req *http.Request)

ConfigApiDNS godoc @Summary Update DNS configuration @Description Patches DNS-related settings including port, fallback, blocklists, and custom entries @Tags config @Accept json @Produce json @Security BearerAuth @Param request body DNSConfigRequest true "DNS configuration fields to update" @Success 200 {object} utils.APIResponse @Failure 400 {object} utils.HTTPErrorResult @Failure 401 {object} utils.HTTPErrorResult @Failure 403 {object} utils.HTTPErrorResult @Failure 405 {object} utils.HTTPErrorResult @Router /api/config/dns [patch]

func ConfigApiGet

func ConfigApiGet(w http.ResponseWriter, req *http.Request)

ConfigApiGet godoc @Summary Get server configuration @Description Returns the full server configuration (sensitive fields masked for non-credential users) @Tags config @Produce json @Security BearerAuth @Success 200 {object} utils.APIResponse{data=utils.Config} @Failure 401 {object} utils.HTTPErrorResult @Failure 405 {object} utils.HTTPErrorResult @Router /api/config [get]

func ConfigApiPatch

func ConfigApiPatch(w http.ResponseWriter, req *http.Request)

ConfigApiPatch godoc @Summary Patch route configuration @Description Performs route operations (add, replace, delete, move_up, move_down) on proxy routes @Tags config @Accept json @Produce json @Security BearerAuth @Param request body UpdateRouteRequest true "Route update operation" @Success 200 {object} utils.APIResponse @Failure 400 {object} utils.HTTPErrorResult @Failure 401 {object} utils.HTTPErrorResult @Failure 403 {object} utils.HTTPErrorResult @Failure 404 {object} utils.HTTPErrorResult @Router /api/config [patch]

func ConfigApiRestart

func ConfigApiRestart(w http.ResponseWriter, req *http.Request)

ConfigApiRestart godoc @Summary Restart the server @Description Triggers a graceful server restart @Tags config @Produce json @Security BearerAuth @Success 200 {object} utils.APIResponse @Failure 401 {object} utils.HTTPErrorResult @Failure 403 {object} utils.HTTPErrorResult @Failure 405 {object} utils.HTTPErrorResult @Router /api/restart [get]

func ConfigApiSet

func ConfigApiSet(w http.ResponseWriter, req *http.Request)

ConfigApiSet godoc @Summary Update server configuration @Description Replaces the entire server configuration (masked credential fields are preserved from existing config) @Tags config @Accept json @Produce json @Security BearerAuth @Param request body utils.Config true "Full configuration object" @Success 200 {object} utils.APIResponse @Failure 401 {object} utils.HTTPErrorResult @Failure 403 {object} utils.HTTPErrorResult @Failure 405 {object} utils.HTTPErrorResult @Failure 500 {object} utils.HTTPErrorResult @Router /api/config [put]

func ConfigRoute

func ConfigRoute(w http.ResponseWriter, req *http.Request)

func DashboardApiGet added in v0.20.0

func DashboardApiGet(w http.ResponseWriter, req *http.Request)

DashboardApiGet godoc @Summary Get dashboard data @Description Returns dashboard route information with container status for SERVAPP routes @Tags config @Produce json @Security BearerAuth @Success 200 {object} utils.APIResponse{data=[]DashboardRoute} @Failure 401 {object} utils.HTTPErrorResult @Failure 403 {object} utils.HTTPErrorResult @Failure 405 {object} utils.HTTPErrorResult @Router /api/dashboard [get]

func GenerateAPIToken added in v0.22.0

func GenerateAPIToken(name, description, owner string, permissions []utils.Permission) (string, utils.APITokenConfig, error)

GenerateAPIToken creates a new API token with the given parameters and returns the raw token (to be shown once to the caller) and the config to store. The caller is responsible for persisting the config.

func OpenIDIdRoute added in v0.22.0

func OpenIDIdRoute(w http.ResponseWriter, req *http.Request)

func OpenIDRoute added in v0.22.0

func OpenIDRoute(w http.ResponseWriter, req *http.Request)

func RoutesIdRoute added in v0.22.0

func RoutesIdRoute(w http.ResponseWriter, req *http.Request)

func RoutesRoute added in v0.22.0

func RoutesRoute(w http.ResponseWriter, req *http.Request)

Types

type CreateAPITokenRequest added in v0.22.0

type CreateAPITokenRequest struct {
	Name                    string             `json:"name" validate:"required"`
	Description             string             `json:"description,omitempty"`
	ReadOnly                bool               `json:"readOnly"`
	Permissions             []utils.Permission `json:"permissions,omitempty"`
	IPWhitelist             []string           `json:"ipWhitelist,omitempty"`
	RestrictToConstellation bool               `json:"restrictToConstellation"`
	ExpiryDays              int                `json:"expiryDays,omitempty"`
}

type DNSConfigRequest added in v0.21.0

type DNSConfigRequest struct {
	DNSPort                 string                        `json:"dnsPort,omitempty"`
	DNSFallback             string                        `json:"dnsFallback,omitempty"`
	DNSBlockBlacklist       *bool                         `json:"dnsBlockBlacklist,omitempty"`
	DNSAdditionalBlocklists []string                      `json:"dnsAdditionalBlocklists,omitempty"`
	CustomDNSEntries        []utils.ConstellationDNSEntry `json:"customDNSEntries,omitempty"`
}

type DashboardRoute added in v0.20.0

type DashboardRoute struct {
	Name              string `json:"Name"`
	Description       string `json:"Description,omitempty"`
	Target            string `json:"Target"`
	Mode              string `json:"Mode"`
	Host              string `json:"Host,omitempty"`
	UseHost           bool   `json:"UseHost"`
	UsePathPrefix     bool   `json:"UsePathPrefix"`
	PathPrefix        string `json:"PathPrefix,omitempty"`
	Icon              string `json:"Icon,omitempty"`
	HideFromDashboard bool   `json:"HideFromDashboard"`
	// Container info (for SERVAPP routes)
	ContainerRunning bool   `json:"ContainerRunning"`
	ContainerIcon    string `json:"ContainerIcon,omitempty"`
}

type DeleteAPITokenRequest added in v0.22.0

type DeleteAPITokenRequest struct {
	Name string `json:"name" validate:"required"`
}

type UpdateAPITokenRequest added in v0.22.0

type UpdateAPITokenRequest struct {
	Description             *string            `json:"description,omitempty"`
	Permissions             []utils.Permission `json:"permissions,omitempty"`
	IPWhitelist             []string           `json:"ipWhitelist,omitempty"`
	RestrictToConstellation *bool              `json:"restrictToConstellation,omitempty"`
}

type UpdateRouteRequest

type UpdateRouteRequest struct {
	RouteName string                  `json:"routeName"`
	Operation string                  `json:"operation" validate:"required"`
	NewRoute  *utils.ProxyRouteConfig `json:"newRoute,omitempty"`
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL