swagger.yml 77 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213221422152216221722182219222022212222222322242225222622272228222922302231223222332234223522362237223822392240224122422243224422452246224722482249225022512252225322542255225622572258225922602261226222632264226522662267226822692270227122722273227422752276227722782279228022812282228322842285228622872288228922902291229222932294229522962297229822992300230123022303230423052306230723082309231023112312231323142315231623172318231923202321232223232324232523262327232823292330233123322333233423352336233723382339234023412342234323442345234623472348234923502351235223532354235523562357235823592360236123622363236423652366236723682369237023712372237323742375237623772378237923802381238223832384238523862387238823892390239123922393239423952396239723982399240024012402240324042405240624072408240924102411241224132414241524162417241824192420242124222423242424252426242724282429243024312432243324342435243624372438243924402441244224432444244524462447244824492450245124522453245424552456245724582459246024612462246324642465246624672468246924702471247224732474247524762477247824792480248124822483248424852486248724882489249024912492249324942495249624972498249925002501
  1. basePath: /
  2. consumes:
  3. - application/json
  4. definitions:
  5. ACL:
  6. additionalProperties:
  7. format: uint8
  8. type: integer
  9. description: ACL - the ACL of other nodes in a NetworkACL for a single unique node
  10. type: object
  11. x-go-package: github.com/gravitl/netmaker/logic/acls
  12. ACLContainer:
  13. additionalProperties:
  14. $ref: '#/definitions/ACL'
  15. description: ACLContainer - the total list of all node's ACL in a given network
  16. type: object
  17. x-go-package: github.com/gravitl/netmaker/logic/acls
  18. ApiHost:
  19. description: ApiHost - the host struct for API usage
  20. properties:
  21. debug:
  22. type: boolean
  23. x-go-name: Debug
  24. defaultinterface:
  25. type: string
  26. x-go-name: DefaultInterface
  27. endpointip:
  28. type: string
  29. x-go-name: EndpointIP
  30. firewallinuse:
  31. type: string
  32. x-go-name: FirewallInUse
  33. id:
  34. type: string
  35. x-go-name: ID
  36. interfaces:
  37. items:
  38. $ref: '#/definitions/Iface'
  39. type: array
  40. x-go-name: Interfaces
  41. isdefault:
  42. type: boolean
  43. x-go-name: IsDefault
  44. isrelay:
  45. type: boolean
  46. x-go-name: IsRelay
  47. isrelayed:
  48. type: boolean
  49. x-go-name: IsRelayed
  50. isstatic:
  51. type: boolean
  52. x-go-name: IsStatic
  53. listenport:
  54. format: int64
  55. type: integer
  56. x-go-name: ListenPort
  57. macaddress:
  58. type: string
  59. x-go-name: MacAddress
  60. mtu:
  61. format: int64
  62. type: integer
  63. x-go-name: MTU
  64. name:
  65. type: string
  66. x-go-name: Name
  67. nat_type:
  68. type: string
  69. x-go-name: NatType
  70. nodes:
  71. items:
  72. type: string
  73. type: array
  74. x-go-name: Nodes
  75. os:
  76. type: string
  77. x-go-name: OS
  78. publickey:
  79. type: string
  80. x-go-name: PublicKey
  81. relay_hosts:
  82. items:
  83. type: string
  84. type: array
  85. x-go-name: RelayedHosts
  86. relayed_by:
  87. type: string
  88. x-go-name: RelayedBy
  89. verbosity:
  90. format: int64
  91. type: integer
  92. x-go-name: Verbosity
  93. version:
  94. type: string
  95. x-go-name: Version
  96. wg_public_listen_port:
  97. format: int64
  98. type: integer
  99. x-go-name: WgPublicListenPort
  100. type: object
  101. x-go-package: github.com/gravitl/netmaker/models
  102. AuthParams:
  103. description: AuthParams - struct for auth params
  104. properties:
  105. id:
  106. type: string
  107. x-go-name: ID
  108. macaddress:
  109. type: string
  110. x-go-name: MacAddress
  111. password:
  112. type: string
  113. x-go-name: Password
  114. type: object
  115. x-go-package: github.com/gravitl/netmaker/models
  116. CustomExtClient:
  117. description: CustomExtClient - struct for CustomExtClient params
  118. properties:
  119. clientid:
  120. type: string
  121. x-go-name: ClientID
  122. deniednodeacls:
  123. additionalProperties:
  124. type: object
  125. type: object
  126. x-go-name: DeniedACLs
  127. dns:
  128. type: string
  129. x-go-name: DNS
  130. enabled:
  131. type: boolean
  132. x-go-name: Enabled
  133. extraallowedips:
  134. items:
  135. type: string
  136. type: array
  137. x-go-name: ExtraAllowedIPs
  138. publickey:
  139. type: string
  140. x-go-name: PublicKey
  141. remote_access_client_id:
  142. type: string
  143. x-go-name: RemoteAccessClientID
  144. type: object
  145. x-go-package: github.com/gravitl/netmaker/models
  146. DNSEntry:
  147. description: DNSEntry - a DNS entry represented as struct
  148. properties:
  149. address:
  150. type: string
  151. x-go-name: Address
  152. address6:
  153. type: string
  154. x-go-name: Address6
  155. name:
  156. type: string
  157. x-go-name: Name
  158. network:
  159. type: string
  160. x-go-name: Network
  161. type: object
  162. x-go-package: github.com/gravitl/netmaker/models
  163. Duration:
  164. description: |-
  165. A Duration represents the elapsed time between two instants
  166. as an int64 nanosecond count. The representation limits the
  167. largest representable duration to approximately 290 years.
  168. format: int64
  169. type: integer
  170. x-go-package: time
  171. EgressGatewayRequest:
  172. description: EgressGatewayRequest - egress gateway request
  173. properties:
  174. natenabled:
  175. type: string
  176. x-go-name: NatEnabled
  177. netid:
  178. type: string
  179. x-go-name: NetID
  180. nodeid:
  181. type: string
  182. x-go-name: NodeID
  183. ranges:
  184. items:
  185. type: string
  186. type: array
  187. x-go-name: Ranges
  188. type: object
  189. x-go-package: github.com/gravitl/netmaker/models
  190. EnrollmentKey:
  191. description: EnrollmentKey - the key used to register hosts and join them to specific networks
  192. properties:
  193. expiration:
  194. format: date-time
  195. type: string
  196. x-go-name: Expiration
  197. networks:
  198. items:
  199. type: string
  200. type: array
  201. x-go-name: Networks
  202. tags:
  203. items:
  204. type: string
  205. type: array
  206. x-go-name: Tags
  207. token:
  208. type: string
  209. x-go-name: Token
  210. type:
  211. $ref: '#/definitions/KeyType'
  212. unlimited:
  213. type: boolean
  214. x-go-name: Unlimited
  215. uses_remaining:
  216. format: int64
  217. type: integer
  218. x-go-name: UsesRemaining
  219. value:
  220. type: string
  221. x-go-name: Value
  222. type: object
  223. x-go-package: github.com/gravitl/netmaker/models
  224. ExtClient:
  225. description: ExtClient - struct for external clients
  226. properties:
  227. address:
  228. type: string
  229. x-go-name: Address
  230. address6:
  231. type: string
  232. x-go-name: Address6
  233. clientid:
  234. type: string
  235. x-go-name: ClientID
  236. deniednodeacls:
  237. additionalProperties:
  238. type: object
  239. type: object
  240. x-go-name: DeniedACLs
  241. dns:
  242. type: string
  243. x-go-name: DNS
  244. enabled:
  245. type: boolean
  246. x-go-name: Enabled
  247. extraallowedips:
  248. items:
  249. type: string
  250. type: array
  251. x-go-name: ExtraAllowedIPs
  252. ingressgatewayendpoint:
  253. type: string
  254. x-go-name: IngressGatewayEndpoint
  255. ingressgatewayid:
  256. type: string
  257. x-go-name: IngressGatewayID
  258. lastmodified:
  259. format: int64
  260. type: integer
  261. x-go-name: LastModified
  262. network:
  263. type: string
  264. x-go-name: Network
  265. ownerid:
  266. type: string
  267. x-go-name: OwnerID
  268. privatekey:
  269. type: string
  270. x-go-name: PrivateKey
  271. publickey:
  272. type: string
  273. x-go-name: PublicKey
  274. remote_access_client_id:
  275. type: string
  276. x-go-name: RemoteAccessClientID
  277. type: object
  278. x-go-package: github.com/gravitl/netmaker/models
  279. File:
  280. title: File represents an open file descriptor.
  281. type: object
  282. x-go-package: os
  283. HardwareAddr:
  284. items:
  285. format: uint8
  286. type: integer
  287. title: A HardwareAddr represents a physical hardware address.
  288. type: array
  289. x-go-package: net
  290. Host:
  291. description: Host - represents a host on the network
  292. properties:
  293. autoupdate:
  294. type: boolean
  295. x-go-name: AutoUpdate
  296. daemoninstalled:
  297. type: boolean
  298. x-go-name: DaemonInstalled
  299. debug:
  300. type: boolean
  301. x-go-name: Debug
  302. defaultinterface:
  303. type: string
  304. x-go-name: DefaultInterface
  305. endpointip:
  306. type: string
  307. x-go-name: EndpointIP
  308. firewallinuse:
  309. type: string
  310. x-go-name: FirewallInUse
  311. hostpass:
  312. type: string
  313. x-go-name: HostPass
  314. id:
  315. format: uuid
  316. type: string
  317. x-go-name: ID
  318. interface:
  319. type: string
  320. x-go-name: Interface
  321. interfaces:
  322. items:
  323. $ref: '#/definitions/Iface'
  324. type: array
  325. x-go-name: Interfaces
  326. ipforwarding:
  327. type: boolean
  328. x-go-name: IPForwarding
  329. isdefault:
  330. type: boolean
  331. x-go-name: IsDefault
  332. isdocker:
  333. type: boolean
  334. x-go-name: IsDocker
  335. isk8s:
  336. type: boolean
  337. x-go-name: IsK8S
  338. isstatic:
  339. type: boolean
  340. x-go-name: IsStatic
  341. listenport:
  342. format: int64
  343. type: integer
  344. x-go-name: ListenPort
  345. macaddress:
  346. $ref: '#/definitions/HardwareAddr'
  347. mtu:
  348. format: int64
  349. type: integer
  350. x-go-name: MTU
  351. name:
  352. type: string
  353. x-go-name: Name
  354. nat_type:
  355. type: string
  356. x-go-name: NatType
  357. nodes:
  358. items:
  359. type: string
  360. type: array
  361. x-go-name: Nodes
  362. os:
  363. type: string
  364. x-go-name: OS
  365. publickey:
  366. $ref: '#/definitions/Key'
  367. traffickeypublic:
  368. items:
  369. format: uint8
  370. type: integer
  371. type: array
  372. x-go-name: TrafficKeyPublic
  373. turn_endpoint:
  374. type: string
  375. x-go-name: TurnEndpoint
  376. verbosity:
  377. format: int64
  378. type: integer
  379. x-go-name: Verbosity
  380. version:
  381. type: string
  382. x-go-name: Version
  383. wg_public_listen_port:
  384. format: int64
  385. type: integer
  386. x-go-name: WgPublicListenPort
  387. type: object
  388. x-go-package: github.com/gravitl/netmaker/models
  389. HostPull:
  390. description: HostPull - response of a host's pull
  391. properties:
  392. host:
  393. $ref: '#/definitions/Host'
  394. nodes:
  395. items:
  396. $ref: '#/definitions/Node'
  397. type: array
  398. x-go-name: Nodes
  399. peer_ids:
  400. $ref: '#/definitions/PeerMap'
  401. peers:
  402. items:
  403. $ref: '#/definitions/PeerConfig'
  404. type: array
  405. x-go-name: Peers
  406. server_config:
  407. $ref: '#/definitions/ServerConfig'
  408. type: object
  409. x-go-package: github.com/gravitl/netmaker/models
  410. IDandAddr:
  411. description: IDandAddr - struct to hold ID and primary Address
  412. properties:
  413. address:
  414. type: string
  415. x-go-name: Address
  416. id:
  417. type: string
  418. x-go-name: ID
  419. is_extclient:
  420. type: boolean
  421. x-go-name: IsExtClient
  422. isserver:
  423. type: string
  424. x-go-name: IsServer
  425. listen_port:
  426. format: int64
  427. type: integer
  428. x-go-name: ListenPort
  429. name:
  430. type: string
  431. x-go-name: Name
  432. network:
  433. type: string
  434. x-go-name: Network
  435. type: object
  436. x-go-package: github.com/gravitl/netmaker/models
  437. IPMask:
  438. description: See type IPNet and func ParseCIDR for details.
  439. items:
  440. format: uint8
  441. type: integer
  442. title: |-
  443. An IPMask is a bitmask that can be used to manipulate
  444. IP addresses for IP addressing and routing.
  445. type: array
  446. x-go-package: net
  447. IPNet:
  448. properties:
  449. IP:
  450. type: string
  451. Mask:
  452. $ref: '#/definitions/IPMask'
  453. title: An IPNet represents an IP network.
  454. type: object
  455. x-go-package: net
  456. Iface:
  457. description: Iface struct for local interfaces of a node
  458. properties:
  459. address:
  460. $ref: '#/definitions/IPNet'
  461. addressString:
  462. type: string
  463. x-go-name: AddressString
  464. name:
  465. type: string
  466. x-go-name: Name
  467. type: object
  468. x-go-package: github.com/gravitl/netmaker/models
  469. Key:
  470. description: |-
  471. A Key is a public, private, or pre-shared secret key. The Key constructor
  472. functions in this package can be used to create Keys suitable for each of
  473. these applications.
  474. items:
  475. format: uint8
  476. type: integer
  477. type: array
  478. x-go-package: golang.zx2c4.com/wireguard/wgctrl/wgtypes
  479. KeyType:
  480. description: KeyType - the type of enrollment key
  481. format: int64
  482. type: integer
  483. x-go-package: github.com/gravitl/netmaker/models
  484. LegacyNode:
  485. description: LegacyNode - legacy struct for node model
  486. properties:
  487. accesskey:
  488. type: string
  489. x-go-name: AccessKey
  490. action:
  491. type: string
  492. x-go-name: Action
  493. address:
  494. type: string
  495. x-go-name: Address
  496. address6:
  497. type: string
  498. x-go-name: Address6
  499. allowedips:
  500. items:
  501. type: string
  502. type: array
  503. x-go-name: AllowedIPs
  504. connected:
  505. type: string
  506. x-go-name: Connected
  507. defaultacl:
  508. description: == PRO ==
  509. type: string
  510. x-go-name: DefaultACL
  511. dnson:
  512. type: string
  513. x-go-name: DNSOn
  514. egressgatewaynatenabled:
  515. type: string
  516. x-go-name: EgressGatewayNatEnabled
  517. egressgatewayranges:
  518. items:
  519. type: string
  520. type: array
  521. x-go-name: EgressGatewayRanges
  522. egressgatewayrequest:
  523. $ref: '#/definitions/EgressGatewayRequest'
  524. endpoint:
  525. type: string
  526. x-go-name: Endpoint
  527. expdatetime:
  528. format: int64
  529. type: integer
  530. x-go-name: ExpirationDateTime
  531. failover:
  532. type: string
  533. x-go-name: Failover
  534. failovernode:
  535. type: string
  536. x-go-name: FailoverNode
  537. firewallinuse:
  538. type: string
  539. x-go-name: FirewallInUse
  540. id:
  541. type: string
  542. x-go-name: ID
  543. ingressgatewayrange:
  544. type: string
  545. x-go-name: IngressGatewayRange
  546. ingressgatewayrange6:
  547. type: string
  548. x-go-name: IngressGatewayRange6
  549. interface:
  550. type: string
  551. x-go-name: Interface
  552. interfaces:
  553. items:
  554. $ref: '#/definitions/Iface'
  555. type: array
  556. x-go-name: Interfaces
  557. internetgateway:
  558. type: string
  559. x-go-name: InternetGateway
  560. ipforwarding:
  561. type: string
  562. x-go-name: IPForwarding
  563. isdocker:
  564. type: string
  565. x-go-name: IsDocker
  566. isegressgateway:
  567. type: string
  568. x-go-name: IsEgressGateway
  569. ishub:
  570. type: string
  571. x-go-name: IsHub
  572. isingressgateway:
  573. type: string
  574. x-go-name: IsIngressGateway
  575. isk8s:
  576. type: string
  577. x-go-name: IsK8S
  578. ispending:
  579. type: string
  580. x-go-name: IsPending
  581. isrelay:
  582. type: string
  583. x-go-name: IsRelay
  584. isrelayed:
  585. type: string
  586. x-go-name: IsRelayed
  587. isserver:
  588. type: string
  589. x-go-name: IsServer
  590. isstatic:
  591. description: IsStatic - refers to if the Endpoint is set manually or dynamically
  592. type: string
  593. x-go-name: IsStatic
  594. lastcheckin:
  595. format: int64
  596. type: integer
  597. x-go-name: LastCheckIn
  598. lastmodified:
  599. format: int64
  600. type: integer
  601. x-go-name: LastModified
  602. lastpeerupdate:
  603. format: int64
  604. type: integer
  605. x-go-name: LastPeerUpdate
  606. listenport:
  607. format: int32
  608. type: integer
  609. x-go-name: ListenPort
  610. localaddress:
  611. type: string
  612. x-go-name: LocalAddress
  613. locallistenport:
  614. format: int32
  615. type: integer
  616. x-go-name: LocalListenPort
  617. macaddress:
  618. type: string
  619. x-go-name: MacAddress
  620. mtu:
  621. format: int32
  622. type: integer
  623. x-go-name: MTU
  624. name:
  625. type: string
  626. x-go-name: Name
  627. network:
  628. type: string
  629. x-go-name: Network
  630. networksettings:
  631. $ref: '#/definitions/Network'
  632. os:
  633. type: string
  634. x-go-name: OS
  635. ownerid:
  636. type: string
  637. x-go-name: OwnerID
  638. password:
  639. type: string
  640. x-go-name: Password
  641. persistentkeepalive:
  642. format: int32
  643. type: integer
  644. x-go-name: PersistentKeepalive
  645. publickey:
  646. type: string
  647. x-go-name: PublicKey
  648. relayaddrs:
  649. items:
  650. type: string
  651. type: array
  652. x-go-name: RelayAddrs
  653. server:
  654. type: string
  655. x-go-name: Server
  656. traffickeys:
  657. $ref: '#/definitions/TrafficKeys'
  658. udpholepunch:
  659. type: string
  660. x-go-name: UDPHolePunch
  661. version:
  662. type: string
  663. x-go-name: Version
  664. type: object
  665. x-go-package: github.com/gravitl/netmaker/models
  666. Network:
  667. description: |-
  668. Network Struct - contains info for a given unique network
  669. At some point, need to replace all instances of Name with something else like Identifier
  670. properties:
  671. addressrange:
  672. type: string
  673. x-go-name: AddressRange
  674. addressrange6:
  675. type: string
  676. x-go-name: AddressRange6
  677. allowmanualsignup:
  678. type: string
  679. x-go-name: AllowManualSignUp
  680. defaultacl:
  681. type: string
  682. x-go-name: DefaultACL
  683. defaultinterface:
  684. type: string
  685. x-go-name: DefaultInterface
  686. defaultkeepalive:
  687. format: int32
  688. type: integer
  689. x-go-name: DefaultKeepalive
  690. defaultlistenport:
  691. format: int32
  692. type: integer
  693. x-go-name: DefaultListenPort
  694. defaultmtu:
  695. format: int32
  696. type: integer
  697. x-go-name: DefaultMTU
  698. defaultpostdown:
  699. type: string
  700. x-go-name: DefaultPostDown
  701. defaultudpholepunch:
  702. type: string
  703. x-go-name: DefaultUDPHolePunch
  704. isipv4:
  705. type: string
  706. x-go-name: IsIPv4
  707. isipv6:
  708. type: string
  709. x-go-name: IsIPv6
  710. netid:
  711. type: string
  712. x-go-name: NetID
  713. networklastmodified:
  714. format: int64
  715. type: integer
  716. x-go-name: NetworkLastModified
  717. nodelimit:
  718. format: int32
  719. type: integer
  720. x-go-name: NodeLimit
  721. nodeslastmodified:
  722. format: int64
  723. type: integer
  724. x-go-name: NodesLastModified
  725. type: object
  726. x-go-package: github.com/gravitl/netmaker/models
  727. Node:
  728. description: Node - a model of a network node
  729. properties:
  730. action:
  731. type: string
  732. x-go-name: Action
  733. address:
  734. $ref: '#/definitions/IPNet'
  735. address6:
  736. $ref: '#/definitions/IPNet'
  737. connected:
  738. type: boolean
  739. x-go-name: Connected
  740. defaultacl:
  741. description: == PRO ==
  742. type: string
  743. x-go-name: DefaultACL
  744. dnson:
  745. type: boolean
  746. x-go-name: DNSOn
  747. egressgatewaynatenabled:
  748. type: boolean
  749. x-go-name: EgressGatewayNatEnabled
  750. egressgatewayranges:
  751. items:
  752. type: string
  753. type: array
  754. x-go-name: EgressGatewayRanges
  755. egressgatewayrequest:
  756. $ref: '#/definitions/EgressGatewayRequest'
  757. expdatetime:
  758. format: date-time
  759. type: string
  760. x-go-name: ExpirationDateTime
  761. failover:
  762. type: boolean
  763. x-go-name: Failover
  764. failovernode:
  765. format: uuid
  766. type: string
  767. x-go-name: FailoverNode
  768. hostid:
  769. format: uuid
  770. type: string
  771. x-go-name: HostID
  772. id:
  773. format: uuid
  774. type: string
  775. x-go-name: ID
  776. ingressdns:
  777. type: string
  778. x-go-name: IngressDNS
  779. ingressgatewayrange:
  780. type: string
  781. x-go-name: IngressGatewayRange
  782. ingressgatewayrange6:
  783. type: string
  784. x-go-name: IngressGatewayRange6
  785. internetgateway:
  786. $ref: '#/definitions/UDPAddr'
  787. isegressgateway:
  788. type: boolean
  789. x-go-name: IsEgressGateway
  790. isingressgateway:
  791. type: boolean
  792. x-go-name: IsIngressGateway
  793. isrelay:
  794. type: boolean
  795. x-go-name: IsRelay
  796. isrelayed:
  797. type: boolean
  798. x-go-name: IsRelayed
  799. lastcheckin:
  800. format: date-time
  801. type: string
  802. x-go-name: LastCheckIn
  803. lastmodified:
  804. format: date-time
  805. type: string
  806. x-go-name: LastModified
  807. lastpeerupdate:
  808. format: date-time
  809. type: string
  810. x-go-name: LastPeerUpdate
  811. localaddress:
  812. $ref: '#/definitions/IPNet'
  813. network:
  814. type: string
  815. x-go-name: Network
  816. networkrange:
  817. $ref: '#/definitions/IPNet'
  818. networkrange6:
  819. $ref: '#/definitions/IPNet'
  820. ownerid:
  821. type: string
  822. x-go-name: OwnerID
  823. pendingdelete:
  824. type: boolean
  825. x-go-name: PendingDelete
  826. persistentkeepalive:
  827. $ref: '#/definitions/Duration'
  828. relayedby:
  829. type: string
  830. x-go-name: RelayedBy
  831. relaynodes:
  832. items:
  833. type: string
  834. type: array
  835. x-go-name: RelayedNodes
  836. server:
  837. type: string
  838. x-go-name: Server
  839. type: object
  840. x-go-package: github.com/gravitl/netmaker/models
  841. PeerConfig:
  842. description: |-
  843. Because the zero value of some Go types may be significant to WireGuard for
  844. PeerConfig fields, pointer types are used for some of these fields. Only
  845. pointer fields which are not nil will be applied when configuring a peer.
  846. properties:
  847. AllowedIPs:
  848. description: |-
  849. AllowedIPs specifies a list of allowed IP addresses in CIDR notation
  850. for this peer.
  851. items:
  852. $ref: '#/definitions/IPNet'
  853. type: array
  854. Endpoint:
  855. $ref: '#/definitions/UDPAddr'
  856. PersistentKeepaliveInterval:
  857. $ref: '#/definitions/Duration'
  858. PresharedKey:
  859. $ref: '#/definitions/Key'
  860. PublicKey:
  861. $ref: '#/definitions/Key'
  862. Remove:
  863. description: |-
  864. Remove specifies if the peer with this public key should be removed
  865. from a device's peer list.
  866. type: boolean
  867. ReplaceAllowedIPs:
  868. description: |-
  869. ReplaceAllowedIPs specifies if the allowed IPs specified in this peer
  870. configuration should replace any existing ones, instead of appending them
  871. to the allowed IPs list.
  872. type: boolean
  873. UpdateOnly:
  874. description: |-
  875. UpdateOnly specifies that an operation will only occur on this peer
  876. if the peer already exists as part of the interface.
  877. type: boolean
  878. title: A PeerConfig is a WireGuard device peer configuration.
  879. type: object
  880. x-go-package: golang.zx2c4.com/wireguard/wgctrl/wgtypes
  881. PeerMap:
  882. additionalProperties:
  883. $ref: '#/definitions/IDandAddr'
  884. description: PeerMap - peer map for ids and addresses in metrics
  885. type: object
  886. x-go-package: github.com/gravitl/netmaker/models
  887. RegisterResponse:
  888. description: RegisterResponse - the response to a successful enrollment register
  889. properties:
  890. requested_host:
  891. $ref: '#/definitions/Host'
  892. server_config:
  893. $ref: '#/definitions/ServerConfig'
  894. type: object
  895. x-go-package: github.com/gravitl/netmaker/models
  896. RelayRequest:
  897. description: RelayRequest - relay request struct
  898. properties:
  899. netid:
  900. type: string
  901. x-go-name: NetID
  902. nodeid:
  903. type: string
  904. x-go-name: NodeID
  905. relayaddrs:
  906. items:
  907. type: string
  908. type: array
  909. x-go-name: RelayedNodes
  910. type: object
  911. x-go-package: github.com/gravitl/netmaker/models
  912. ServerConfig:
  913. description: ServerConfig - server conf struct
  914. properties:
  915. APIConnString:
  916. type: string
  917. APIHost:
  918. type: string
  919. APIPort:
  920. type: string
  921. AllowedOrigin:
  922. type: string
  923. AuthProvider:
  924. type: string
  925. AzureTenant:
  926. type: string
  927. BasicAuth:
  928. type: string
  929. Broker:
  930. type: string
  931. BrokerType:
  932. type: string
  933. ClientID:
  934. type: string
  935. ClientSecret:
  936. type: string
  937. CoreDNSAddr:
  938. type: string
  939. DNSKey:
  940. type: string
  941. DNSMode:
  942. type: string
  943. Database:
  944. type: string
  945. DeployedByOperator:
  946. type: boolean
  947. DisableRemoteIPCheck:
  948. type: string
  949. DisplayKeys:
  950. type: string
  951. EgressesLimit:
  952. format: int64
  953. type: integer
  954. EmqxRestEndpoint:
  955. type: string
  956. Environment:
  957. type: string
  958. FrontendURL:
  959. type: string
  960. HostNetwork:
  961. type: string
  962. IngressesLimit:
  963. format: int64
  964. type: integer
  965. IsEE:
  966. type: string
  967. x-go-name: IsPro
  968. LicenseValue:
  969. type: string
  970. MQPassword:
  971. type: string
  972. MQUserName:
  973. type: string
  974. MachinesLimit:
  975. format: int64
  976. type: integer
  977. MasterKey:
  978. type: string
  979. MessageQueueBackend:
  980. type: string
  981. MetricsExporter:
  982. type: string
  983. NetclientAutoUpdate:
  984. type: string
  985. NetclientEndpointDetection:
  986. type: string
  987. NetmakerTenantID:
  988. type: string
  989. NetworksLimit:
  990. format: int64
  991. type: integer
  992. NodeID:
  993. type: string
  994. OIDCIssuer:
  995. type: string
  996. Platform:
  997. type: string
  998. PublicIPService:
  999. type: string
  1000. RestBackend:
  1001. type: string
  1002. SQLConn:
  1003. type: string
  1004. Server:
  1005. type: string
  1006. ServerBrokerEndpoint:
  1007. type: string
  1008. StunList:
  1009. type: string
  1010. StunPort:
  1011. format: int64
  1012. type: integer
  1013. Telemetry:
  1014. type: string
  1015. TurnApiServer:
  1016. type: string
  1017. TurnPassword:
  1018. type: string
  1019. TurnPort:
  1020. format: int64
  1021. type: integer
  1022. TurnServer:
  1023. type: string
  1024. TurnUserName:
  1025. type: string
  1026. UseTurn:
  1027. type: boolean
  1028. UsersLimit:
  1029. format: int64
  1030. type: integer
  1031. Verbosity:
  1032. format: int32
  1033. type: integer
  1034. Version:
  1035. type: string
  1036. type: object
  1037. x-go-package: github.com/gravitl/netmaker/config
  1038. Signal:
  1039. description: Signal - struct for signalling peer
  1040. properties:
  1041. action:
  1042. $ref: '#/definitions/SignalAction'
  1043. from_host_pubkey:
  1044. type: string
  1045. x-go-name: FromHostPubKey
  1046. reply:
  1047. type: boolean
  1048. x-go-name: Reply
  1049. server:
  1050. type: string
  1051. x-go-name: Server
  1052. timestamp:
  1053. format: int64
  1054. type: integer
  1055. x-go-name: TimeStamp
  1056. to_host_pubkey:
  1057. type: string
  1058. x-go-name: ToHostPubKey
  1059. turn_relay_addr:
  1060. type: string
  1061. x-go-name: TurnRelayEndpoint
  1062. type: object
  1063. x-go-package: github.com/gravitl/netmaker/models
  1064. SignalAction:
  1065. description: SignalAction - turn peer signal action
  1066. type: string
  1067. x-go-package: github.com/gravitl/netmaker/models
  1068. SuccessResponse:
  1069. properties:
  1070. Code:
  1071. format: int64
  1072. type: integer
  1073. Message:
  1074. type: string
  1075. Response: {}
  1076. title: SuccessResponse is struct for sending error message with code.
  1077. type: object
  1078. x-go-package: github.com/gravitl/netmaker/models
  1079. TrafficKeys:
  1080. description: TrafficKeys - struct to hold public keys
  1081. properties:
  1082. mine:
  1083. items:
  1084. format: uint8
  1085. type: integer
  1086. type: array
  1087. x-go-name: Mine
  1088. server:
  1089. items:
  1090. format: uint8
  1091. type: integer
  1092. type: array
  1093. x-go-name: Server
  1094. type: object
  1095. x-go-package: github.com/gravitl/netmaker/models
  1096. UDPAddr:
  1097. properties:
  1098. IP:
  1099. type: string
  1100. Port:
  1101. format: int64
  1102. type: integer
  1103. Zone:
  1104. type: string
  1105. title: UDPAddr represents the address of a UDP end point.
  1106. type: object
  1107. x-go-package: net
  1108. User:
  1109. description: User struct - struct for Users
  1110. properties:
  1111. isadmin:
  1112. type: boolean
  1113. x-go-name: IsAdmin
  1114. issuperadmin:
  1115. type: boolean
  1116. x-go-name: IsSuperAdmin
  1117. password:
  1118. type: string
  1119. x-go-name: Password
  1120. remote_gw_ids:
  1121. additionalProperties:
  1122. type: object
  1123. type: object
  1124. x-go-name: RemoteGwIDs
  1125. username:
  1126. type: string
  1127. x-go-name: UserName
  1128. type: object
  1129. x-go-package: github.com/gravitl/netmaker/models
  1130. UserAuthParams:
  1131. description: UserAuthParams - user auth params struct
  1132. properties:
  1133. password:
  1134. type: string
  1135. x-go-name: Password
  1136. username:
  1137. type: string
  1138. x-go-name: UserName
  1139. type: object
  1140. x-go-package: github.com/gravitl/netmaker/models
  1141. host: api.demo.netmaker.io
  1142. info:
  1143. description: |-
  1144. # API Usage
  1145. Most actions that can be performed via API can be performed via UI. We recommend managing your networks using the official netmaker-ui project. However, Netmaker can also be run without the UI, and all functions can be achieved via API calls. If your use case requires using Netmaker without the UI or you need to do some troubleshooting/advanced configuration, using the API directly may help.
  1146. # Authentication
  1147. API calls must be authenticated via a header of the format -H “Authorization: Bearer <YOUR_SECRET_KEY>” There are two methods to obtain YOUR_SECRET_KEY: 1. Using the masterkey. By default, this value is “secret key,” but you should change this on your instance and keep it secure. This value can be set via env var at startup or in a config file (config/environments/< env >.yaml). See the [Netmaker](https://docs.netmaker.org/index.html) documentation for more details. 2. Using a JWT received for a node. This can be retrieved by calling the /api/nodes/<network>/authenticate endpoint, as documented below.
  1148. title: Netmaker
  1149. version: 0.21.2
  1150. paths:
  1151. /api/dns:
  1152. get:
  1153. operationId: getAllDNS
  1154. responses:
  1155. "200":
  1156. $ref: '#/responses/dnsResponse'
  1157. schemes:
  1158. - https
  1159. summary: Gets all DNS entries.
  1160. tags:
  1161. - dns
  1162. /api/dns/{network}:
  1163. post:
  1164. operationId: createDNS
  1165. parameters:
  1166. - description: Network
  1167. in: path
  1168. name: network
  1169. required: true
  1170. type: string
  1171. x-go-name: Network
  1172. - description: DNS Entry
  1173. in: body
  1174. name: body
  1175. schema:
  1176. items:
  1177. $ref: '#/definitions/DNSEntry'
  1178. type: array
  1179. x-go-name: Body
  1180. responses:
  1181. "200":
  1182. $ref: '#/responses/dnsResponse'
  1183. schemes:
  1184. - https
  1185. summary: Create a DNS entry.
  1186. tags:
  1187. - dns
  1188. /api/dns/{network}/{domain}:
  1189. delete:
  1190. operationId: deleteDNS
  1191. parameters:
  1192. - description: Network
  1193. in: path
  1194. name: network
  1195. required: true
  1196. type: string
  1197. x-go-name: Network
  1198. - description: Domain
  1199. in: path
  1200. name: domain
  1201. required: true
  1202. type: string
  1203. x-go-name: Domain
  1204. responses:
  1205. "200":
  1206. $ref: '#/responses/stringJSONResponse'
  1207. schemes:
  1208. - https
  1209. summary: Delete a DNS entry.
  1210. tags:
  1211. - dns
  1212. /api/dns/adm/{network}:
  1213. get:
  1214. operationId: getDNS
  1215. parameters:
  1216. - description: Network
  1217. in: path
  1218. name: network
  1219. required: true
  1220. type: string
  1221. x-go-name: Network
  1222. responses:
  1223. "200":
  1224. $ref: '#/responses/dnsResponse'
  1225. schemes:
  1226. - https
  1227. summary: Gets all DNS entries associated with the network.
  1228. tags:
  1229. - dns
  1230. /api/dns/adm/{network}/custom:
  1231. get:
  1232. operationId: getCustomDNS
  1233. parameters:
  1234. - description: Network
  1235. in: path
  1236. name: network
  1237. required: true
  1238. type: string
  1239. x-go-name: Network
  1240. responses:
  1241. "200":
  1242. $ref: '#/responses/dnsResponse'
  1243. schemes:
  1244. - https
  1245. summary: Gets custom DNS entries associated with a network.
  1246. tags:
  1247. - dns
  1248. /api/dns/adm/{network}/nodes:
  1249. get:
  1250. operationId: getNodeDNS
  1251. parameters:
  1252. - description: Network
  1253. in: path
  1254. name: network
  1255. required: true
  1256. type: string
  1257. x-go-name: Network
  1258. responses:
  1259. "200":
  1260. $ref: '#/responses/dnsResponse'
  1261. schemes:
  1262. - https
  1263. summary: Gets node DNS entries associated with a network.
  1264. tags:
  1265. - dns
  1266. /api/dns/adm/pushdns:
  1267. post:
  1268. operationId: pushDNS
  1269. responses:
  1270. "200":
  1271. $ref: '#/responses/dnsResponse'
  1272. schemes:
  1273. - https
  1274. summary: Push DNS entries to nameserver.
  1275. tags:
  1276. - dns
  1277. /api/extclients:
  1278. get:
  1279. operationId: getAllExtClients
  1280. parameters:
  1281. - description: Networks
  1282. in: body
  1283. name: networks
  1284. schema:
  1285. items:
  1286. type: string
  1287. type: array
  1288. x-go-name: Networks
  1289. responses:
  1290. "200":
  1291. $ref: '#/responses/extClientSliceResponse'
  1292. schemes:
  1293. - https
  1294. summary: A separate function to get all extclients, not just extclients for a particular network.
  1295. tags:
  1296. - ext_client
  1297. /api/extclients/{network}:
  1298. get:
  1299. description: Gets all extclients associated with network, including pending extclients.
  1300. operationId: getNetworkExtClients
  1301. parameters:
  1302. - description: Network
  1303. in: path
  1304. name: network
  1305. required: true
  1306. type: string
  1307. x-go-name: Network
  1308. responses:
  1309. "200":
  1310. $ref: '#/responses/extClientSliceResponse'
  1311. schemes:
  1312. - https
  1313. summary: Get all extclients associated with network.
  1314. tags:
  1315. - ext_client
  1316. /api/extclients/{network}/{clientid}:
  1317. delete:
  1318. operationId: deleteExtClient
  1319. parameters:
  1320. - description: Client ID
  1321. in: path
  1322. name: clientid
  1323. required: true
  1324. type: string
  1325. x-go-name: ClientID
  1326. - description: Network
  1327. in: path
  1328. name: network
  1329. required: true
  1330. type: string
  1331. x-go-name: Network
  1332. responses:
  1333. "200":
  1334. $ref: '#/responses/successResponse'
  1335. schemes:
  1336. - https
  1337. summary: Delete an individual extclient.
  1338. tags:
  1339. - ext_client
  1340. get:
  1341. operationId: getExtClient
  1342. parameters:
  1343. - description: Client ID
  1344. in: path
  1345. name: clientid
  1346. required: true
  1347. type: string
  1348. x-go-name: ClientID
  1349. - description: Network
  1350. in: path
  1351. name: network
  1352. required: true
  1353. type: string
  1354. x-go-name: Network
  1355. responses:
  1356. "200":
  1357. $ref: '#/responses/extClientResponse'
  1358. schemes:
  1359. - https
  1360. summary: Get an individual extclient.
  1361. tags:
  1362. - ext_client
  1363. put:
  1364. operationId: updateExtClient
  1365. parameters:
  1366. - description: Client ID
  1367. in: path
  1368. name: clientid
  1369. required: true
  1370. type: string
  1371. x-go-name: ClientID
  1372. - description: Network
  1373. in: path
  1374. name: network
  1375. required: true
  1376. type: string
  1377. x-go-name: Network
  1378. - description: ExtClient
  1379. in: body
  1380. name: ext_client
  1381. schema:
  1382. $ref: '#/definitions/ExtClient'
  1383. x-go-name: ExtClient
  1384. responses:
  1385. "200":
  1386. $ref: '#/responses/extClientResponse'
  1387. schemes:
  1388. - https
  1389. summary: Update an individual extclient.
  1390. tags:
  1391. - ext_client
  1392. /api/extclients/{network}/{clientid}/{type}:
  1393. get:
  1394. operationId: getExtClientConf
  1395. parameters:
  1396. - description: Type
  1397. in: path
  1398. name: type
  1399. required: true
  1400. type: string
  1401. x-go-name: Type
  1402. - description: Client ID
  1403. in: path
  1404. name: clientid
  1405. required: true
  1406. type: string
  1407. x-go-name: ClientID
  1408. - description: Network
  1409. in: path
  1410. name: network
  1411. required: true
  1412. type: string
  1413. x-go-name: Network
  1414. responses:
  1415. "200":
  1416. $ref: '#/responses/extClientResponse'
  1417. schemes:
  1418. - https
  1419. summary: Get an individual extclient.
  1420. tags:
  1421. - ext_client
  1422. /api/extclients/{network}/{nodeid}:
  1423. post:
  1424. operationId: createExtClient
  1425. parameters:
  1426. - description: Network
  1427. in: path
  1428. name: network
  1429. required: true
  1430. type: string
  1431. x-go-name: Network
  1432. - description: Node ID
  1433. in: path
  1434. name: nodeid
  1435. required: true
  1436. type: string
  1437. x-go-name: NodeID
  1438. - description: Custom ExtClient
  1439. in: body
  1440. name: custom_ext_client
  1441. schema:
  1442. $ref: '#/definitions/CustomExtClient'
  1443. x-go-name: CustomExtClient
  1444. responses:
  1445. "200":
  1446. $ref: '#/responses/okResponse'
  1447. schemes:
  1448. - https
  1449. summary: Create an individual extclient. Must have valid key and be unique.
  1450. tags:
  1451. - ext_client
  1452. /api/getip:
  1453. get:
  1454. operationId: getPublicIP
  1455. responses:
  1456. "200":
  1457. $ref: '#/responses/byteArrayResponse'
  1458. schemes:
  1459. - https
  1460. summary: Get the current public IP address.
  1461. tags:
  1462. - ipservice
  1463. /api/hosts:
  1464. get:
  1465. operationId: getHosts
  1466. responses:
  1467. "200":
  1468. $ref: '#/responses/apiHostResponse'
  1469. schemes:
  1470. - https
  1471. summary: Lists all hosts.
  1472. tags:
  1473. - hosts
  1474. /api/hosts/{hostid}:
  1475. delete:
  1476. operationId: deleteHost
  1477. parameters:
  1478. - description: HostID
  1479. in: path
  1480. name: hostid
  1481. required: true
  1482. type: string
  1483. x-go-name: HostID
  1484. responses:
  1485. "200":
  1486. $ref: '#/responses/apiHostResponse'
  1487. schemes:
  1488. - https
  1489. summary: Deletes a Netclient host from Netmaker server.
  1490. tags:
  1491. - hosts
  1492. put:
  1493. operationId: updateHost
  1494. parameters:
  1495. - description: HostID
  1496. in: path
  1497. name: hostid
  1498. required: true
  1499. type: string
  1500. x-go-name: HostID
  1501. responses:
  1502. "200":
  1503. $ref: '#/responses/apiHostResponse'
  1504. schemes:
  1505. - https
  1506. summary: Updates a Netclient host on Netmaker server.
  1507. tags:
  1508. - hosts
  1509. /api/hosts/{hostid}/networks/{network}:
  1510. delete:
  1511. operationId: deleteHostFromNetwork
  1512. parameters:
  1513. - description: hostid to add or delete from network
  1514. in: path
  1515. name: hostid
  1516. required: true
  1517. type: string
  1518. x-go-name: HostID
  1519. - description: network
  1520. in: path
  1521. name: network
  1522. required: true
  1523. type: string
  1524. x-go-name: Network
  1525. responses:
  1526. "200":
  1527. $ref: '#/responses/okResponse'
  1528. schemes:
  1529. - https
  1530. summary: Given a network, a host is removed from the network.
  1531. tags:
  1532. - hosts
  1533. post:
  1534. operationId: addHostToNetwork
  1535. parameters:
  1536. - description: hostid to add or delete from network
  1537. in: path
  1538. name: hostid
  1539. required: true
  1540. type: string
  1541. x-go-name: HostID
  1542. - description: network
  1543. in: path
  1544. name: network
  1545. required: true
  1546. type: string
  1547. x-go-name: Network
  1548. responses:
  1549. "200":
  1550. $ref: '#/responses/okResponse'
  1551. schemes:
  1552. - https
  1553. summary: Given a network, a host is added to the network.
  1554. tags:
  1555. - hosts
  1556. /api/hosts/{hostid}/signalpeer:
  1557. post:
  1558. operationId: signalPeer
  1559. parameters:
  1560. - description: HostID
  1561. in: path
  1562. name: hostid
  1563. required: true
  1564. type: string
  1565. x-go-name: HostID
  1566. responses:
  1567. "200":
  1568. $ref: '#/responses/signal'
  1569. schemes:
  1570. - https
  1571. summary: send signal to peer.
  1572. tags:
  1573. - hosts
  1574. /api/hosts/{hostid}/sync:
  1575. post:
  1576. operationId: synchost
  1577. parameters:
  1578. - description: HostID
  1579. in: path
  1580. name: hostid
  1581. required: true
  1582. type: string
  1583. x-go-name: HostID
  1584. responses:
  1585. "200":
  1586. $ref: '#/responses/networkBodyResponse'
  1587. schemes:
  1588. - https
  1589. summary: Requests a host to pull.
  1590. tags:
  1591. - hosts
  1592. /api/hosts/{hostid}keys:
  1593. post:
  1594. operationId: updateKeys
  1595. parameters:
  1596. - description: HostID
  1597. in: path
  1598. name: hostid
  1599. required: true
  1600. type: string
  1601. x-go-name: HostID
  1602. responses:
  1603. "200":
  1604. $ref: '#/responses/networkBodyResponse'
  1605. schemes:
  1606. - https
  1607. summary: Update keys for a network.
  1608. tags:
  1609. - hosts
  1610. /api/hosts/adm/authenticate:
  1611. post:
  1612. operationId: authenticateHost
  1613. responses:
  1614. "200":
  1615. $ref: '#/responses/successResponse'
  1616. schemes:
  1617. - https
  1618. summary: Host based authentication for making further API calls.
  1619. tags:
  1620. - authenticate
  1621. /api/hosts/keys:
  1622. post:
  1623. operationId: updateAllKeys
  1624. responses:
  1625. "200":
  1626. $ref: '#/responses/networkBodyResponse'
  1627. schemes:
  1628. - https
  1629. summary: Update keys for a network.
  1630. tags:
  1631. - hosts
  1632. /api/networks:
  1633. get:
  1634. operationId: getNetworks
  1635. responses:
  1636. "200":
  1637. $ref: '#/responses/getNetworksSliceResponse'
  1638. schemes:
  1639. - https
  1640. summary: Lists all networks.
  1641. tags:
  1642. - networks
  1643. post:
  1644. operationId: createNetwork
  1645. parameters:
  1646. - description: Network
  1647. in: body
  1648. name: network
  1649. schema:
  1650. $ref: '#/definitions/Network'
  1651. x-go-name: Network
  1652. responses:
  1653. "200":
  1654. $ref: '#/responses/networkBodyResponse'
  1655. schemes:
  1656. - https
  1657. summary: Create a network.
  1658. tags:
  1659. - networks
  1660. /api/networks/{networkname}:
  1661. delete:
  1662. operationId: deleteNetwork
  1663. parameters:
  1664. - description: 'name: network name'
  1665. in: path
  1666. name: networkname
  1667. required: true
  1668. type: string
  1669. x-go-name: Networkname
  1670. responses:
  1671. "200":
  1672. $ref: '#/responses/successResponse'
  1673. schemes:
  1674. - https
  1675. summary: Delete a network. Will not delete if there are any nodes that belong to the network.
  1676. tags:
  1677. - networks
  1678. get:
  1679. operationId: getNetwork
  1680. parameters:
  1681. - description: 'name: network name'
  1682. in: path
  1683. name: networkname
  1684. required: true
  1685. type: string
  1686. x-go-name: Networkname
  1687. responses:
  1688. "200":
  1689. $ref: '#/responses/networkBodyResponse'
  1690. schemes:
  1691. - https
  1692. summary: Get a network.
  1693. tags:
  1694. - networks
  1695. put:
  1696. operationId: updateNetwork
  1697. parameters:
  1698. - description: 'name: network name'
  1699. in: path
  1700. name: networkname
  1701. required: true
  1702. type: string
  1703. x-go-name: Networkname
  1704. - description: Network
  1705. in: body
  1706. name: network
  1707. schema:
  1708. $ref: '#/definitions/Network'
  1709. x-go-name: Network
  1710. responses:
  1711. "200":
  1712. $ref: '#/responses/networkBodyResponse'
  1713. schemes:
  1714. - https
  1715. summary: Update pro settings for a network.
  1716. tags:
  1717. - networks
  1718. /api/networks/{networkname}/acls:
  1719. get:
  1720. operationId: getNetworkACL
  1721. parameters:
  1722. - description: 'name: network name'
  1723. in: path
  1724. name: networkname
  1725. required: true
  1726. type: string
  1727. x-go-name: Networkname
  1728. - description: ACL Container
  1729. in: body
  1730. name: acl_container
  1731. schema:
  1732. $ref: '#/definitions/ACLContainer'
  1733. x-go-name: ACLContainer
  1734. responses:
  1735. "200":
  1736. $ref: '#/responses/aclContainerResponse'
  1737. schemes:
  1738. - https
  1739. summary: Get a network ACL (Access Control List).
  1740. tags:
  1741. - networks
  1742. put:
  1743. operationId: updateNetworkACL
  1744. parameters:
  1745. - description: 'name: network name'
  1746. in: path
  1747. name: networkname
  1748. required: true
  1749. type: string
  1750. x-go-name: Networkname
  1751. - description: ACL Container
  1752. in: body
  1753. name: acl_container
  1754. schema:
  1755. $ref: '#/definitions/ACLContainer'
  1756. x-go-name: ACLContainer
  1757. responses:
  1758. "200":
  1759. $ref: '#/responses/aclContainerResponse'
  1760. schemes:
  1761. - https
  1762. summary: Update a network ACL (Access Control List).
  1763. tags:
  1764. - networks
  1765. /api/nodes:
  1766. get:
  1767. operationId: getAllNodes
  1768. responses:
  1769. "200":
  1770. $ref: '#/responses/nodeSliceResponse'
  1771. schemes:
  1772. - https
  1773. summary: Get all nodes across all networks.
  1774. tags:
  1775. - nodes
  1776. /api/nodes/{network}:
  1777. get:
  1778. operationId: getNetworkNodes
  1779. parameters:
  1780. - description: Network
  1781. in: path
  1782. name: network
  1783. required: true
  1784. type: string
  1785. x-go-name: Network
  1786. responses:
  1787. "200":
  1788. $ref: '#/responses/nodeSliceResponse'
  1789. schemes:
  1790. - https
  1791. summary: Gets all nodes associated with network including pending nodes.
  1792. tags:
  1793. - nodes
  1794. /api/nodes/{network}/{nodeid}:
  1795. delete:
  1796. operationId: deleteNode
  1797. parameters:
  1798. - in: path
  1799. name: network
  1800. required: true
  1801. type: string
  1802. x-go-name: Network
  1803. - in: path
  1804. name: nodeid
  1805. required: true
  1806. type: string
  1807. x-go-name: NodeID
  1808. - description: Node
  1809. in: body
  1810. name: node
  1811. schema:
  1812. $ref: '#/definitions/LegacyNode'
  1813. x-go-name: Node
  1814. responses:
  1815. "200":
  1816. $ref: '#/responses/nodeResponse'
  1817. schemes:
  1818. - https
  1819. summary: Delete an individual node.
  1820. tags:
  1821. - nodes
  1822. get:
  1823. operationId: getNode
  1824. parameters:
  1825. - in: path
  1826. name: network
  1827. required: true
  1828. type: string
  1829. x-go-name: Network
  1830. - in: path
  1831. name: nodeid
  1832. required: true
  1833. type: string
  1834. x-go-name: NodeID
  1835. responses:
  1836. "200":
  1837. $ref: '#/responses/nodeResponse'
  1838. schemes:
  1839. - https
  1840. summary: Get an individual node.
  1841. tags:
  1842. - nodes
  1843. put:
  1844. operationId: updateNode
  1845. parameters:
  1846. - in: path
  1847. name: network
  1848. required: true
  1849. type: string
  1850. x-go-name: Network
  1851. - in: path
  1852. name: nodeid
  1853. required: true
  1854. type: string
  1855. x-go-name: NodeID
  1856. - description: Node
  1857. in: body
  1858. name: node
  1859. schema:
  1860. $ref: '#/definitions/LegacyNode'
  1861. x-go-name: Node
  1862. responses:
  1863. "200":
  1864. $ref: '#/responses/nodeResponse'
  1865. schemes:
  1866. - https
  1867. summary: Update an individual node.
  1868. tags:
  1869. - nodes
  1870. /api/nodes/{network}/{nodeid}/creategateway:
  1871. post:
  1872. operationId: createEgressGateway
  1873. parameters:
  1874. - in: path
  1875. name: network
  1876. required: true
  1877. type: string
  1878. x-go-name: Network
  1879. - in: path
  1880. name: nodeid
  1881. required: true
  1882. type: string
  1883. x-go-name: NodeID
  1884. - description: Egress Gateway Request
  1885. in: body
  1886. name: egress_gateway_request
  1887. schema:
  1888. $ref: '#/definitions/EgressGatewayRequest'
  1889. x-go-name: EgressGatewayRequest
  1890. responses:
  1891. "200":
  1892. $ref: '#/responses/nodeResponse'
  1893. schemes:
  1894. - https
  1895. summary: Create an egress gateway.
  1896. tags:
  1897. - nodes
  1898. /api/nodes/{network}/{nodeid}/createingress:
  1899. post:
  1900. operationId: createIngressGateway
  1901. parameters:
  1902. - in: path
  1903. name: network
  1904. required: true
  1905. type: string
  1906. x-go-name: Network
  1907. - in: path
  1908. name: nodeid
  1909. required: true
  1910. type: string
  1911. x-go-name: NodeID
  1912. responses:
  1913. "200":
  1914. $ref: '#/responses/nodeResponse'
  1915. schemes:
  1916. - https
  1917. summary: Create an ingress gateway.
  1918. tags:
  1919. - nodes
  1920. /api/nodes/{network}/{nodeid}/createrelay:
  1921. post:
  1922. operationId: createRelay
  1923. parameters:
  1924. - in: path
  1925. name: network
  1926. required: true
  1927. type: string
  1928. x-go-name: Network
  1929. - in: path
  1930. name: nodeid
  1931. required: true
  1932. type: string
  1933. x-go-name: NodeID
  1934. - description: Relay Request
  1935. in: body
  1936. name: relay_request
  1937. schema:
  1938. $ref: '#/definitions/RelayRequest'
  1939. x-go-name: RelayRequest
  1940. responses:
  1941. "200":
  1942. $ref: '#/responses/nodeResponse'
  1943. schemes:
  1944. - https
  1945. summary: Create a relay.
  1946. tags:
  1947. - nodes
  1948. /api/nodes/{network}/{nodeid}/deletegateway:
  1949. delete:
  1950. operationId: deleteEgressGateway
  1951. parameters:
  1952. - in: path
  1953. name: network
  1954. required: true
  1955. type: string
  1956. x-go-name: Network
  1957. - in: path
  1958. name: nodeid
  1959. required: true
  1960. type: string
  1961. x-go-name: NodeID
  1962. responses:
  1963. "200":
  1964. $ref: '#/responses/nodeResponse'
  1965. schemes:
  1966. - https
  1967. summary: Delete an egress gateway.
  1968. tags:
  1969. - nodes
  1970. /api/nodes/{network}/{nodeid}/deleteingress:
  1971. delete:
  1972. operationId: deleteIngressGateway
  1973. parameters:
  1974. - in: path
  1975. name: network
  1976. required: true
  1977. type: string
  1978. x-go-name: Network
  1979. - in: path
  1980. name: nodeid
  1981. required: true
  1982. type: string
  1983. x-go-name: NodeID
  1984. responses:
  1985. "200":
  1986. $ref: '#/responses/nodeResponse'
  1987. schemes:
  1988. - https
  1989. summary: Delete an ingress gateway.
  1990. tags:
  1991. - nodes
  1992. /api/nodes/{network}/{nodeid}/deleterelay:
  1993. delete:
  1994. operationId: deleteRelay
  1995. parameters:
  1996. - in: path
  1997. name: network
  1998. required: true
  1999. type: string
  2000. x-go-name: Network
  2001. - in: path
  2002. name: nodeid
  2003. required: true
  2004. type: string
  2005. x-go-name: NodeID
  2006. responses:
  2007. "200":
  2008. $ref: '#/responses/nodeResponse'
  2009. schemes:
  2010. - https
  2011. summary: Remove a relay.
  2012. tags:
  2013. - nodes
  2014. /api/nodes/{network}/{nodeid}/ingress/users:
  2015. get:
  2016. operationId: ingressGatewayUsers
  2017. parameters:
  2018. - in: path
  2019. name: network
  2020. required: true
  2021. type: string
  2022. x-go-name: Network
  2023. - in: path
  2024. name: nodeid
  2025. required: true
  2026. type: string
  2027. x-go-name: NodeID
  2028. responses:
  2029. "200":
  2030. $ref: '#/responses/nodeResponse'
  2031. schemes:
  2032. - https
  2033. summary: Lists all the users attached to an ingress gateway.
  2034. tags:
  2035. - users
  2036. /api/nodes/adm/{network}/authenticate:
  2037. post:
  2038. operationId: authenticate
  2039. parameters:
  2040. - description: network
  2041. in: path
  2042. name: network
  2043. required: true
  2044. type: string
  2045. x-go-name: Network
  2046. - description: AuthParams
  2047. in: body
  2048. name: auth_params
  2049. schema:
  2050. $ref: '#/definitions/AuthParams'
  2051. x-go-name: AuthParams
  2052. responses:
  2053. "200":
  2054. $ref: '#/responses/successResponse'
  2055. schemes:
  2056. - https
  2057. summary: Authenticate to make further API calls related to a network.
  2058. tags:
  2059. - authenticate
  2060. /api/oauth/login:
  2061. get:
  2062. operationId: HandleAuthLogin
  2063. responses:
  2064. "200":
  2065. $ref: '#/responses/okResponse'
  2066. schemes:
  2067. - https
  2068. summary: Handles OAuth login.
  2069. tags:
  2070. - nodes
  2071. /api/server/getconfig:
  2072. get:
  2073. operationId: getConfig
  2074. responses:
  2075. "200":
  2076. $ref: '#/responses/serverConfigResponse'
  2077. schemes:
  2078. - https
  2079. summary: Get the server configuration.
  2080. tags:
  2081. - server
  2082. /api/server/getserverinfo:
  2083. get:
  2084. operationId: getServerInfo
  2085. responses:
  2086. "200":
  2087. $ref: '#/responses/serverConfigResponse'
  2088. schemes:
  2089. - https
  2090. summary: Get the server configuration.
  2091. tags:
  2092. - server
  2093. /api/server/status:
  2094. get:
  2095. operationId: getStatus
  2096. responses:
  2097. "200":
  2098. $ref: '#/responses/serverConfigResponse'
  2099. schemes:
  2100. - https
  2101. summary: Get the server configuration.
  2102. tags:
  2103. - server
  2104. /api/users:
  2105. get:
  2106. operationId: getUsers
  2107. responses:
  2108. "200":
  2109. $ref: '#/responses/userBodyResponse'
  2110. schemes:
  2111. - https
  2112. summary: Get all users.
  2113. tags:
  2114. - user
  2115. /api/users/{username}:
  2116. delete:
  2117. operationId: deleteUser
  2118. parameters:
  2119. - description: Username
  2120. in: path
  2121. name: username
  2122. required: true
  2123. type: string
  2124. x-go-name: Username
  2125. responses:
  2126. "200":
  2127. $ref: '#/responses/userBodyResponse'
  2128. schemes:
  2129. - https
  2130. summary: Delete a user.
  2131. tags:
  2132. - user
  2133. get:
  2134. operationId: getUser
  2135. parameters:
  2136. - description: Username
  2137. in: path
  2138. name: username
  2139. required: true
  2140. type: string
  2141. x-go-name: Username
  2142. responses:
  2143. "200":
  2144. $ref: '#/responses/userBodyResponse'
  2145. schemes:
  2146. - https
  2147. summary: Get an individual user.
  2148. tags:
  2149. - user
  2150. post:
  2151. operationId: createUser
  2152. parameters:
  2153. - description: User
  2154. in: body
  2155. name: user
  2156. schema:
  2157. $ref: '#/definitions/User'
  2158. x-go-name: User
  2159. - description: Username
  2160. in: path
  2161. name: username
  2162. required: true
  2163. type: string
  2164. x-go-name: Username
  2165. responses:
  2166. "200":
  2167. $ref: '#/responses/userBodyResponse'
  2168. schemes:
  2169. - https
  2170. summary: Create a user.
  2171. tags:
  2172. - user
  2173. put:
  2174. operationId: updateUser
  2175. parameters:
  2176. - description: User
  2177. in: body
  2178. name: user
  2179. schema:
  2180. $ref: '#/definitions/User'
  2181. x-go-name: User
  2182. - description: Username
  2183. in: path
  2184. name: username
  2185. required: true
  2186. type: string
  2187. x-go-name: Username
  2188. responses:
  2189. "200":
  2190. $ref: '#/responses/userBodyResponse'
  2191. schemes:
  2192. - https
  2193. summary: Update a user.
  2194. tags:
  2195. - user
  2196. /api/users/{username}/remote_access_gw:
  2197. delete:
  2198. operationId: removeUserFromRemoteAccessGW
  2199. parameters:
  2200. - in: path
  2201. name: username
  2202. required: true
  2203. type: string
  2204. x-go-name: Username
  2205. responses:
  2206. "200":
  2207. $ref: '#/responses/userBodyResponse'
  2208. schemes:
  2209. - https
  2210. summary: Delete User from a remote access gateway.
  2211. tags:
  2212. - user
  2213. post:
  2214. operationId: attachUserToRemoteAccessGateway
  2215. parameters:
  2216. - in: path
  2217. name: username
  2218. required: true
  2219. type: string
  2220. x-go-name: Username
  2221. responses:
  2222. "200":
  2223. $ref: '#/responses/userBodyResponse'
  2224. schemes:
  2225. - https
  2226. summary: Attach User to a remote access gateway.
  2227. tags:
  2228. - user
  2229. /api/users/adm/authenticate:
  2230. post:
  2231. operationId: authenticateUser
  2232. parameters:
  2233. - description: User Auth Params
  2234. in: body
  2235. name: user_auth_params
  2236. schema:
  2237. $ref: '#/definitions/UserAuthParams'
  2238. x-go-name: UserAuthParams
  2239. responses:
  2240. "200":
  2241. $ref: '#/responses/successResponse'
  2242. schemes:
  2243. - https
  2244. summary: User authenticates using its password and retrieves a JWT for authorization.
  2245. tags:
  2246. - authenticate
  2247. /api/users/adm/createsuperadmin:
  2248. post:
  2249. operationId: createAdmin
  2250. parameters:
  2251. - description: User
  2252. in: body
  2253. name: user
  2254. schema:
  2255. $ref: '#/definitions/User'
  2256. x-go-name: User
  2257. responses:
  2258. "200":
  2259. $ref: '#/responses/userBodyResponse'
  2260. schemes:
  2261. - https
  2262. summary: Make a user an admin.
  2263. tags:
  2264. - user
  2265. /api/users/adm/hassuperadmin:
  2266. get:
  2267. operationId: hasSuperAdmin
  2268. responses:
  2269. "200":
  2270. $ref: '#/responses/hasAdmin'
  2271. schemes:
  2272. - https
  2273. summary: Checks whether the server has an admin.
  2274. tags:
  2275. - user
  2276. /api/users/adm/transfersuperadmin:
  2277. post:
  2278. operationId: transferSuperAdmin
  2279. responses:
  2280. "200":
  2281. $ref: '#/responses/userBodyResponse'
  2282. schemes:
  2283. - https
  2284. summary: Transfers superadmin role to an admin user.
  2285. tags:
  2286. - user
  2287. /api/v1/enrollment-keys:
  2288. get:
  2289. operationId: getEnrollmentKeys
  2290. responses:
  2291. "200":
  2292. $ref: '#/responses/EnrollmentKeys'
  2293. schemes:
  2294. - https
  2295. summary: Lists all EnrollmentKeys for admins.
  2296. tags:
  2297. - enrollmentKeys
  2298. post:
  2299. operationId: createEnrollmentKey
  2300. responses:
  2301. "200":
  2302. $ref: '#/responses/EnrollmentKey'
  2303. schemes:
  2304. - https
  2305. summary: Creates an EnrollmentKey for hosts to use on Netmaker server.
  2306. tags:
  2307. - enrollmentKeys
  2308. /api/v1/enrollment-keys/{keyid}:
  2309. delete:
  2310. operationId: deleteEnrollmentKey
  2311. parameters:
  2312. - in: path
  2313. name: keyid
  2314. required: true
  2315. type: string
  2316. x-go-name: KeyID
  2317. responses:
  2318. "200":
  2319. $ref: '#/responses/okResponse'
  2320. schemes:
  2321. - https
  2322. summary: Deletes an EnrollmentKey from Netmaker server.
  2323. tags:
  2324. - enrollmentKeys
  2325. /api/v1/enrollment-keys/{token}:
  2326. post:
  2327. operationId: handleHostRegister
  2328. parameters:
  2329. - in: path
  2330. name: token
  2331. required: true
  2332. type: string
  2333. x-go-name: Token
  2334. - in: body
  2335. name: host
  2336. schema:
  2337. $ref: '#/definitions/Host'
  2338. x-go-name: Host
  2339. responses:
  2340. "200":
  2341. $ref: '#/responses/RegisterResponse'
  2342. schemes:
  2343. - https
  2344. summary: Handles a Netclient registration with server and add nodes accordingly.
  2345. tags:
  2346. - enrollmentKeys
  2347. /api/v1/host:
  2348. get:
  2349. description: Used by clients for "pull" command
  2350. operationId: pullHost
  2351. responses:
  2352. "200":
  2353. $ref: '#/responses/hostPull'
  2354. schemes:
  2355. - https
  2356. tags:
  2357. - hosts
  2358. /api/v1/legacy/nodes:
  2359. delete:
  2360. operationId: wipeLegacyNodes
  2361. responses:
  2362. "200":
  2363. $ref: '#/responses/successResponse'
  2364. schemes:
  2365. - https
  2366. summary: Delete all legacy nodes from DB.
  2367. tags:
  2368. - nodes
  2369. /api/v1/nodes/migrate:
  2370. put:
  2371. operationId: migrateData
  2372. responses:
  2373. "200":
  2374. $ref: '#/responses/hostPull'
  2375. schemes:
  2376. - https
  2377. summary: Used to migrate a legacy node.
  2378. tags:
  2379. - nodes
  2380. /meshclient/files/{filename}:
  2381. get:
  2382. operationId: getFile
  2383. parameters:
  2384. - description: Filename
  2385. in: path
  2386. name: filename
  2387. required: true
  2388. type: string
  2389. x-go-name: Filename
  2390. responses:
  2391. "200":
  2392. $ref: '#/responses/fileResponse'
  2393. schemes:
  2394. - https
  2395. summary: Retrieve a file from the file server.
  2396. tags:
  2397. - meshclient
  2398. produces:
  2399. - application/json
  2400. responses:
  2401. EnrollmentKey:
  2402. description: ""
  2403. schema:
  2404. $ref: '#/definitions/EnrollmentKey'
  2405. EnrollmentKeys:
  2406. description: ""
  2407. schema:
  2408. items:
  2409. $ref: '#/definitions/EnrollmentKey'
  2410. type: array
  2411. RegisterResponse:
  2412. description: ""
  2413. schema:
  2414. $ref: '#/definitions/RegisterResponse'
  2415. aclContainerResponse:
  2416. description: ""
  2417. schema:
  2418. $ref: '#/definitions/ACLContainer'
  2419. apiHostResponse:
  2420. description: ""
  2421. schema:
  2422. $ref: '#/definitions/ApiHost'
  2423. byteArrayResponse:
  2424. description: ""
  2425. schema:
  2426. items:
  2427. format: uint8
  2428. type: integer
  2429. type: array
  2430. dnsResponse:
  2431. description: Success
  2432. schema:
  2433. items:
  2434. $ref: '#/definitions/DNSEntry'
  2435. type: array
  2436. extClientResponse:
  2437. description: ""
  2438. schema:
  2439. $ref: '#/definitions/ExtClient'
  2440. extClientSliceResponse:
  2441. description: ""
  2442. schema:
  2443. items:
  2444. $ref: '#/definitions/ExtClient'
  2445. type: array
  2446. fileResponse:
  2447. description: ""
  2448. schema:
  2449. $ref: '#/definitions/File'
  2450. getNetworksSliceResponse:
  2451. description: ""
  2452. schema:
  2453. items:
  2454. $ref: '#/definitions/Network'
  2455. type: array
  2456. hasAdmin:
  2457. description: ""
  2458. hostPull:
  2459. description: ""
  2460. schema:
  2461. $ref: '#/definitions/HostPull'
  2462. networkBodyResponse:
  2463. description: ""
  2464. schema:
  2465. $ref: '#/definitions/Network'
  2466. nodeResponse:
  2467. description: ""
  2468. schema:
  2469. $ref: '#/definitions/LegacyNode'
  2470. nodeSliceResponse:
  2471. description: ""
  2472. schema:
  2473. items:
  2474. $ref: '#/definitions/LegacyNode'
  2475. type: array
  2476. okResponse:
  2477. description: ""
  2478. serverConfigResponse:
  2479. description: ""
  2480. schema:
  2481. $ref: '#/definitions/ServerConfig'
  2482. signal:
  2483. description: ""
  2484. schema:
  2485. $ref: '#/definitions/Signal'
  2486. stringJSONResponse:
  2487. description: ""
  2488. successResponse:
  2489. description: ""
  2490. schema:
  2491. $ref: '#/definitions/SuccessResponse'
  2492. userBodyResponse:
  2493. description: ""
  2494. schema:
  2495. $ref: '#/definitions/User'
  2496. schemes:
  2497. - https
  2498. swagger: "2.0"