Browse Source

open api spec file (#2595)

* remove usergroup

* superadmin

* superadmin creation

* generate openapi spec file

* statticcheck

* review comments
Matthew R Kasun 1 year ago
parent
commit
876778a1cc

+ 2 - 0
auth/auth.go

@@ -136,6 +136,8 @@ func HandleAuthCallback(w http.ResponseWriter, r *http.Request) {
 //
 //
 //			Security:
 //			Security:
 //	  		oauth
 //	  		oauth
+//			Responses:
+//			200:  okResponse
 func HandleAuthLogin(w http.ResponseWriter, r *http.Request) {
 func HandleAuthLogin(w http.ResponseWriter, r *http.Request) {
 	if auth_provider == nil {
 	if auth_provider == nil {
 		handleOauthNotConfigured(w)
 		handleOauthNotConfigured(w)

+ 4 - 2
controllers/dns.go

@@ -33,6 +33,8 @@ func dnsHandlers(r *mux.Router) {
 //
 //
 //			Security:
 //			Security:
 //	  		oauth
 //	  		oauth
+//			Responses:
+//			200: dnsResponse
 func getNodeDNS(w http.ResponseWriter, r *http.Request) {
 func getNodeDNS(w http.ResponseWriter, r *http.Request) {
 
 
 	w.Header().Set("Content-Type", "application/json")
 	w.Header().Set("Content-Type", "application/json")
@@ -264,8 +266,8 @@ func GetDNSEntry(domain string, network string) (models.DNSEntry, error) {
 //	  		oauth
 //	  		oauth
 //
 //
 //			Responses:
 //			Responses:
-//				200: dnsStringJSONResponse
-//				*: dnsStringJSONResponse
+//			200: dnsResponse
+//				*: dnsResponse
 func pushDNS(w http.ResponseWriter, r *http.Request) {
 func pushDNS(w http.ResponseWriter, r *http.Request) {
 	// Set header
 	// Set header
 	w.Header().Set("Content-Type", "application/json")
 	w.Header().Set("Content-Type", "application/json")

+ 137 - 64
controllers/docs.go

@@ -11,7 +11,7 @@
 //	Schemes: https
 //	Schemes: https
 //	BasePath: /
 //	BasePath: /
 //	Version: 0.21.1
 //	Version: 0.21.1
-//	Host: netmaker.io
+//	Host: api.demo.netmaker.io
 //
 //
 //	Consumes:
 //	Consumes:
 //	- application/json
 //	- application/json
@@ -26,15 +26,37 @@
 package controller
 package controller
 
 
 import (
 import (
-	serverconfigpkg "github.com/gravitl/netmaker/config"
+	"os"
+
+	"github.com/gravitl/netmaker/config"
 	"github.com/gravitl/netmaker/logic/acls"
 	"github.com/gravitl/netmaker/logic/acls"
 	"github.com/gravitl/netmaker/models"
 	"github.com/gravitl/netmaker/models"
 )
 )
 
 
 var _ = useUnused() // "use" the function to prevent "unused function" errors
 var _ = useUnused() // "use" the function to prevent "unused function" errors
 
 
+// swagger:parameters getFile
+type filenameToGet struct {
+	// Filename
+	// in: path
+	// required: true
+	Filename string `json:"filename"`
+}
+
+// swagger:response hasAdmin
+type hasAdmin struct {
+	// in: body
+	Admin bool
+}
+
+// swagger:response apiHostResponse
+type apiHostResponse struct {
+	// in: body
+	Host models.ApiHost
+}
+
 // swagger:parameters getNodeDNS getCustomDNS getDNS
 // swagger:parameters getNodeDNS getCustomDNS getDNS
-type dnsPathParams struct {
+type dnsNetworkPathParam struct {
 	// Network
 	// Network
 	// in: path
 	// in: path
 	Network string `json:"network"`
 	Network string `json:"network"`
@@ -45,7 +67,6 @@ type dnsParams struct {
 	// Network
 	// Network
 	// in: path
 	// in: path
 	Network string `json:"network"`
 	Network string `json:"network"`
-
 	// DNS Entry
 	// DNS Entry
 	// in: body
 	// in: body
 	Body []models.DNSEntry `json:"body"`
 	Body []models.DNSEntry `json:"body"`
@@ -76,6 +97,18 @@ type stringJSONResponse struct {
 	Response string `json:"response"`
 	Response string `json:"response"`
 }
 }
 
 
+//swagger:response EnrollmentKey
+type EnrollmentKey struct {
+	// in: body
+	EnrollmentKey models.EnrollmentKey
+}
+
+//swagger:response EnrollmentKeys
+type EnrollmentKeys struct {
+	// in: body
+	EnrollmentKeys []models.EnrollmentKey
+}
+
 // swagger:parameters getAllExtClients
 // swagger:parameters getAllExtClients
 type getAllClientsRequest struct {
 type getAllClientsRequest struct {
 	// Networks
 	// Networks
@@ -97,6 +130,12 @@ type extClientResponse struct {
 	ExtClient models.ExtClient `json:"ext_client"`
 	ExtClient models.ExtClient `json:"ext_client"`
 }
 }
 
 
+// swagger:response fileResponse
+type fileResponse struct {
+	// in: body
+	File os.File
+}
+
 // swagger:response successResponse
 // swagger:response successResponse
 type successResponse struct {
 type successResponse struct {
 	// Success Response
 	// Success Response
@@ -104,12 +143,24 @@ type successResponse struct {
 	SuccessResponse models.SuccessResponse `json:"success_response"`
 	SuccessResponse models.SuccessResponse `json:"success_response"`
 }
 }
 
 
+// swagger:parameters getExtClientConf
+type extClientConfParams struct {
+	// Client ID
+	// in: path
+	ClientID string `json:"clientid"`
+	// Network
+	// in: path
+	Network string `json:"network"`
+	// Type
+	// in: path
+	Type string `json:"type"`
+}
+
 // swagger:parameters getExtClient getExtClientConf updateExtClient deleteExtClient
 // swagger:parameters getExtClient getExtClientConf updateExtClient deleteExtClient
 type extClientPathParams struct {
 type extClientPathParams struct {
 	// Client ID
 	// Client ID
 	// in: path
 	// in: path
 	ClientID string `json:"clientid"`
 	ClientID string `json:"clientid"`
-
 	// Network
 	// Network
 	// in: path
 	// in: path
 	Network string `json:"network"`
 	Network string `json:"network"`
@@ -137,20 +188,17 @@ type createExtClientPathParams struct {
 
 
 	// Node ID
 	// Node ID
 	// in: path
 	// in: path
-	NodeID string `json:"node"`
+	NodeID string `json:"nodeid"`
 
 
 	// Custom ExtClient
 	// Custom ExtClient
 	// in: body
 	// in: body
 	CustomExtClient models.CustomExtClient `json:"custom_ext_client"`
 	CustomExtClient models.CustomExtClient `json:"custom_ext_client"`
 }
 }
 
 
-// swagger:parameters getNode updateNode deleteNode createRelay deleteRelay createEgressGateway deleteEgressGateway createIngressGateway deleteIngressGateway uncordonNode
+// swagger:parameters getNode updateNode deleteNode createRelay deleteRelay createEgressGateway deleteEgressGateway createIngressGateway deleteIngressGateway ingressGatewayUsers
 type networkNodePathParams struct {
 type networkNodePathParams struct {
-	// Network
 	// in: path
 	// in: path
 	Network string `json:"network"`
 	Network string `json:"network"`
-
-	// Node ID
 	// in: path
 	// in: path
 	NodeID string `json:"nodeid"`
 	NodeID string `json:"nodeid"`
 }
 }
@@ -161,11 +209,11 @@ type byteArrayResponse struct {
 	ByteArray []byte `json:"byte_array"`
 	ByteArray []byte `json:"byte_array"`
 }
 }
 
 
-// swagger:parameters getNetworks
-type headerNetworks struct {
-	// name: networks
-	// in: header
-	Networks []string `json:"networks"`
+// swagger:parameters getNetwork deleteNetwork updateNetwork getNetworkACL updateNetworkACL
+type NetworkParam struct {
+	// name: network name
+	// in:  path
+	Networkname string `json:"networkname"`
 }
 }
 
 
 // swagger:response getNetworksSliceResponse
 // swagger:response getNetworksSliceResponse
@@ -175,6 +223,13 @@ type getNetworksSliceResponse struct {
 	Networks []models.Network `json:"networks"`
 	Networks []models.Network `json:"networks"`
 }
 }
 
 
+// swagger:response hostPull
+type hostPull struct {
+	// hostPull
+	// in: body
+	HostPull models.HostPull
+}
+
 // swagger:parameters createNetwork updateNetwork
 // swagger:parameters createNetwork updateNetwork
 type networkBodyParam struct {
 type networkBodyParam struct {
 	// Network
 	// Network
@@ -182,18 +237,11 @@ type networkBodyParam struct {
 	Network models.Network `json:"network"`
 	Network models.Network `json:"network"`
 }
 }
 
 
-// swagger:parameters updateNetwork getNetwork updateNetwork updateNetworkNodeLimit deleteNetwork keyUpdate createAccessKey getAccessKeys deleteAccessKey updateNetworkACL getNetworkACL
+// swagger:parameters updateNetworkNodeLimit keyUpdate createAccessKey getAccessKeys getNetworkNodes
 type networkPathParam struct {
 type networkPathParam struct {
-	// Network Name
-	// in: path
-	NetworkName string `json:"networkname"`
-}
-
-// swagger:parameters deleteAccessKey
-type networkAccessKeyNamePathParam struct {
-	// Access Key Name
+	// Network
 	// in: path
 	// in: path
-	AccessKeyName string `json:"access_key_name"`
+	Network string `json:"network"`
 }
 }
 
 
 // swagger:response networkBodyResponse
 // swagger:response networkBodyResponse
@@ -238,6 +286,15 @@ type nodeBodyParam struct {
 	Node models.LegacyNode `json:"node"`
 	Node models.LegacyNode `json:"node"`
 }
 }
 
 
+//swagger:response okResponse
+type okRespone struct{}
+
+// swagger:response RegisterResponse
+type RegisterResponse struct {
+	// in: body
+	RegisterResponse models.RegisterResponse
+}
+
 // swagger:parameters createRelay
 // swagger:parameters createRelay
 type relayRequestBodyParam struct {
 type relayRequestBodyParam struct {
 	// Relay Request
 	// Relay Request
@@ -252,53 +309,68 @@ type egressGatewayBodyParam struct {
 	EgressGatewayRequest models.EgressGatewayRequest `json:"egress_gateway_request"`
 	EgressGatewayRequest models.EgressGatewayRequest `json:"egress_gateway_request"`
 }
 }
 
 
+// swagger:parameters attachUserToRemoteAccessGateway removeUserFromRemoteAccessGW getUserRemoteAccessGws
+type RemoteAccessGatewayUser struct {
+	// in: path
+	Username string `json:"username"`
+}
+
 // swagger:parameters authenticate
 // swagger:parameters authenticate
 type authParamBodyParam struct {
 type authParamBodyParam struct {
+	// network
+	// in: path
+	Network string `json:"network"`
 	// AuthParams
 	// AuthParams
 	// in: body
 	// in: body
 	AuthParams models.AuthParams `json:"auth_params"`
 	AuthParams models.AuthParams `json:"auth_params"`
 }
 }
 
 
-// swagger:response serverConfigResponse
-type serverConfigResponse struct {
-	// Server Config
+// swagger:response signal
+type signal struct {
 	// in: body
 	// in: body
-	ServerConfig serverconfigpkg.ServerConfig `json:"server_config"`
+	Signal models.Signal
 }
 }
 
 
-// swagger:response nodeGetResponse
-type nodeGetResponse struct {
-	// Node Get
-	// in: body
-	NodeGet models.NodeGet `json:"node_get"`
+// swagger:parameters synchost deleteHost updateHost signalPeer updateKeys
+type HostID struct {
+	// HostID
+	// in: path
+	HostID string `json:"hostid"`
 }
 }
 
 
-// swagger:response nodeLastModifiedResponse
-type nodeLastModifiedResponse struct {
-	// Node Last Modified
-	// in: body
-	NodesLastModified int64 `json:"nodes_last_modified"`
+// swagger:parameters addHostToNetwork deleteHostFromNetwork
+type HostFromNetworkParams struct {
+	// hostid to add or delete from network
+	// in: path
+	HostID string `json:"hostid"`
+	// network
+	// in: path
+	Network string `json:"network"`
 }
 }
 
 
-// swagger:parameters register
-//type registerRequestBodyParam struct {
-//	// Register Request
-//	// in: body
-//	RegisterRequest config.RegisterRequest `json:"register_request"`
-//}
-//
-//// swagger:response registerResponse
-//type registerResponse struct {
-//	// Register Response
-//	// in: body
-//	RegisterResponse config.RegisterResponse `json:"register_response"`
-//}
+// swagger:parameters deleteEnrollmentKey
+type DeleteEnrollmentKeyParam struct {
+	// in: path
+	KeyID string `json:"keyid"`
+}
 
 
-// swagger:response boolResponse
-type boolResponse struct {
-	// Boolean Response
+// swagger:parameters handleHostRegister
+type RegisterParams struct {
+	// in: path
+	Token string `json:"token"`
+	// in: body
+	Host models.Host `json:"host"`
+}
+
+// swagger:response serverConfigResponse
+type serverConfigResponse struct {
+	// Server Config
 	// in: body
 	// in: body
-	BoolResponse bool `json:"bool_response"`
+	// example
+	//{
+	//"mqusername": "xxxxxxx"
+	//}
+	ServerConfig config.ServerConfig `json:"server_config"`
 }
 }
 
 
 // swagger:parameters createAdmin updateUser updateUserNetworks createUser
 // swagger:parameters createAdmin updateUser updateUserNetworks createUser
@@ -331,7 +403,6 @@ type usernamePathParam struct {
 
 
 // prevent issues with integration tests for types just used by Swagger docs.
 // prevent issues with integration tests for types just used by Swagger docs.
 func useUnused() bool {
 func useUnused() bool {
-	_ = dnsPathParams{}
 	_ = dnsParams{}
 	_ = dnsParams{}
 	_ = dnsResponse{}
 	_ = dnsResponse{}
 	_ = dnsDeletePathParams{}
 	_ = dnsDeletePathParams{}
@@ -346,11 +417,9 @@ func useUnused() bool {
 	_ = createExtClientPathParams{}
 	_ = createExtClientPathParams{}
 	_ = networkNodePathParams{}
 	_ = networkNodePathParams{}
 	_ = byteArrayResponse{}
 	_ = byteArrayResponse{}
-	_ = headerNetworks{}
 	_ = getNetworksSliceResponse{}
 	_ = getNetworksSliceResponse{}
 	_ = networkBodyParam{}
 	_ = networkBodyParam{}
 	_ = networkPathParam{}
 	_ = networkPathParam{}
-	_ = networkAccessKeyNamePathParam{}
 	_ = networkBodyResponse{}
 	_ = networkBodyResponse{}
 	_ = aclContainerBodyParam{}
 	_ = aclContainerBodyParam{}
 	_ = aclContainerResponse{}
 	_ = aclContainerResponse{}
@@ -361,14 +430,18 @@ func useUnused() bool {
 	_ = egressGatewayBodyParam{}
 	_ = egressGatewayBodyParam{}
 	_ = authParamBodyParam{}
 	_ = authParamBodyParam{}
 	_ = serverConfigResponse{}
 	_ = serverConfigResponse{}
-	_ = nodeGetResponse{}
-	_ = nodeLastModifiedResponse{}
-	//	_ = registerRequestBodyParam{}
-	//	_ = registerResponse{}
-	_ = boolResponse{}
 	_ = userBodyParam{}
 	_ = userBodyParam{}
 	_ = userBodyResponse{}
 	_ = userBodyResponse{}
 	_ = userAuthBodyParam{}
 	_ = userAuthBodyParam{}
 	_ = usernamePathParam{}
 	_ = usernamePathParam{}
+	_ = hasAdmin{}
+	_ = apiHostResponse{}
+	_ = fileResponse{}
+	_ = extClientConfParams{}
+	_ = hostPull{}
+	_ = okRespone{}
+	_ = signal{}
+	_ = filenameToGet{}
+	_ = dnsNetworkPathParam{}
 	return false
 	return false
 }
 }

+ 5 - 5
controllers/enrollmentkeys.go

@@ -33,7 +33,7 @@ func enrollmentKeyHandlers(r *mux.Router) {
 //	  		oauth
 //	  		oauth
 //
 //
 //			Responses:
 //			Responses:
-//				200: getEnrollmentKeysSlice
+//				200: EnrollmentKeys
 func getEnrollmentKeys(w http.ResponseWriter, r *http.Request) {
 func getEnrollmentKeys(w http.ResponseWriter, r *http.Request) {
 	keys, err := logic.GetAllEnrollmentKeys()
 	keys, err := logic.GetAllEnrollmentKeys()
 	if err != nil {
 	if err != nil {
@@ -58,7 +58,7 @@ func getEnrollmentKeys(w http.ResponseWriter, r *http.Request) {
 	json.NewEncoder(w).Encode(ret)
 	json.NewEncoder(w).Encode(ret)
 }
 }
 
 
-// swagger:route DELETE /api/v1/enrollment-keys/{keyID} enrollmentKeys deleteEnrollmentKey
+// swagger:route DELETE /api/v1/enrollment-keys/{keyid} enrollmentKeys deleteEnrollmentKey
 //
 //
 // Deletes an EnrollmentKey from Netmaker server.
 // Deletes an EnrollmentKey from Netmaker server.
 //
 //
@@ -68,7 +68,7 @@ func getEnrollmentKeys(w http.ResponseWriter, r *http.Request) {
 //	  		oauth
 //	  		oauth
 //
 //
 //			Responses:
 //			Responses:
-//				200: deleteEnrollmentKeyResponse
+//				200: okResponse
 func deleteEnrollmentKey(w http.ResponseWriter, r *http.Request) {
 func deleteEnrollmentKey(w http.ResponseWriter, r *http.Request) {
 	var params = mux.Vars(r)
 	var params = mux.Vars(r)
 	keyID := params["keyID"]
 	keyID := params["keyID"]
@@ -92,7 +92,7 @@ func deleteEnrollmentKey(w http.ResponseWriter, r *http.Request) {
 //	  		oauth
 //	  		oauth
 //
 //
 //			Responses:
 //			Responses:
-//				200: createEnrollmentKeyResponse
+//				200: EnrollmentKey
 func createEnrollmentKey(w http.ResponseWriter, r *http.Request) {
 func createEnrollmentKey(w http.ResponseWriter, r *http.Request) {
 
 
 	var enrollmentKeyBody models.APIEnrollmentKey
 	var enrollmentKeyBody models.APIEnrollmentKey
@@ -136,7 +136,7 @@ func createEnrollmentKey(w http.ResponseWriter, r *http.Request) {
 //	  		oauth
 //	  		oauth
 //
 //
 //			Responses:
 //			Responses:
-//				200: handleHostRegisterResponse
+//				200: RegisterResponse
 func handleHostRegister(w http.ResponseWriter, r *http.Request) {
 func handleHostRegister(w http.ResponseWriter, r *http.Request) {
 	var params = mux.Vars(r)
 	var params = mux.Vars(r)
 	token := params["token"]
 	token := params["token"]

+ 2 - 0
controllers/ext_client.go

@@ -303,6 +303,8 @@ Endpoint = %s
 //
 //
 //			Security:
 //			Security:
 //	  		oauth
 //	  		oauth
+//			Responses:
+//			200:  okResponse
 func createExtClient(w http.ResponseWriter, r *http.Request) {
 func createExtClient(w http.ResponseWriter, r *http.Request) {
 	w.Header().Set("Content-Type", "application/json")
 	w.Header().Set("Content-Type", "application/json")
 
 

+ 3 - 1
controllers/files.go

@@ -7,7 +7,7 @@ import (
 )
 )
 
 
 func fileHandlers(r *mux.Router) {
 func fileHandlers(r *mux.Router) {
-	// swagger:route GET /meshclient/files/{filename} meshclient fileServer
+	// swagger:route GET /meshclient/files/{filename} meshclient getFile
 	//
 	//
 	// Retrieve a file from the file server.
 	// Retrieve a file from the file server.
 	//
 	//
@@ -15,5 +15,7 @@ func fileHandlers(r *mux.Router) {
 	//
 	//
 	// 		Security:
 	// 		Security:
 	//   		oauth
 	//   		oauth
+	//		Responses:
+	//		200: fileResponse
 	r.PathPrefix("/meshclient/files").Handler(http.StripPrefix("/meshclient/files", http.FileServer(http.Dir("./meshclient/files"))))
 	r.PathPrefix("/meshclient/files").Handler(http.StripPrefix("/meshclient/files", http.FileServer(http.Dir("./meshclient/files"))))
 }
 }

+ 12 - 13
controllers/hosts.go

@@ -58,7 +58,7 @@ func upgradeHost(w http.ResponseWriter, r *http.Request) {
 //	  		oauth
 //	  		oauth
 //
 //
 //			Responses:
 //			Responses:
-//				200: getHostsSliceResponse
+//				200: apiHostResponse
 func getHosts(w http.ResponseWriter, r *http.Request) {
 func getHosts(w http.ResponseWriter, r *http.Request) {
 	currentHosts, err := logic.GetAllHosts()
 	currentHosts, err := logic.GetAllHosts()
 	if err != nil {
 	if err != nil {
@@ -73,7 +73,7 @@ func getHosts(w http.ResponseWriter, r *http.Request) {
 	json.NewEncoder(w).Encode(apiHosts)
 	json.NewEncoder(w).Encode(apiHosts)
 }
 }
 
 
-// swagger:route GET /api/v1/host pull pullHost
+// swagger:route GET /api/v1/host hosts pullHost
 //
 //
 // Used by clients for "pull" command
 // Used by clients for "pull" command
 //
 //
@@ -83,7 +83,7 @@ func getHosts(w http.ResponseWriter, r *http.Request) {
 //	  		oauth
 //	  		oauth
 //
 //
 //			Responses:
 //			Responses:
-//				200: pull
+//				200: hostPull
 func pull(w http.ResponseWriter, r *http.Request) {
 func pull(w http.ResponseWriter, r *http.Request) {
 
 
 	hostID := r.Header.Get(hostIDHeader) // return JSON/API formatted keys
 	hostID := r.Header.Get(hostIDHeader) // return JSON/API formatted keys
@@ -145,7 +145,7 @@ func pull(w http.ResponseWriter, r *http.Request) {
 //	  		oauth
 //	  		oauth
 //
 //
 //			Responses:
 //			Responses:
-//				200: updateHostResponse
+//				200: apiHostResponse
 func updateHost(w http.ResponseWriter, r *http.Request) {
 func updateHost(w http.ResponseWriter, r *http.Request) {
 	var newHostData models.ApiHost
 	var newHostData models.ApiHost
 	err := json.NewDecoder(r.Body).Decode(&newHostData)
 	err := json.NewDecoder(r.Body).Decode(&newHostData)
@@ -213,7 +213,7 @@ func updateHost(w http.ResponseWriter, r *http.Request) {
 //	  		oauth
 //	  		oauth
 //
 //
 //			Responses:
 //			Responses:
-//				200: deleteHostResponse
+//				200: apiHostResponse
 func deleteHost(w http.ResponseWriter, r *http.Request) {
 func deleteHost(w http.ResponseWriter, r *http.Request) {
 	var params = mux.Vars(r)
 	var params = mux.Vars(r)
 	hostid := params["hostid"]
 	hostid := params["hostid"]
@@ -252,9 +252,8 @@ func deleteHost(w http.ResponseWriter, r *http.Request) {
 //
 //
 //			Security:
 //			Security:
 //	  		oauth
 //	  		oauth
-//
 //			Responses:
 //			Responses:
-//				200: addHostToNetworkResponse
+//				200: okResponse
 func addHostToNetwork(w http.ResponseWriter, r *http.Request) {
 func addHostToNetwork(w http.ResponseWriter, r *http.Request) {
 
 
 	var params = mux.Vars(r)
 	var params = mux.Vars(r)
@@ -301,7 +300,7 @@ func addHostToNetwork(w http.ResponseWriter, r *http.Request) {
 //	  		oauth
 //	  		oauth
 //
 //
 //			Responses:
 //			Responses:
-//				200: deleteHostFromNetworkResponse
+//				200: okResponse
 func deleteHostFromNetwork(w http.ResponseWriter, r *http.Request) {
 func deleteHostFromNetwork(w http.ResponseWriter, r *http.Request) {
 
 
 	var params = mux.Vars(r)
 	var params = mux.Vars(r)
@@ -378,7 +377,7 @@ func deleteHostFromNetwork(w http.ResponseWriter, r *http.Request) {
 	w.WriteHeader(http.StatusOK)
 	w.WriteHeader(http.StatusOK)
 }
 }
 
 
-// swagger:route POST /api/hosts/adm/authenticate hosts authenticateHost
+// swagger:route POST /api/hosts/adm/authenticate authenticate authenticateHost
 //
 //
 // Host based authentication for making further API calls.
 // Host based authentication for making further API calls.
 //
 //
@@ -471,7 +470,7 @@ func authenticateHost(response http.ResponseWriter, request *http.Request) {
 	response.Write(successJSONResponse)
 	response.Write(successJSONResponse)
 }
 }
 
 
-// swagger:route POST /api/hosts/{hostid}/signalpeer signalPeer
+// swagger:route POST /api/hosts/{hostid}/signalpeer hosts signalPeer
 //
 //
 // send signal to peer.
 // send signal to peer.
 //
 //
@@ -537,7 +536,7 @@ func signalPeer(w http.ResponseWriter, r *http.Request) {
 	json.NewEncoder(w).Encode(signal)
 	json.NewEncoder(w).Encode(signal)
 }
 }
 
 
-// swagger:route POST /api/hosts/keys host updateAllKeys
+// swagger:route POST /api/hosts/keys hosts updateAllKeys
 //
 //
 // Update keys for a network.
 // Update keys for a network.
 //
 //
@@ -575,7 +574,7 @@ func updateAllKeys(w http.ResponseWriter, r *http.Request) {
 	w.WriteHeader(http.StatusOK)
 	w.WriteHeader(http.StatusOK)
 }
 }
 
 
-// swagger:route POST /api/hosts/{hostid}keys host updateKeys
+// swagger:route POST /api/hosts/{hostid}keys hosts updateKeys
 //
 //
 // Update keys for a network.
 // Update keys for a network.
 //
 //
@@ -614,7 +613,7 @@ func updateKeys(w http.ResponseWriter, r *http.Request) {
 	w.WriteHeader(http.StatusOK)
 	w.WriteHeader(http.StatusOK)
 }
 }
 
 
-// swagger:route POST /api/hosts/{hostId}/sync host syncHost
+// swagger:route POST /api/hosts/{hostid}/sync hosts synchost
 //
 //
 // Requests a host to pull.
 // Requests a host to pull.
 //
 //

+ 1 - 1
controllers/legacy.go

@@ -22,7 +22,7 @@ func legacyHandlers(r *mux.Router) {
 //	  		oauth
 //	  		oauth
 //
 //
 //			Responses:
 //			Responses:
-//				200: wipeLegacyNodesResponse
+//				200: successResponse
 func wipeLegacyNodes(w http.ResponseWriter, r *http.Request) {
 func wipeLegacyNodes(w http.ResponseWriter, r *http.Request) {
 	// Set header
 	// Set header
 	w.Header().Set("Content-Type", "application/json")
 	w.Header().Set("Content-Type", "application/json")

+ 2 - 2
controllers/migrate.go

@@ -19,7 +19,7 @@ import (
 	"golang.zx2c4.com/wireguard/wgctrl/wgtypes"
 	"golang.zx2c4.com/wireguard/wgctrl/wgtypes"
 )
 )
 
 
-// swagger:route PUT /api/v1/nodes/migrate nodes migrateNode
+// swagger:route PUT /api/v1/nodes/migrate nodes migrateData
 //
 //
 // Used to migrate a legacy node.
 // Used to migrate a legacy node.
 //
 //
@@ -29,7 +29,7 @@ import (
 //	  		oauth
 //	  		oauth
 //
 //
 //			Responses:
 //			Responses:
-//				200: nodeJoinResponse
+//				200: hostPull
 func migrate(w http.ResponseWriter, r *http.Request) {
 func migrate(w http.ResponseWriter, r *http.Request) {
 	data := models.MigrationData{}
 	data := models.MigrationData{}
 	host := models.Host{}
 	host := models.Host{}

+ 2 - 2
controllers/network.go

@@ -180,7 +180,7 @@ func getNetworkACL(w http.ResponseWriter, r *http.Request) {
 //	  		oauth
 //	  		oauth
 //
 //
 //			Responses:
 //			Responses:
-//				200: stringJSONResponse
+//				200: successResponse
 func deleteNetwork(w http.ResponseWriter, r *http.Request) {
 func deleteNetwork(w http.ResponseWriter, r *http.Request) {
 	// Set header
 	// Set header
 	w.Header().Set("Content-Type", "application/json")
 	w.Header().Set("Content-Type", "application/json")
@@ -278,7 +278,7 @@ func createNetwork(w http.ResponseWriter, r *http.Request) {
 	json.NewEncoder(w).Encode(network)
 	json.NewEncoder(w).Encode(network)
 }
 }
 
 
-// swagger:route PUT /api/networks networks updateNetwork
+// swagger:route PUT /api/networks/{networkname} networks updateNetwork
 //
 //
 // Update pro settings for a network.
 // Update pro settings for a network.
 //
 //

+ 1 - 1
controllers/node.go

@@ -34,7 +34,7 @@ func nodeHandlers(r *mux.Router) {
 	r.HandleFunc("/api/v1/nodes/migrate", migrate).Methods(http.MethodPost)
 	r.HandleFunc("/api/v1/nodes/migrate", migrate).Methods(http.MethodPost)
 }
 }
 
 
-// swagger:route POST /api/nodes/adm/{network}/authenticate nodes authenticate
+// swagger:route POST /api/nodes/adm/{network}/authenticate authenticate authenticate
 //
 //
 // Authenticate to make further API calls related to a network.
 // Authenticate to make further API calls related to a network.
 //
 //

+ 3 - 3
controllers/user.go

@@ -37,9 +37,9 @@ func userHandlers(r *mux.Router) {
 	r.HandleFunc("/api/oauth/register/{regKey}", auth.RegisterHostSSO).Methods(http.MethodGet)
 	r.HandleFunc("/api/oauth/register/{regKey}", auth.RegisterHostSSO).Methods(http.MethodGet)
 }
 }
 
 
-// swagger:route POST /api/users/adm/authenticate user authenticateUser
+// swagger:route POST /api/users/adm/authenticate authenticate authenticateUser
 //
 //
-// Node authenticates using its password and retrieves a JWT for authorization.
+// User authenticates using its password and retrieves a JWT for authorization.
 //
 //
 //			Schemes: https
 //			Schemes: https
 //
 //
@@ -145,7 +145,7 @@ func authenticateUser(response http.ResponseWriter, request *http.Request) {
 //	  		oauth
 //	  		oauth
 //
 //
 //			Responses:
 //			Responses:
-//				200: successResponse
+//				200: hasAdmin
 func hasSuperAdmin(w http.ResponseWriter, r *http.Request) {
 func hasSuperAdmin(w http.ResponseWriter, r *http.Request) {
 
 
 	w.Header().Set("Content-Type", "application/json")
 	w.Header().Set("Content-Type", "application/json")

+ 1 - 1
pro/controllers/users.go

@@ -78,7 +78,7 @@ func attachUserToRemoteAccessGw(w http.ResponseWriter, r *http.Request) {
 
 
 // swagger:route DELETE /api/users/{username}/remote_access_gw user removeUserFromRemoteAccessGW
 // swagger:route DELETE /api/users/{username}/remote_access_gw user removeUserFromRemoteAccessGW
 //
 //
-// Attach User to a remote access gateway.
+// Delete User from a remote access gateway.
 //
 //
 //			Schemes: https
 //			Schemes: https
 //
 //

File diff suppressed because it is too large
+ 1148 - 38
swagger.yml


Some files were not shown because too many files changed in this diff