For the complete documentation index, see llms.txt. This page is also available as Markdown.

Enrollment Keys

Lists all EnrollmentKeys for admins

get
Authorizations
Responses
200

OK

application/json
auto_assign_gwbooleanOptional
auto_egressbooleanOptional
defaultbooleanOptional
expirationstringOptional
groupsstring[]Optional
networksstring[]Optional
relaystringOptional
tagsstring[]Optional
tokenstringOptional

B64 value of EnrollmentToken

typeinteger · enumOptionalPossible values:
unlimitedbooleanOptional
uses_remainingintegerOptional
valuestringOptional
get/api/v1/enrollment-keys
GET /api/v1/enrollment-keys HTTP/1.1
Host: api.demo.netmaker.io
Accept: */*
[
  {
    "auto_assign_gw": true,
    "auto_egress": true,
    "default": true,
    "expiration": "text",
    "groups": [
      "text"
    ],
    "networks": [
      "text"
    ],
    "relay": "text",
    "tags": [
      "text"
    ],
    "token": "text",
    "type": 0,
    "unlimited": true,
    "uses_remaining": 1,
    "value": "text"
  }
]

Creates an EnrollmentKey for hosts to register with server and join networks

post
Authorizations
Body
auto_assign_gwbooleanOptional
auto_egressbooleanOptional
expirationinteger · int64Optional
groupsstring[]Optional
networksstring[]Optional
relaystringOptional
tagsstring[]Required
typeinteger · enumOptionalPossible values:
unlimitedbooleanOptional
uses_remainingintegerOptional
Responses
200

OK

application/json
auto_assign_gwbooleanOptional
auto_egressbooleanOptional
defaultbooleanOptional
expirationstringOptional
groupsstring[]Optional
networksstring[]Optional
relaystringOptional
tagsstring[]Optional
tokenstringOptional

B64 value of EnrollmentToken

typeinteger · enumOptionalPossible values:
unlimitedbooleanOptional
uses_remainingintegerOptional
valuestringOptional
post/api/v1/enrollment-keys
POST /api/v1/enrollment-keys HTTP/1.1
Host: api.demo.netmaker.io
Content-Type: application/json
Accept: */*
Content-Length: 171

{
  "auto_assign_gw": true,
  "auto_egress": true,
  "expiration": 1,
  "groups": [
    "text"
  ],
  "networks": [
    "text"
  ],
  "relay": "text",
  "tags": [
    "text"
  ],
  "type": 0,
  "unlimited": true,
  "uses_remaining": 1
}
{
  "auto_assign_gw": true,
  "auto_egress": true,
  "default": true,
  "expiration": "text",
  "groups": [
    "text"
  ],
  "networks": [
    "text"
  ],
  "relay": "text",
  "tags": [
    "text"
  ],
  "token": "text",
  "type": 0,
  "unlimited": true,
  "uses_remaining": 1,
  "value": "text"
}

Updates an EnrollmentKey

put
Authorizations
Path parameters
keyIDstringRequired

Enrollment Key ID

Body
auto_assign_gwbooleanOptional
auto_egressbooleanOptional
expirationinteger · int64Optional
groupsstring[]Optional
networksstring[]Optional
relaystringOptional
tagsstring[]Required
typeinteger · enumOptionalPossible values:
unlimitedbooleanOptional
uses_remainingintegerOptional
Responses
200

OK

application/json
auto_assign_gwbooleanOptional
auto_egressbooleanOptional
defaultbooleanOptional
expirationstringOptional
groupsstring[]Optional
networksstring[]Optional
relaystringOptional
tagsstring[]Optional
tokenstringOptional

B64 value of EnrollmentToken

typeinteger · enumOptionalPossible values:
unlimitedbooleanOptional
uses_remainingintegerOptional
valuestringOptional
put/api/v1/enrollment-keys/{keyID}
PUT /api/v1/enrollment-keys/{keyID} HTTP/1.1
Host: api.demo.netmaker.io
Content-Type: application/json
Accept: */*
Content-Length: 171

{
  "auto_assign_gw": true,
  "auto_egress": true,
  "expiration": 1,
  "groups": [
    "text"
  ],
  "networks": [
    "text"
  ],
  "relay": "text",
  "tags": [
    "text"
  ],
  "type": 0,
  "unlimited": true,
  "uses_remaining": 1
}
{
  "auto_assign_gw": true,
  "auto_egress": true,
  "default": true,
  "expiration": "text",
  "groups": [
    "text"
  ],
  "networks": [
    "text"
  ],
  "relay": "text",
  "tags": [
    "text"
  ],
  "token": "text",
  "type": 0,
  "unlimited": true,
  "uses_remaining": 1,
  "value": "text"
}

Deletes an EnrollmentKey from Netmaker server

delete
Authorizations
Path parameters
keyIDstringRequired

Enrollment Key ID

Responses
200

OK

application/json
stringOptional
delete/api/v1/enrollment-keys/{keyID}
DELETE /api/v1/enrollment-keys/{keyID} HTTP/1.1
Host: api.demo.netmaker.io
Accept: */*
text

Handles a Netclient registration with server and add nodes accordingly

post
Path parameters
tokenstringRequired

Enrollment Key Token

Body
autoupdatebooleanOptional
country_codestringOptional
daemoninstalledbooleanOptional
debugbooleanOptional
defaultinterfacestringOptional
dns_statusstringOptional
enable_flow_logsbooleanOptional
endpointipinteger[]Optional
endpointipv6integer[]Optional
firewallinusestringOptional
hostpassstringOptional
idstringOptional
interfacestringOptional
ipforwardingbooleanOptional
isdefaultbooleanOptional
isdockerbooleanOptional
isk8sbooleanOptional
isstaticbooleanOptional
isstaticportbooleanOptional
kernel_versionstringOptional
listenportintegerOptional
locationstringOptional

Format: "lat,lon"

macaddressinteger[]Optional
mtuintegerOptional
namestringOptional
nat_typestringOptional
nodesstring[]Optional
osstringOptional
os_familystringOptional
os_versionstringOptional
persistentkeepaliveinteger · int64Optional
publickeyinteger[]Optional
traffickeypublicinteger[]Optional
turn_endpointobject · netip.AddrPortOptional
verbosityintegerOptional
versionstringOptional
wg_public_listen_portintegerOptional
Responses
200

OK

application/json
post/api/v1/host/register/{token}
POST /api/v1/host/register/{token} HTTP/1.1
Host: api.demo.netmaker.io
Content-Type: application/json
Accept: */*
Content-Length: 764

{
  "autoupdate": true,
  "country_code": "text",
  "daemoninstalled": true,
  "debug": true,
  "defaultinterface": "text",
  "dns_status": "text",
  "enable_flow_logs": true,
  "endpointip": [
    1
  ],
  "endpointipv6": [
    1
  ],
  "firewallinuse": "text",
  "hostpass": "text",
  "id": "text",
  "interface": "text",
  "interfaces": [
    {
      "address": {
        "ip": [
          1
        ],
        "mask": [
          1
        ]
      },
      "addressString": "text",
      "name": "text"
    }
  ],
  "ipforwarding": true,
  "isdefault": true,
  "isdocker": true,
  "isk8s": true,
  "isstatic": true,
  "isstaticport": true,
  "kernel_version": "text",
  "listenport": 1,
  "location": "text",
  "macaddress": [
    1
  ],
  "mtu": 1,
  "name": "text",
  "nat_type": "text",
  "nodes": [
    "text"
  ],
  "os": "text",
  "os_family": "text",
  "os_version": "text",
  "persistentkeepalive": 1,
  "publickey": [
    1
  ],
  "traffickeypublic": [
    1
  ],
  "turn_endpoint": {},
  "verbosity": 1,
  "version": "text",
  "wg_public_listen_port": 1
}
{
  "requested_host": {
    "autoupdate": true,
    "country_code": "text",
    "daemoninstalled": true,
    "debug": true,
    "defaultinterface": "text",
    "dns_status": "text",
    "enable_flow_logs": true,
    "endpointip": [
      1
    ],
    "endpointipv6": [
      1
    ],
    "firewallinuse": "text",
    "hostpass": "text",
    "id": "text",
    "interface": "text",
    "interfaces": [
      {
        "address": {
          "ip": [
            1
          ],
          "mask": [
            1
          ]
        },
        "addressString": "text",
        "name": "text"
      }
    ],
    "ipforwarding": true,
    "isdefault": true,
    "isdocker": true,
    "isk8s": true,
    "isstatic": true,
    "isstaticport": true,
    "kernel_version": "text",
    "listenport": 1,
    "location": "text",
    "macaddress": [
      1
    ],
    "mtu": 1,
    "name": "text",
    "nat_type": "text",
    "nodes": [
      "text"
    ],
    "os": "text",
    "os_family": "text",
    "os_version": "text",
    "persistentkeepalive": 1,
    "publickey": [
      1
    ],
    "traffickeypublic": [
      1
    ],
    "turn_endpoint": {},
    "verbosity": 1,
    "version": "text",
    "wg_public_listen_port": 1
  },
  "server_config": {
    "Is_EE": true,
    "api": "text",
    "apihost": "text",
    "apiport": "text",
    "broker": "text",
    "brokerType": "text",
    "coreDNSAddr": "text",
    "defaultDomain": "text",
    "dnsmode": "text",
    "endpointDetection": true,
    "grpc": "text",
    "ipdetectionInterval": 1,
    "manageDNS": true,
    "metricInterval": "text",
    "metricsPort": 1,
    "mqpassword": "text",
    "mqport": "text",
    "mquserName": "text",
    "peerConnectionCheckInterval": "text",
    "server": "text",
    "stun": true,
    "stunServers": "text",
    "trafficKey": [
      1
    ],
    "version": "text"
  }
}

Last updated

Was this helpful?