> For the complete documentation index, see [llms.txt](https://learn.netmaker.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://learn.netmaker.io/api-spec/models.md).

# Models

## The acls.ACL object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"acls.ACL":{"additionalProperties":{"format":"int32","type":"integer"},"type":"object"}}}}
```

## The acls.ACLContainer object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"acls.ACLContainer":{"additionalProperties":{"$ref":"#/components/schemas/acls.ACL"},"type":"object"},"acls.ACL":{"additionalProperties":{"format":"int32","type":"integer"},"type":"object"}}}}
```

## The controllers.FlowRow object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"controllers.FlowRow":{"properties":{"bytes_recv":{"type":"integer"},"bytes_sent":{"type":"integer"},"direction":{"type":"string"},"dst_entity_id":{"type":"string"},"dst_entity_name":{"type":"string"},"dst_ip":{"type":"string"},"dst_port":{"type":"integer"},"dst_type":{"type":"string"},"end_ts":{"type":"string"},"flow_id":{"type":"string"},"host_id":{"type":"string"},"host_name":{"type":"string"},"icmp_code":{"type":"integer"},"icmp_type":{"type":"integer"},"network_id":{"type":"string"},"packets_recv":{"type":"integer"},"packets_sent":{"type":"integer"},"protocol":{"type":"integer"},"src_entity_id":{"type":"string"},"src_entity_name":{"type":"string"},"src_ip":{"type":"string"},"src_port":{"type":"integer"},"src_type":{"type":"string"},"start_ts":{"type":"string"},"status":{"type":"integer"},"version":{"type":"string"}},"type":"object"}}}}
```

## The datatypes.JSONMap object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"datatypes.JSONMap":{"additionalProperties":true,"type":"object"}}}}
```

## The models.APIEnrollmentKey object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"models.APIEnrollmentKey":{"properties":{"auto_assign_gw":{"type":"boolean"},"auto_egress":{"type":"boolean"},"expiration":{"format":"int64","type":"integer"},"groups":{"items":{"type":"string"},"type":"array"},"networks":{"items":{"type":"string"},"type":"array"},"relay":{"type":"string"},"tags":{"items":{"type":"string"},"type":"array"},"type":{"$ref":"#/components/schemas/models.KeyType"},"unlimited":{"type":"boolean"},"uses_remaining":{"type":"integer"}},"required":["tags"],"type":"object"},"models.KeyType":{"enum":[0,1,2,3],"type":"integer"}}}}
```

## The models.Acl object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"models.Acl":{"properties":{"allowed_traffic_direction":{"$ref":"#/components/schemas/models.AllowedTrafficDirection"},"created_at":{"type":"string"},"created_by":{"type":"string"},"default":{"type":"boolean"},"dst_type":{"items":{"$ref":"#/components/schemas/models.AclPolicyTag"},"type":"array"},"enabled":{"type":"boolean"},"id":{"type":"string"},"meta_data":{"type":"string"},"name":{"type":"string"},"network_id":{"$ref":"#/components/schemas/models.NetworkID"},"policy_type":{"$ref":"#/components/schemas/models.AclPolicyType"},"ports":{"items":{"type":"string"},"type":"array"},"protocol":{"allOf":[{"$ref":"#/components/schemas/models.Protocol"}],"description":"tcp, udp, etc."},"src_type":{"items":{"$ref":"#/components/schemas/models.AclPolicyTag"},"type":"array"},"type":{"type":"string"}},"type":"object"},"models.AllowedTrafficDirection":{"enum":[0,1],"type":"integer"},"models.AclPolicyTag":{"properties":{"id":{"$ref":"#/components/schemas/models.AclGroupType"},"value":{"type":"string"}},"type":"object"},"models.AclGroupType":{"enum":["user","user-group","tag","device","egress-range","egress-id","ip","ipset"],"type":"string"},"models.NetworkID":{"enum":["all_networks"],"type":"string"},"models.AclPolicyType":{"enum":["user-policy","device-policy"],"type":"string"},"models.Protocol":{"enum":["all","udp","tcp","icmp"],"type":"string"}}}}
```

## The models.AclGroupType object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"models.AclGroupType":{"enum":["user","user-group","tag","device","egress-range","egress-id","ip","ipset"],"type":"string"}}}}
```

## The models.AclPolicyTag object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"models.AclPolicyTag":{"properties":{"id":{"$ref":"#/components/schemas/models.AclGroupType"},"value":{"type":"string"}},"type":"object"},"models.AclGroupType":{"enum":["user","user-group","tag","device","egress-range","egress-id","ip","ipset"],"type":"string"}}}}
```

## The models.AclPolicyType object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"models.AclPolicyType":{"enum":["user-policy","device-policy"],"type":"string"}}}}
```

## The models.AclPolicyTypes object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"models.AclPolicyTypes":{"properties":{"dst_grp_types":{"items":{"$ref":"#/components/schemas/models.AclGroupType"},"type":"array"},"policy_types":{"items":{"$ref":"#/components/schemas/models.AclPolicyType"},"type":"array"},"protocolTypes":{"items":{"$ref":"#/components/schemas/models.ProtocolType"},"type":"array"},"src_grp_types":{"items":{"$ref":"#/components/schemas/models.AclGroupType"},"type":"array"}},"type":"object"},"models.AclGroupType":{"enum":["user","user-group","tag","device","egress-range","egress-id","ip","ipset"],"type":"string"},"models.AclPolicyType":{"enum":["user-policy","device-policy"],"type":"string"},"models.ProtocolType":{"properties":{"allow_port_setting":{"type":"boolean"},"allowed_protocols":{"items":{"$ref":"#/components/schemas/models.Protocol"},"type":"array"},"name":{"type":"string"},"port_range":{"type":"string"}},"type":"object"},"models.Protocol":{"enum":["all","udp","tcp","icmp"],"type":"string"}}}}
```

## The models.AclRule object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"models.AclRule":{"properties":{"allowed":{"type":"boolean"},"allowed_ports":{"items":{"type":"string"},"type":"array"},"allowed_protocols":{"allOf":[{"$ref":"#/components/schemas/models.Protocol"}],"description":"tcp, udp, etc."},"direction":{"allOf":[{"$ref":"#/components/schemas/models.AllowedTrafficDirection"}],"description":"single or two-way"},"dst":{"items":{"$ref":"#/components/schemas/net.IPNet"},"type":"array"},"dst6":{"items":{"$ref":"#/components/schemas/net.IPNet"},"type":"array"},"id":{"type":"string"},"ip_list":{"items":{"$ref":"#/components/schemas/net.IPNet"},"type":"array"},"ip6_list":{"items":{"$ref":"#/components/schemas/net.IPNet"},"type":"array"}},"type":"object"},"models.Protocol":{"enum":["all","udp","tcp","icmp"],"type":"string"},"models.AllowedTrafficDirection":{"enum":[0,1],"type":"integer"},"net.IPNet":{"properties":{"ip":{"description":"network number","items":{"type":"integer"},"type":"array"},"mask":{"description":"network mask","items":{"format":"int32","type":"integer"},"type":"array"}},"type":"object"}}}}
```

## The models.Action object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"models.Action":{"enum":["CREATE","UPDATE","DELETE","DELETE_ALL","LOGIN","LOGOUT","CONNECT","SYNC","REFRESH_KEY","REFRESH_ALL_KEYS","SYNC_ALL","UPGRADE_ALL","DISCONNECT","JOIN_HOST_TO_NETWORK","REMOVE_HOST_FROM_NETWORK","ENABLE_MFA","DISABLE_MFA","ENFORCE_MFA","UNENFORCE_MFA","ENABLE_BASIC_AUTH","DISABLE_BASIC_AUTH","ENABLE_TELEMETRY","DISABLE_TELEMETRY","UPDATE_CLIENT_SETTINGS","UPDATE_AUTHENTICATION_SECURITY_SETTINGS","UPDATE_MONITORING_AND_DEBUGGING_SETTINGS","UPDATE_EMAIL_SETTINGS","UPDATE_IDP_SETTINGS","ENABLE_FLOW_LOGS","DISABLE_FLOW_LOGS","GATEWAY_ASSIGN","GATEWAY_UNASSIGN"],"type":"string"}}}}
```

## The models.AllowedTrafficDirection object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"models.AllowedTrafficDirection":{"enum":[0,1],"type":"integer"}}}}
```

## The models.ApiHost object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"models.ApiHost":{"properties":{"autoupdate":{"type":"boolean"},"country_code":{"type":"string"},"debug":{"type":"boolean"},"defaultinterface":{"type":"string"},"dns":{"type":"string"},"enable_flow_logs":{"type":"boolean"},"endpointip":{"type":"string"},"endpointipv6":{"type":"string"},"firewallinuse":{"type":"string"},"id":{"type":"string"},"interfaces":{"items":{"$ref":"#/components/schemas/models.ApiIface"},"type":"array"},"isdefault":{"type":"boolean"},"isstatic":{"type":"boolean"},"isstaticport":{"type":"boolean"},"kernel_version":{"type":"string"},"listenport":{"type":"integer"},"location":{"type":"string"},"macaddress":{"type":"string"},"mtu":{"type":"integer"},"name":{"type":"string"},"nat_type":{"type":"string"},"nodes":{"items":{"type":"string"},"type":"array"},"os":{"type":"string"},"os_family":{"type":"string"},"os_version":{"type":"string"},"persistentkeepalive":{"type":"integer"},"publickey":{"type":"string"},"verbosity":{"type":"integer"},"version":{"type":"string"},"wg_public_listen_port":{"type":"integer"}},"type":"object"},"models.ApiIface":{"properties":{"addressString":{"type":"string"},"name":{"type":"string"}},"type":"object"}}}}
```

## The models.ApiIface object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"models.ApiIface":{"properties":{"addressString":{"type":"string"},"name":{"type":"string"}},"type":"object"}}}}
```

## The models.ApiNode object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"models.ApiNode":{"properties":{"additional_rag_ips":{"items":{"type":"string"},"type":"array"},"address":{"type":"string"},"address6":{"type":"string"},"allowedips":{"items":{"type":"string"},"type":"array"},"auto_assign_gw":{"type":"boolean"},"auto_relayed_peers":{"additionalProperties":{"type":"string"},"type":"object"},"connected":{"type":"boolean"},"country":{"type":"string"},"defaultacl":{"description":"== PRO ==","type":"string"},"dnson":{"type":"boolean"},"egressgatewaynatenabled":{"type":"boolean"},"egressgatewayranges":{"items":{"type":"string"},"type":"array"},"egressgatewayranges_with_metric":{"items":{"$ref":"#/components/schemas/models.EgressRangeMetric"},"type":"array"},"expdatetime":{"format":"int64","type":"integer"},"fail_over_peers":{"additionalProperties":{"type":"object"},"type":"object"},"failed_over_by":{"type":"string"},"hostid":{"minLength":5,"type":"string"},"id":{"minLength":5,"type":"string"},"inet_node_req":{"$ref":"#/components/schemas/models.InetNodeReq"},"ingressdns":{"type":"string"},"ingressmtu":{"type":"integer"},"ingresspersistentkeepalive":{"type":"integer"},"internetgw_node_id":{"type":"string"},"is_auto_relay":{"type":"boolean"},"is_fail_over":{"type":"boolean"},"is_gw":{"type":"boolean"},"is_static":{"type":"boolean"},"is_user_node":{"type":"boolean"},"isegressgateway":{"type":"boolean"},"isingressgateway":{"type":"boolean"},"isinternetgateway":{"type":"boolean"},"isrelay":{"type":"boolean"},"isrelayed":{"type":"boolean"},"last_evaluated_at":{"type":"string"},"lastcheckin":{"format":"int64","type":"integer"},"lastmodified":{"format":"int64","type":"integer"},"lastpeerupdate":{"format":"int64","type":"integer"},"localaddress":{"type":"string"},"location":{"type":"string"},"metadata":{"type":"string"},"network":{"type":"string"},"networkrange":{"type":"string"},"networkrange6":{"type":"string"},"pendingdelete":{"type":"boolean"},"posture_check_violation_severity_level":{"$ref":"#/components/schemas/models.Severity"},"posture_check_violations":{"items":{"$ref":"#/components/schemas/models.Violation"},"type":"array"},"relayedby":{"description":"AutoRelayedBy                 uuid.UUID           `json:\"auto_relayed_by\"`","type":"string"},"relaynodes":{"items":{"type":"string"},"type":"array"},"server":{"type":"string"},"static_node":{"$ref":"#/components/schemas/models.ExtClient"},"status":{"$ref":"#/components/schemas/models.NodeStatus"},"tags":{"additionalProperties":{"type":"object"},"type":"object"}},"required":["hostid","id"],"type":"object"},"models.EgressRangeMetric":{"properties":{"nat":{"type":"boolean"},"nat_mode":{"$ref":"#/components/schemas/models.EgressNATMode"},"network":{"type":"string"},"route_metric":{"description":"preffered range 1-999","type":"integer"},"virtual_network":{"type":"string"}},"type":"object"},"models.EgressNATMode":{"enum":["virtual_nat","direct_nat"],"type":"string"},"models.InetNodeReq":{"properties":{"inet_node_client_ids":{"items":{"type":"string"},"type":"array"}},"type":"object"},"models.Severity":{"enum":[0,1,2,3,4],"type":"integer"},"models.Violation":{"properties":{"attribute":{"type":"string"},"check_id":{"type":"string"},"message":{"type":"string"},"name":{"type":"string"},"severity":{"$ref":"#/components/schemas/models.Severity"}},"type":"object"},"models.ExtClient":{"properties":{"address":{"type":"string"},"address6":{"type":"string"},"allowed_ips":{"items":{"type":"string"},"type":"array"},"client_version":{"type":"string"},"clientid":{"type":"string"},"country":{"type":"string"},"deniednodeacls":{"additionalProperties":{"type":"object"},"type":"object"},"device_id":{"type":"string"},"device_name":{"type":"string"},"dns":{"type":"string"},"enabled":{"type":"boolean"},"extraallowedips":{"items":{"type":"string"},"type":"array"},"ingressgatewayendpoint":{"type":"string"},"ingressgatewayid":{"type":"string"},"jit_expires_at":{"description":"JIT grant expiry time (nil if JIT not enabled or user is admin)","type":"string"},"kernel_version":{"type":"string"},"last_evaluated_at":{"type":"string"},"lastmodified":{"format":"int64","type":"integer"},"location":{"description":"format: lat,long","type":"string"},"network":{"type":"string"},"os":{"type":"string"},"os_family":{"type":"string"},"os_version":{"type":"string"},"ownerid":{"type":"string"},"postdown":{"type":"string"},"postup":{"type":"string"},"posture_check_violation_severity_level":{"$ref":"#/components/schemas/models.Severity"},"posture_check_violations":{"items":{"$ref":"#/components/schemas/models.Violation"},"type":"array"},"privatekey":{"type":"string"},"public_endpoint":{"type":"string"},"publickey":{"type":"string"},"remote_access_client_id":{"description":"unique ID (MAC address) of RAC machine","type":"string"},"tags":{"additionalProperties":{"type":"object"},"type":"object"}},"type":"object"},"models.NodeStatus":{"enum":["online","offline","warning","error","unknown","disconnected"],"type":"string"}}}}
```

## The models.AuthParams object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"models.AuthParams":{"properties":{"id":{"type":"string"},"macaddress":{"type":"string"},"password":{"type":"string"}},"type":"object"}}}}
```

## The models.AutoRelayMeReq object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"models.AutoRelayMeReq":{"properties":{"auto_relay_gw_id":{"type":"string"},"node_id":{"type":"string"}},"type":"object"}}}}
```

## The models.CreateGroupReq object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"models.CreateGroupReq":{"properties":{"members":{"items":{"type":"string"},"type":"array"},"user_group":{"$ref":"#/components/schemas/models.UserGroup"}},"type":"object"},"models.UserGroup":{"properties":{"color_code":{"type":"string"},"default":{"type":"boolean"},"external_identity_provider_id":{"type":"string"},"id":{"type":"string"},"meta_data":{"type":"string"},"name":{"type":"string"},"network_roles":{"additionalProperties":{"additionalProperties":{"type":"object"},"type":"object"},"type":"object"}},"type":"object"}}}}
```

## The models.CreateGwReq object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"models.CreateGwReq":{"properties":{"extclientdns":{"type":"string"},"inet_node_client_ids":{"items":{"type":"string"},"type":"array"},"is_internet_gw":{"type":"boolean"},"metadata":{"type":"string"},"mtu":{"type":"integer"},"netid":{"type":"string"},"nodeid":{"type":"string"},"persistentkeepalive":{"type":"integer"},"relayaddrs":{"items":{"type":"string"},"type":"array"}},"type":"object"}}}}
```

## The models.CreateTagReq object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"models.CreateTagReq":{"properties":{"color_code":{"type":"string"},"network":{"$ref":"#/components/schemas/models.NetworkID"},"tag_name":{"type":"string"},"tagged_nodes":{"items":{"$ref":"#/components/schemas/models.ApiNode"},"type":"array"}},"type":"object"},"models.NetworkID":{"enum":["all_networks"],"type":"string"},"models.ApiNode":{"properties":{"additional_rag_ips":{"items":{"type":"string"},"type":"array"},"address":{"type":"string"},"address6":{"type":"string"},"allowedips":{"items":{"type":"string"},"type":"array"},"auto_assign_gw":{"type":"boolean"},"auto_relayed_peers":{"additionalProperties":{"type":"string"},"type":"object"},"connected":{"type":"boolean"},"country":{"type":"string"},"defaultacl":{"description":"== PRO ==","type":"string"},"dnson":{"type":"boolean"},"egressgatewaynatenabled":{"type":"boolean"},"egressgatewayranges":{"items":{"type":"string"},"type":"array"},"egressgatewayranges_with_metric":{"items":{"$ref":"#/components/schemas/models.EgressRangeMetric"},"type":"array"},"expdatetime":{"format":"int64","type":"integer"},"fail_over_peers":{"additionalProperties":{"type":"object"},"type":"object"},"failed_over_by":{"type":"string"},"hostid":{"minLength":5,"type":"string"},"id":{"minLength":5,"type":"string"},"inet_node_req":{"$ref":"#/components/schemas/models.InetNodeReq"},"ingressdns":{"type":"string"},"ingressmtu":{"type":"integer"},"ingresspersistentkeepalive":{"type":"integer"},"internetgw_node_id":{"type":"string"},"is_auto_relay":{"type":"boolean"},"is_fail_over":{"type":"boolean"},"is_gw":{"type":"boolean"},"is_static":{"type":"boolean"},"is_user_node":{"type":"boolean"},"isegressgateway":{"type":"boolean"},"isingressgateway":{"type":"boolean"},"isinternetgateway":{"type":"boolean"},"isrelay":{"type":"boolean"},"isrelayed":{"type":"boolean"},"last_evaluated_at":{"type":"string"},"lastcheckin":{"format":"int64","type":"integer"},"lastmodified":{"format":"int64","type":"integer"},"lastpeerupdate":{"format":"int64","type":"integer"},"localaddress":{"type":"string"},"location":{"type":"string"},"metadata":{"type":"string"},"network":{"type":"string"},"networkrange":{"type":"string"},"networkrange6":{"type":"string"},"pendingdelete":{"type":"boolean"},"posture_check_violation_severity_level":{"$ref":"#/components/schemas/models.Severity"},"posture_check_violations":{"items":{"$ref":"#/components/schemas/models.Violation"},"type":"array"},"relayedby":{"description":"AutoRelayedBy                 uuid.UUID           `json:\"auto_relayed_by\"`","type":"string"},"relaynodes":{"items":{"type":"string"},"type":"array"},"server":{"type":"string"},"static_node":{"$ref":"#/components/schemas/models.ExtClient"},"status":{"$ref":"#/components/schemas/models.NodeStatus"},"tags":{"additionalProperties":{"type":"object"},"type":"object"}},"required":["hostid","id"],"type":"object"},"models.EgressRangeMetric":{"properties":{"nat":{"type":"boolean"},"nat_mode":{"$ref":"#/components/schemas/models.EgressNATMode"},"network":{"type":"string"},"route_metric":{"description":"preffered range 1-999","type":"integer"},"virtual_network":{"type":"string"}},"type":"object"},"models.EgressNATMode":{"enum":["virtual_nat","direct_nat"],"type":"string"},"models.InetNodeReq":{"properties":{"inet_node_client_ids":{"items":{"type":"string"},"type":"array"}},"type":"object"},"models.Severity":{"enum":[0,1,2,3,4],"type":"integer"},"models.Violation":{"properties":{"attribute":{"type":"string"},"check_id":{"type":"string"},"message":{"type":"string"},"name":{"type":"string"},"severity":{"$ref":"#/components/schemas/models.Severity"}},"type":"object"},"models.ExtClient":{"properties":{"address":{"type":"string"},"address6":{"type":"string"},"allowed_ips":{"items":{"type":"string"},"type":"array"},"client_version":{"type":"string"},"clientid":{"type":"string"},"country":{"type":"string"},"deniednodeacls":{"additionalProperties":{"type":"object"},"type":"object"},"device_id":{"type":"string"},"device_name":{"type":"string"},"dns":{"type":"string"},"enabled":{"type":"boolean"},"extraallowedips":{"items":{"type":"string"},"type":"array"},"ingressgatewayendpoint":{"type":"string"},"ingressgatewayid":{"type":"string"},"jit_expires_at":{"description":"JIT grant expiry time (nil if JIT not enabled or user is admin)","type":"string"},"kernel_version":{"type":"string"},"last_evaluated_at":{"type":"string"},"lastmodified":{"format":"int64","type":"integer"},"location":{"description":"format: lat,long","type":"string"},"network":{"type":"string"},"os":{"type":"string"},"os_family":{"type":"string"},"os_version":{"type":"string"},"ownerid":{"type":"string"},"postdown":{"type":"string"},"postup":{"type":"string"},"posture_check_violation_severity_level":{"$ref":"#/components/schemas/models.Severity"},"posture_check_violations":{"items":{"$ref":"#/components/schemas/models.Violation"},"type":"array"},"privatekey":{"type":"string"},"public_endpoint":{"type":"string"},"publickey":{"type":"string"},"remote_access_client_id":{"description":"unique ID (MAC address) of RAC machine","type":"string"},"tags":{"additionalProperties":{"type":"object"},"type":"object"}},"type":"object"},"models.NodeStatus":{"enum":["online","offline","warning","error","unknown","disconnected"],"type":"string"}}}}
```

## The models.CustomExtClient object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"models.CustomExtClient":{"properties":{"client_version":{"type":"string"},"clientid":{"type":"string"},"country":{"type":"string"},"deniednodeacls":{"additionalProperties":{"type":"object"},"type":"object"},"device_id":{"type":"string"},"device_name":{"type":"string"},"dns":{"type":"string"},"enabled":{"type":"boolean"},"extraallowedips":{"items":{"type":"string"},"type":"array"},"is_already_connected_to_inet_gw":{"type":"boolean"},"kernel_version":{"type":"string"},"location":{"description":"format: lat,long","type":"string"},"os":{"type":"string"},"os_family":{"type":"string"},"os_version":{"type":"string"},"postdown":{"maxLength":1024,"type":"string"},"postup":{"maxLength":1024,"type":"string"},"public_endpoint":{"type":"string"},"publickey":{"type":"string"},"remote_access_client_id":{"description":"unique ID (MAC address) of RAC machine","type":"string"},"tags":{"additionalProperties":{"type":"object"},"type":"object"}},"type":"object"}}}}
```

## The models.DNSEntry object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"models.DNSEntry":{"properties":{"address":{"type":"string"},"address6":{"type":"string"},"name":{"maxLength":192,"minLength":1,"type":"string"},"network":{"type":"string"}},"required":["name"],"type":"object"}}}}
```

## The models.EgressDomain object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"models.EgressDomain":{"properties":{"domain":{"type":"string"},"host":{"$ref":"#/components/schemas/models.Host"},"id":{"type":"string"},"node":{"$ref":"#/components/schemas/models.Node"}},"type":"object"},"models.Host":{"properties":{"autoupdate":{"type":"boolean"},"country_code":{"type":"string"},"daemoninstalled":{"type":"boolean"},"debug":{"type":"boolean"},"defaultinterface":{"type":"string"},"dns_status":{"type":"string"},"enable_flow_logs":{"type":"boolean"},"endpointip":{"items":{"type":"integer"},"type":"array"},"endpointipv6":{"items":{"type":"integer"},"type":"array"},"firewallinuse":{"type":"string"},"hostpass":{"type":"string"},"id":{"type":"string"},"interface":{"type":"string"},"interfaces":{"items":{"$ref":"#/components/schemas/models.Iface"},"type":"array"},"ipforwarding":{"type":"boolean"},"isdefault":{"type":"boolean"},"isdocker":{"type":"boolean"},"isk8s":{"type":"boolean"},"isstatic":{"type":"boolean"},"isstaticport":{"type":"boolean"},"kernel_version":{"type":"string"},"listenport":{"type":"integer"},"location":{"description":"Format: \"lat,lon\"","type":"string"},"macaddress":{"items":{"type":"integer"},"type":"array"},"mtu":{"type":"integer"},"name":{"type":"string"},"nat_type":{"type":"string"},"nodes":{"items":{"type":"string"},"type":"array"},"os":{"type":"string"},"os_family":{"type":"string"},"os_version":{"type":"string"},"persistentkeepalive":{"format":"int64","type":"integer"},"publickey":{"items":{"type":"integer"},"type":"array"},"traffickeypublic":{"items":{"type":"integer"},"type":"array"},"turn_endpoint":{"$ref":"#/components/schemas/netip.AddrPort"},"verbosity":{"type":"integer"},"version":{"type":"string"},"wg_public_listen_port":{"type":"integer"}},"type":"object"},"models.Iface":{"properties":{"address":{"$ref":"#/components/schemas/net.IPNet"},"addressString":{"type":"string"},"name":{"type":"string"}},"type":"object"},"net.IPNet":{"properties":{"ip":{"description":"network number","items":{"type":"integer"},"type":"array"},"mask":{"description":"network mask","items":{"format":"int32","type":"integer"},"type":"array"}},"type":"object"},"netip.AddrPort":{"type":"object"},"models.Node":{"properties":{"action":{"type":"string"},"additional_rag_ips":{"items":{"type":"number"},"type":"array"},"address":{"$ref":"#/components/schemas/net.IPNet"},"address6":{"$ref":"#/components/schemas/net.IPNet"},"auto_assign_gw":{"type":"boolean"},"auto_relayed_peers_v1":{"additionalProperties":{"type":"string"},"description":"AutoRelayedPeers   map[string]struct{} `json:\"auto_relayed_peers\"`","type":"object"},"connected":{"type":"boolean"},"country_code":{"type":"string"},"defaultacl":{"description":"== PRO ==","type":"string"},"egressgatewaynatenabled":{"type":"boolean"},"egressgatewayranges":{"items":{"type":"string"},"type":"array"},"egressgatewayrequest":{"$ref":"#/components/schemas/models.EgressGatewayRequest"},"expdatetime":{"type":"string"},"fail_over_peers":{"additionalProperties":{"type":"object"},"description":"AutoRelayedBy     uuid.UUID           `json:\"auto_relayed_by\"`","type":"object"},"failed_over_by":{"type":"string"},"hostid":{"type":"string"},"id":{"type":"string"},"inet_node_req":{"$ref":"#/components/schemas/models.InetNodeReq"},"ingressdns":{"type":"string"},"ingressgatewayrange":{"type":"string"},"ingressgatewayrange6":{"type":"string"},"ingressmtu":{"type":"integer"},"ingresspersistentkeepalive":{"type":"integer"},"internetgw_node_id":{"type":"string"},"is_auto_relay":{"type":"boolean"},"is_fail_over":{"type":"boolean"},"is_gw":{"type":"boolean"},"is_static":{"type":"boolean"},"is_user_node":{"type":"boolean"},"isegressgateway":{"type":"boolean"},"isingressgateway":{"type":"boolean"},"isinternetgateway":{"type":"boolean"},"isrelay":{"type":"boolean"},"isrelayed":{"type":"boolean"},"last_evaluated_at":{"type":"string"},"lastcheckin":{"type":"string"},"lastmodified":{"type":"string"},"lastpeerupdate":{"type":"string"},"localaddress":{"$ref":"#/components/schemas/net.IPNet"},"location":{"description":"Format: \"lat,lon\"","type":"string"},"metadata":{"type":"string"},"network":{"type":"string"},"networkrange":{"type":"integer"},"networkrange6":{"type":"number"},"node_status":{"$ref":"#/components/schemas/models.NodeStatus"},"ownerid":{"type":"string"},"pendingdelete":{"type":"boolean"},"posture_check_violation_severity_level":{"$ref":"#/components/schemas/models.Severity"},"posture_check_violations":{"items":{"$ref":"#/components/schemas/models.Violation"},"type":"array"},"relayedby":{"type":"string"},"relaynodes":{"items":{"type":"string"},"type":"array"},"server":{"type":"string"},"static_node":{"$ref":"#/components/schemas/models.ExtClient"},"tags":{"additionalProperties":{"type":"object"},"type":"object"}},"type":"object"},"models.EgressGatewayRequest":{"properties":{"natenabled":{"type":"string"},"netid":{"type":"string"},"nodeid":{"type":"string"},"ranges":{"items":{"type":"string"},"type":"array"},"ranges_with_metric":{"items":{"$ref":"#/components/schemas/models.EgressRangeMetric"},"type":"array"}},"type":"object"},"models.EgressRangeMetric":{"properties":{"nat":{"type":"boolean"},"nat_mode":{"$ref":"#/components/schemas/models.EgressNATMode"},"network":{"type":"string"},"route_metric":{"description":"preffered range 1-999","type":"integer"},"virtual_network":{"type":"string"}},"type":"object"},"models.EgressNATMode":{"enum":["virtual_nat","direct_nat"],"type":"string"},"models.InetNodeReq":{"properties":{"inet_node_client_ids":{"items":{"type":"string"},"type":"array"}},"type":"object"},"models.NodeStatus":{"enum":["online","offline","warning","error","unknown","disconnected"],"type":"string"},"models.Severity":{"enum":[0,1,2,3,4],"type":"integer"},"models.Violation":{"properties":{"attribute":{"type":"string"},"check_id":{"type":"string"},"message":{"type":"string"},"name":{"type":"string"},"severity":{"$ref":"#/components/schemas/models.Severity"}},"type":"object"},"models.ExtClient":{"properties":{"address":{"type":"string"},"address6":{"type":"string"},"allowed_ips":{"items":{"type":"string"},"type":"array"},"client_version":{"type":"string"},"clientid":{"type":"string"},"country":{"type":"string"},"deniednodeacls":{"additionalProperties":{"type":"object"},"type":"object"},"device_id":{"type":"string"},"device_name":{"type":"string"},"dns":{"type":"string"},"enabled":{"type":"boolean"},"extraallowedips":{"items":{"type":"string"},"type":"array"},"ingressgatewayendpoint":{"type":"string"},"ingressgatewayid":{"type":"string"},"jit_expires_at":{"description":"JIT grant expiry time (nil if JIT not enabled or user is admin)","type":"string"},"kernel_version":{"type":"string"},"last_evaluated_at":{"type":"string"},"lastmodified":{"format":"int64","type":"integer"},"location":{"description":"format: lat,long","type":"string"},"network":{"type":"string"},"os":{"type":"string"},"os_family":{"type":"string"},"os_version":{"type":"string"},"ownerid":{"type":"string"},"postdown":{"type":"string"},"postup":{"type":"string"},"posture_check_violation_severity_level":{"$ref":"#/components/schemas/models.Severity"},"posture_check_violations":{"items":{"$ref":"#/components/schemas/models.Violation"},"type":"array"},"privatekey":{"type":"string"},"public_endpoint":{"type":"string"},"publickey":{"type":"string"},"remote_access_client_id":{"description":"unique ID (MAC address) of RAC machine","type":"string"},"tags":{"additionalProperties":{"type":"object"},"type":"object"}},"type":"object"}}}}
```

## The models.EgressGatewayRequest object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"models.EgressGatewayRequest":{"properties":{"natenabled":{"type":"string"},"netid":{"type":"string"},"nodeid":{"type":"string"},"ranges":{"items":{"type":"string"},"type":"array"},"ranges_with_metric":{"items":{"$ref":"#/components/schemas/models.EgressRangeMetric"},"type":"array"}},"type":"object"},"models.EgressRangeMetric":{"properties":{"nat":{"type":"boolean"},"nat_mode":{"$ref":"#/components/schemas/models.EgressNATMode"},"network":{"type":"string"},"route_metric":{"description":"preffered range 1-999","type":"integer"},"virtual_network":{"type":"string"}},"type":"object"},"models.EgressNATMode":{"enum":["virtual_nat","direct_nat"],"type":"string"}}}}
```

## The models.EgressInfo object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"models.EgressInfo":{"properties":{"egress_fw_rules":{"additionalProperties":{"$ref":"#/components/schemas/models.AclRule"},"type":"object"},"egress_gateway_cfg":{"$ref":"#/components/schemas/models.EgressGatewayRequest"},"egress_gw_addr":{"$ref":"#/components/schemas/net.IPNet"},"egress_gw_addr6":{"$ref":"#/components/schemas/net.IPNet"},"egress_id":{"type":"string"},"network":{"$ref":"#/components/schemas/net.IPNet"},"network6":{"$ref":"#/components/schemas/net.IPNet"}},"type":"object"},"models.AclRule":{"properties":{"allowed":{"type":"boolean"},"allowed_ports":{"items":{"type":"string"},"type":"array"},"allowed_protocols":{"allOf":[{"$ref":"#/components/schemas/models.Protocol"}],"description":"tcp, udp, etc."},"direction":{"allOf":[{"$ref":"#/components/schemas/models.AllowedTrafficDirection"}],"description":"single or two-way"},"dst":{"items":{"$ref":"#/components/schemas/net.IPNet"},"type":"array"},"dst6":{"items":{"$ref":"#/components/schemas/net.IPNet"},"type":"array"},"id":{"type":"string"},"ip_list":{"items":{"$ref":"#/components/schemas/net.IPNet"},"type":"array"},"ip6_list":{"items":{"$ref":"#/components/schemas/net.IPNet"},"type":"array"}},"type":"object"},"models.Protocol":{"enum":["all","udp","tcp","icmp"],"type":"string"},"models.AllowedTrafficDirection":{"enum":[0,1],"type":"integer"},"net.IPNet":{"properties":{"ip":{"description":"network number","items":{"type":"integer"},"type":"array"},"mask":{"description":"network mask","items":{"format":"int32","type":"integer"},"type":"array"}},"type":"object"},"models.EgressGatewayRequest":{"properties":{"natenabled":{"type":"string"},"netid":{"type":"string"},"nodeid":{"type":"string"},"ranges":{"items":{"type":"string"},"type":"array"},"ranges_with_metric":{"items":{"$ref":"#/components/schemas/models.EgressRangeMetric"},"type":"array"}},"type":"object"},"models.EgressRangeMetric":{"properties":{"nat":{"type":"boolean"},"nat_mode":{"$ref":"#/components/schemas/models.EgressNATMode"},"network":{"type":"string"},"route_metric":{"description":"preffered range 1-999","type":"integer"},"virtual_network":{"type":"string"}},"type":"object"},"models.EgressNATMode":{"enum":["virtual_nat","direct_nat"],"type":"string"}}}}
```

## The models.EgressNATMode object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"models.EgressNATMode":{"enum":["virtual_nat","direct_nat"],"type":"string"}}}}
```

## The models.EgressNetworkRoutes object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"models.EgressNetworkRoutes":{"properties":{"egress_gw_addr":{"$ref":"#/components/schemas/net.IPNet"},"egress_gw_addr6":{"$ref":"#/components/schemas/net.IPNet"},"egress_ranges":{"items":{"type":"string"},"type":"array"},"egress_ranges_metric":{"items":{"$ref":"#/components/schemas/models.EgressRangeMetric"},"type":"array"},"network":{"type":"string"},"node_addr":{"$ref":"#/components/schemas/net.IPNet"},"node_addr6":{"$ref":"#/components/schemas/net.IPNet"},"peer_key":{"type":"string"}},"type":"object"},"net.IPNet":{"properties":{"ip":{"description":"network number","items":{"type":"integer"},"type":"array"},"mask":{"description":"network mask","items":{"format":"int32","type":"integer"},"type":"array"}},"type":"object"},"models.EgressRangeMetric":{"properties":{"nat":{"type":"boolean"},"nat_mode":{"$ref":"#/components/schemas/models.EgressNATMode"},"network":{"type":"string"},"route_metric":{"description":"preffered range 1-999","type":"integer"},"virtual_network":{"type":"string"}},"type":"object"},"models.EgressNATMode":{"enum":["virtual_nat","direct_nat"],"type":"string"}}}}
```

## The models.EgressRangeMetric object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"models.EgressRangeMetric":{"properties":{"nat":{"type":"boolean"},"nat_mode":{"$ref":"#/components/schemas/models.EgressNATMode"},"network":{"type":"string"},"route_metric":{"description":"preffered range 1-999","type":"integer"},"virtual_network":{"type":"string"}},"type":"object"},"models.EgressNATMode":{"enum":["virtual_nat","direct_nat"],"type":"string"}}}}
```

## The models.EgressReq object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"models.EgressReq":{"properties":{"description":{"type":"string"},"domain":{"type":"string"},"id":{"type":"string"},"is_internet_gateway":{"type":"boolean"},"mode":{"$ref":"#/components/schemas/models.EgressNATMode"},"name":{"type":"string"},"nat":{"type":"boolean"},"network":{"type":"string"},"nodes":{"additionalProperties":{"type":"integer"},"type":"object"},"range":{"type":"string"},"status":{"type":"boolean"},"tags":{"additionalProperties":{"type":"integer"},"type":"object"}},"type":"object"},"models.EgressNATMode":{"enum":["virtual_nat","direct_nat"],"type":"string"}}}}
```

## The models.EnrollmentKey object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"models.EnrollmentKey":{"properties":{"auto_assign_gw":{"type":"boolean"},"auto_egress":{"type":"boolean"},"default":{"type":"boolean"},"expiration":{"type":"string"},"groups":{"items":{"type":"string"},"type":"array"},"networks":{"items":{"type":"string"},"type":"array"},"relay":{"type":"string"},"tags":{"items":{"type":"string"},"type":"array"},"token":{"description":"B64 value of EnrollmentToken","type":"string"},"type":{"$ref":"#/components/schemas/models.KeyType"},"unlimited":{"type":"boolean"},"uses_remaining":{"type":"integer"},"value":{"type":"string"}},"type":"object"},"models.KeyType":{"enum":[0,1,2,3],"type":"integer"}}}}
```

## The models.ErrorResponse object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"models.ErrorResponse":{"properties":{"code":{"type":"integer"},"message":{"type":"string"},"response":{}},"type":"object"}}}}
```

## The models.ExtClient object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"models.ExtClient":{"properties":{"address":{"type":"string"},"address6":{"type":"string"},"allowed_ips":{"items":{"type":"string"},"type":"array"},"client_version":{"type":"string"},"clientid":{"type":"string"},"country":{"type":"string"},"deniednodeacls":{"additionalProperties":{"type":"object"},"type":"object"},"device_id":{"type":"string"},"device_name":{"type":"string"},"dns":{"type":"string"},"enabled":{"type":"boolean"},"extraallowedips":{"items":{"type":"string"},"type":"array"},"ingressgatewayendpoint":{"type":"string"},"ingressgatewayid":{"type":"string"},"jit_expires_at":{"description":"JIT grant expiry time (nil if JIT not enabled or user is admin)","type":"string"},"kernel_version":{"type":"string"},"last_evaluated_at":{"type":"string"},"lastmodified":{"format":"int64","type":"integer"},"location":{"description":"format: lat,long","type":"string"},"network":{"type":"string"},"os":{"type":"string"},"os_family":{"type":"string"},"os_version":{"type":"string"},"ownerid":{"type":"string"},"postdown":{"type":"string"},"postup":{"type":"string"},"posture_check_violation_severity_level":{"$ref":"#/components/schemas/models.Severity"},"posture_check_violations":{"items":{"$ref":"#/components/schemas/models.Violation"},"type":"array"},"privatekey":{"type":"string"},"public_endpoint":{"type":"string"},"publickey":{"type":"string"},"remote_access_client_id":{"description":"unique ID (MAC address) of RAC machine","type":"string"},"tags":{"additionalProperties":{"type":"object"},"type":"object"}},"type":"object"},"models.Severity":{"enum":[0,1,2,3,4],"type":"integer"},"models.Violation":{"properties":{"attribute":{"type":"string"},"check_id":{"type":"string"},"message":{"type":"string"},"name":{"type":"string"},"severity":{"$ref":"#/components/schemas/models.Severity"}},"type":"object"}}}}
```

## The models.FeatureFlags object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"models.FeatureFlags":{"properties":{"allow_multi_server_license":{"type":"boolean"},"enable_device_approval":{"type":"boolean"},"enable_egress_ha":{"type":"boolean"},"enable_flow_logs":{"type":"boolean"},"enable_gws_ha":{"type":"boolean"},"enable_idp_integration":{"type":"boolean"},"enable_jit":{"type":"boolean"},"enable_network_activity":{"type":"boolean"},"enable_oauth":{"type":"boolean"},"enable_overlapping_egress_ranges":{"type":"boolean"},"enable_posture_checks":{"type":"boolean"}},"type":"object"}}}}
```

## The models.FwRule object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"models.FwRule":{"properties":{"allow":{"type":"boolean"},"allowed_ports":{"items":{"type":"string"},"type":"array"},"allowed_protocols":{"allOf":[{"$ref":"#/components/schemas/models.Protocol"}],"description":"tcp, udp, etc."},"dst_ip":{"$ref":"#/components/schemas/net.IPNet"},"src_ip":{"$ref":"#/components/schemas/net.IPNet"}},"type":"object"},"models.Protocol":{"enum":["all","udp","tcp","icmp"],"type":"string"},"net.IPNet":{"properties":{"ip":{"description":"network number","items":{"type":"integer"},"type":"array"},"mask":{"description":"network mask","items":{"format":"int32","type":"integer"},"type":"array"}},"type":"object"}}}}
```

## The models.FwUpdate object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"models.FwUpdate":{"properties":{"acl_rules":{"additionalProperties":{"$ref":"#/components/schemas/models.AclRule"},"type":"object"},"allow_all":{"type":"boolean"},"egress_info":{"additionalProperties":{"$ref":"#/components/schemas/models.EgressInfo"},"type":"object"},"ingress_info":{"additionalProperties":{"$ref":"#/components/schemas/models.IngressInfo"},"type":"object"},"is_egress_gw":{"type":"boolean"},"is_ingress_gw":{"type":"boolean"},"networks":{"items":{"$ref":"#/components/schemas/models.AclRule"},"type":"array"}},"type":"object"},"models.AclRule":{"properties":{"allowed":{"type":"boolean"},"allowed_ports":{"items":{"type":"string"},"type":"array"},"allowed_protocols":{"allOf":[{"$ref":"#/components/schemas/models.Protocol"}],"description":"tcp, udp, etc."},"direction":{"allOf":[{"$ref":"#/components/schemas/models.AllowedTrafficDirection"}],"description":"single or two-way"},"dst":{"items":{"$ref":"#/components/schemas/net.IPNet"},"type":"array"},"dst6":{"items":{"$ref":"#/components/schemas/net.IPNet"},"type":"array"},"id":{"type":"string"},"ip_list":{"items":{"$ref":"#/components/schemas/net.IPNet"},"type":"array"},"ip6_list":{"items":{"$ref":"#/components/schemas/net.IPNet"},"type":"array"}},"type":"object"},"models.Protocol":{"enum":["all","udp","tcp","icmp"],"type":"string"},"models.AllowedTrafficDirection":{"enum":[0,1],"type":"integer"},"net.IPNet":{"properties":{"ip":{"description":"network number","items":{"type":"integer"},"type":"array"},"mask":{"description":"network mask","items":{"format":"int32","type":"integer"},"type":"array"}},"type":"object"},"models.EgressInfo":{"properties":{"egress_fw_rules":{"additionalProperties":{"$ref":"#/components/schemas/models.AclRule"},"type":"object"},"egress_gateway_cfg":{"$ref":"#/components/schemas/models.EgressGatewayRequest"},"egress_gw_addr":{"$ref":"#/components/schemas/net.IPNet"},"egress_gw_addr6":{"$ref":"#/components/schemas/net.IPNet"},"egress_id":{"type":"string"},"network":{"$ref":"#/components/schemas/net.IPNet"},"network6":{"$ref":"#/components/schemas/net.IPNet"}},"type":"object"},"models.EgressGatewayRequest":{"properties":{"natenabled":{"type":"string"},"netid":{"type":"string"},"nodeid":{"type":"string"},"ranges":{"items":{"type":"string"},"type":"array"},"ranges_with_metric":{"items":{"$ref":"#/components/schemas/models.EgressRangeMetric"},"type":"array"}},"type":"object"},"models.EgressRangeMetric":{"properties":{"nat":{"type":"boolean"},"nat_mode":{"$ref":"#/components/schemas/models.EgressNATMode"},"network":{"type":"string"},"route_metric":{"description":"preffered range 1-999","type":"integer"},"virtual_network":{"type":"string"}},"type":"object"},"models.EgressNATMode":{"enum":["virtual_nat","direct_nat"],"type":"string"},"models.IngressInfo":{"properties":{"egress_ranges":{"items":{"$ref":"#/components/schemas/net.IPNet"},"type":"array"},"egress_ranges6":{"items":{"$ref":"#/components/schemas/net.IPNet"},"type":"array"},"ingress_id":{"type":"string"},"network":{"$ref":"#/components/schemas/net.IPNet"},"network6":{"$ref":"#/components/schemas/net.IPNet"},"rules":{"items":{"$ref":"#/components/schemas/models.FwRule"},"type":"array"},"static_node_ips":{"items":{"items":{"type":"integer"},"type":"array"},"type":"array"}},"type":"object"},"models.FwRule":{"properties":{"allow":{"type":"boolean"},"allowed_ports":{"items":{"type":"string"},"type":"array"},"allowed_protocols":{"allOf":[{"$ref":"#/components/schemas/models.Protocol"}],"description":"tcp, udp, etc."},"dst_ip":{"$ref":"#/components/schemas/net.IPNet"},"src_ip":{"$ref":"#/components/schemas/net.IPNet"}},"type":"object"}}}}
```

## The models.Host object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"models.Host":{"properties":{"autoupdate":{"type":"boolean"},"country_code":{"type":"string"},"daemoninstalled":{"type":"boolean"},"debug":{"type":"boolean"},"defaultinterface":{"type":"string"},"dns_status":{"type":"string"},"enable_flow_logs":{"type":"boolean"},"endpointip":{"items":{"type":"integer"},"type":"array"},"endpointipv6":{"items":{"type":"integer"},"type":"array"},"firewallinuse":{"type":"string"},"hostpass":{"type":"string"},"id":{"type":"string"},"interface":{"type":"string"},"interfaces":{"items":{"$ref":"#/components/schemas/models.Iface"},"type":"array"},"ipforwarding":{"type":"boolean"},"isdefault":{"type":"boolean"},"isdocker":{"type":"boolean"},"isk8s":{"type":"boolean"},"isstatic":{"type":"boolean"},"isstaticport":{"type":"boolean"},"kernel_version":{"type":"string"},"listenport":{"type":"integer"},"location":{"description":"Format: \"lat,lon\"","type":"string"},"macaddress":{"items":{"type":"integer"},"type":"array"},"mtu":{"type":"integer"},"name":{"type":"string"},"nat_type":{"type":"string"},"nodes":{"items":{"type":"string"},"type":"array"},"os":{"type":"string"},"os_family":{"type":"string"},"os_version":{"type":"string"},"persistentkeepalive":{"format":"int64","type":"integer"},"publickey":{"items":{"type":"integer"},"type":"array"},"traffickeypublic":{"items":{"type":"integer"},"type":"array"},"turn_endpoint":{"$ref":"#/components/schemas/netip.AddrPort"},"verbosity":{"type":"integer"},"version":{"type":"string"},"wg_public_listen_port":{"type":"integer"}},"type":"object"},"models.Iface":{"properties":{"address":{"$ref":"#/components/schemas/net.IPNet"},"addressString":{"type":"string"},"name":{"type":"string"}},"type":"object"},"net.IPNet":{"properties":{"ip":{"description":"network number","items":{"type":"integer"},"type":"array"},"mask":{"description":"network mask","items":{"format":"int32","type":"integer"},"type":"array"}},"type":"object"},"netip.AddrPort":{"type":"object"}}}}
```

## The models.HostInfoMap object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"models.HostInfoMap":{"additionalProperties":{"$ref":"#/components/schemas/models.HostNetworkInfo"},"type":"object"},"models.HostNetworkInfo":{"properties":{"interfaces":{"items":{"$ref":"#/components/schemas/models.Iface"},"type":"array"},"is_static":{"type":"boolean"},"is_static_port":{"type":"boolean"},"listen_port":{"type":"integer"},"version":{"type":"string"}},"type":"object"},"models.Iface":{"properties":{"address":{"$ref":"#/components/schemas/net.IPNet"},"addressString":{"type":"string"},"name":{"type":"string"}},"type":"object"},"net.IPNet":{"properties":{"ip":{"description":"network number","items":{"type":"integer"},"type":"array"},"mask":{"description":"network mask","items":{"format":"int32","type":"integer"},"type":"array"}},"type":"object"}}}}
```

## The models.HostMqAction object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"models.HostMqAction":{"enum":["UPGRADE","FORCE_UPGRADE","SIGNAL_HOST","UPDATE_HOST","UPDATE_NODE","DELETE_HOST","JOIN_HOST_TO_NETWORK","ACK","REQ_ACK","CHECK_IN","UPDATE_KEYS","REQ_PULL","SIGNAL_PULL","UPDATE_METRICS","EGRESS_UPDATE","CHECK_AUTO_ASSIGN_GW"],"type":"string"}}}}
```

## The models.HostNetworkInfo object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"models.HostNetworkInfo":{"properties":{"interfaces":{"items":{"$ref":"#/components/schemas/models.Iface"},"type":"array"},"is_static":{"type":"boolean"},"is_static_port":{"type":"boolean"},"listen_port":{"type":"integer"},"version":{"type":"string"}},"type":"object"},"models.Iface":{"properties":{"address":{"$ref":"#/components/schemas/net.IPNet"},"addressString":{"type":"string"},"name":{"type":"string"}},"type":"object"},"net.IPNet":{"properties":{"ip":{"description":"network number","items":{"type":"integer"},"type":"array"},"mask":{"description":"network mask","items":{"format":"int32","type":"integer"},"type":"array"}},"type":"object"}}}}
```

## The models.HostPeerInfo object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"models.HostPeerInfo":{"properties":{"network_peers":{"additionalProperties":{"$ref":"#/components/schemas/models.PeerMap"},"type":"object"}},"type":"object"},"models.PeerMap":{"additionalProperties":{"$ref":"#/components/schemas/models.IDandAddr"},"type":"object"},"models.IDandAddr":{"properties":{"address":{"type":"string"},"address4":{"type":"string"},"address6":{"type":"string"},"host_id":{"type":"string"},"id":{"type":"string"},"is_extclient":{"type":"boolean"},"isserver":{"type":"string"},"listen_port":{"type":"integer"},"name":{"type":"string"},"network":{"type":"string"},"username":{"type":"string"}},"type":"object"}}}}
```

## The models.HostPull object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"models.HostPull":{"properties":{"address_identity_map":{"additionalProperties":{"$ref":"#/components/schemas/models.PeerIdentity"},"type":"object"},"auto_relay_nodes":{"additionalProperties":{"items":{"$ref":"#/components/schemas/models.Node"},"type":"array"},"type":"object"},"change_default_gw":{"type":"boolean"},"default_gw_ip":{"items":{"type":"integer"},"type":"array"},"dns_nameservers":{"items":{"$ref":"#/components/schemas/models.Nameserver"},"type":"array"},"egress_network_routes":{"items":{"$ref":"#/components/schemas/models.EgressNetworkRoutes"},"type":"array"},"egress_with_domains":{"items":{"$ref":"#/components/schemas/models.EgressDomain"},"type":"array"},"endpoint_detection":{"type":"boolean"},"fw_update":{"$ref":"#/components/schemas/models.FwUpdate"},"gw_nodes":{"additionalProperties":{"items":{"$ref":"#/components/schemas/models.Node"},"type":"array"},"type":"object"},"host":{"$ref":"#/components/schemas/models.Host"},"host_network_info":{"$ref":"#/components/schemas/models.HostInfoMap"},"is_inet_gw":{"type":"boolean"},"name_servers":{"items":{"type":"string"},"type":"array"},"nodes":{"items":{"$ref":"#/components/schemas/models.Node"},"type":"array"},"peer_ids":{"$ref":"#/components/schemas/models.PeerMap"},"peers":{"items":{"$ref":"#/components/schemas/wgtypes.PeerConfig"},"type":"array"},"replace_peers":{"type":"boolean"},"server_config":{"$ref":"#/components/schemas/models.ServerConfig"}},"type":"object"},"models.PeerIdentity":{"properties":{"id":{"type":"string"},"name":{"type":"string"},"type":{"$ref":"#/components/schemas/models.PeerType"}},"type":"object"},"models.PeerType":{"enum":[0,1,2,3],"type":"integer"},"models.Node":{"properties":{"action":{"type":"string"},"additional_rag_ips":{"items":{"type":"number"},"type":"array"},"address":{"$ref":"#/components/schemas/net.IPNet"},"address6":{"$ref":"#/components/schemas/net.IPNet"},"auto_assign_gw":{"type":"boolean"},"auto_relayed_peers_v1":{"additionalProperties":{"type":"string"},"description":"AutoRelayedPeers   map[string]struct{} `json:\"auto_relayed_peers\"`","type":"object"},"connected":{"type":"boolean"},"country_code":{"type":"string"},"defaultacl":{"description":"== PRO ==","type":"string"},"egressgatewaynatenabled":{"type":"boolean"},"egressgatewayranges":{"items":{"type":"string"},"type":"array"},"egressgatewayrequest":{"$ref":"#/components/schemas/models.EgressGatewayRequest"},"expdatetime":{"type":"string"},"fail_over_peers":{"additionalProperties":{"type":"object"},"description":"AutoRelayedBy     uuid.UUID           `json:\"auto_relayed_by\"`","type":"object"},"failed_over_by":{"type":"string"},"hostid":{"type":"string"},"id":{"type":"string"},"inet_node_req":{"$ref":"#/components/schemas/models.InetNodeReq"},"ingressdns":{"type":"string"},"ingressgatewayrange":{"type":"string"},"ingressgatewayrange6":{"type":"string"},"ingressmtu":{"type":"integer"},"ingresspersistentkeepalive":{"type":"integer"},"internetgw_node_id":{"type":"string"},"is_auto_relay":{"type":"boolean"},"is_fail_over":{"type":"boolean"},"is_gw":{"type":"boolean"},"is_static":{"type":"boolean"},"is_user_node":{"type":"boolean"},"isegressgateway":{"type":"boolean"},"isingressgateway":{"type":"boolean"},"isinternetgateway":{"type":"boolean"},"isrelay":{"type":"boolean"},"isrelayed":{"type":"boolean"},"last_evaluated_at":{"type":"string"},"lastcheckin":{"type":"string"},"lastmodified":{"type":"string"},"lastpeerupdate":{"type":"string"},"localaddress":{"$ref":"#/components/schemas/net.IPNet"},"location":{"description":"Format: \"lat,lon\"","type":"string"},"metadata":{"type":"string"},"network":{"type":"string"},"networkrange":{"type":"integer"},"networkrange6":{"type":"number"},"node_status":{"$ref":"#/components/schemas/models.NodeStatus"},"ownerid":{"type":"string"},"pendingdelete":{"type":"boolean"},"posture_check_violation_severity_level":{"$ref":"#/components/schemas/models.Severity"},"posture_check_violations":{"items":{"$ref":"#/components/schemas/models.Violation"},"type":"array"},"relayedby":{"type":"string"},"relaynodes":{"items":{"type":"string"},"type":"array"},"server":{"type":"string"},"static_node":{"$ref":"#/components/schemas/models.ExtClient"},"tags":{"additionalProperties":{"type":"object"},"type":"object"}},"type":"object"},"net.IPNet":{"properties":{"ip":{"description":"network number","items":{"type":"integer"},"type":"array"},"mask":{"description":"network mask","items":{"format":"int32","type":"integer"},"type":"array"}},"type":"object"},"models.EgressGatewayRequest":{"properties":{"natenabled":{"type":"string"},"netid":{"type":"string"},"nodeid":{"type":"string"},"ranges":{"items":{"type":"string"},"type":"array"},"ranges_with_metric":{"items":{"$ref":"#/components/schemas/models.EgressRangeMetric"},"type":"array"}},"type":"object"},"models.EgressRangeMetric":{"properties":{"nat":{"type":"boolean"},"nat_mode":{"$ref":"#/components/schemas/models.EgressNATMode"},"network":{"type":"string"},"route_metric":{"description":"preffered range 1-999","type":"integer"},"virtual_network":{"type":"string"}},"type":"object"},"models.EgressNATMode":{"enum":["virtual_nat","direct_nat"],"type":"string"},"models.InetNodeReq":{"properties":{"inet_node_client_ids":{"items":{"type":"string"},"type":"array"}},"type":"object"},"models.NodeStatus":{"enum":["online","offline","warning","error","unknown","disconnected"],"type":"string"},"models.Severity":{"enum":[0,1,2,3,4],"type":"integer"},"models.Violation":{"properties":{"attribute":{"type":"string"},"check_id":{"type":"string"},"message":{"type":"string"},"name":{"type":"string"},"severity":{"$ref":"#/components/schemas/models.Severity"}},"type":"object"},"models.ExtClient":{"properties":{"address":{"type":"string"},"address6":{"type":"string"},"allowed_ips":{"items":{"type":"string"},"type":"array"},"client_version":{"type":"string"},"clientid":{"type":"string"},"country":{"type":"string"},"deniednodeacls":{"additionalProperties":{"type":"object"},"type":"object"},"device_id":{"type":"string"},"device_name":{"type":"string"},"dns":{"type":"string"},"enabled":{"type":"boolean"},"extraallowedips":{"items":{"type":"string"},"type":"array"},"ingressgatewayendpoint":{"type":"string"},"ingressgatewayid":{"type":"string"},"jit_expires_at":{"description":"JIT grant expiry time (nil if JIT not enabled or user is admin)","type":"string"},"kernel_version":{"type":"string"},"last_evaluated_at":{"type":"string"},"lastmodified":{"format":"int64","type":"integer"},"location":{"description":"format: lat,long","type":"string"},"network":{"type":"string"},"os":{"type":"string"},"os_family":{"type":"string"},"os_version":{"type":"string"},"ownerid":{"type":"string"},"postdown":{"type":"string"},"postup":{"type":"string"},"posture_check_violation_severity_level":{"$ref":"#/components/schemas/models.Severity"},"posture_check_violations":{"items":{"$ref":"#/components/schemas/models.Violation"},"type":"array"},"privatekey":{"type":"string"},"public_endpoint":{"type":"string"},"publickey":{"type":"string"},"remote_access_client_id":{"description":"unique ID (MAC address) of RAC machine","type":"string"},"tags":{"additionalProperties":{"type":"object"},"type":"object"}},"type":"object"},"models.Nameserver":{"properties":{"ips":{"items":{"type":"string"},"type":"array"},"is_fallback":{"type":"boolean"},"is_search_domain":{"type":"boolean"},"match_domain":{"type":"string"}},"type":"object"},"models.EgressNetworkRoutes":{"properties":{"egress_gw_addr":{"$ref":"#/components/schemas/net.IPNet"},"egress_gw_addr6":{"$ref":"#/components/schemas/net.IPNet"},"egress_ranges":{"items":{"type":"string"},"type":"array"},"egress_ranges_metric":{"items":{"$ref":"#/components/schemas/models.EgressRangeMetric"},"type":"array"},"network":{"type":"string"},"node_addr":{"$ref":"#/components/schemas/net.IPNet"},"node_addr6":{"$ref":"#/components/schemas/net.IPNet"},"peer_key":{"type":"string"}},"type":"object"},"models.EgressDomain":{"properties":{"domain":{"type":"string"},"host":{"$ref":"#/components/schemas/models.Host"},"id":{"type":"string"},"node":{"$ref":"#/components/schemas/models.Node"}},"type":"object"},"models.Host":{"properties":{"autoupdate":{"type":"boolean"},"country_code":{"type":"string"},"daemoninstalled":{"type":"boolean"},"debug":{"type":"boolean"},"defaultinterface":{"type":"string"},"dns_status":{"type":"string"},"enable_flow_logs":{"type":"boolean"},"endpointip":{"items":{"type":"integer"},"type":"array"},"endpointipv6":{"items":{"type":"integer"},"type":"array"},"firewallinuse":{"type":"string"},"hostpass":{"type":"string"},"id":{"type":"string"},"interface":{"type":"string"},"interfaces":{"items":{"$ref":"#/components/schemas/models.Iface"},"type":"array"},"ipforwarding":{"type":"boolean"},"isdefault":{"type":"boolean"},"isdocker":{"type":"boolean"},"isk8s":{"type":"boolean"},"isstatic":{"type":"boolean"},"isstaticport":{"type":"boolean"},"kernel_version":{"type":"string"},"listenport":{"type":"integer"},"location":{"description":"Format: \"lat,lon\"","type":"string"},"macaddress":{"items":{"type":"integer"},"type":"array"},"mtu":{"type":"integer"},"name":{"type":"string"},"nat_type":{"type":"string"},"nodes":{"items":{"type":"string"},"type":"array"},"os":{"type":"string"},"os_family":{"type":"string"},"os_version":{"type":"string"},"persistentkeepalive":{"format":"int64","type":"integer"},"publickey":{"items":{"type":"integer"},"type":"array"},"traffickeypublic":{"items":{"type":"integer"},"type":"array"},"turn_endpoint":{"$ref":"#/components/schemas/netip.AddrPort"},"verbosity":{"type":"integer"},"version":{"type":"string"},"wg_public_listen_port":{"type":"integer"}},"type":"object"},"models.Iface":{"properties":{"address":{"$ref":"#/components/schemas/net.IPNet"},"addressString":{"type":"string"},"name":{"type":"string"}},"type":"object"},"netip.AddrPort":{"type":"object"},"models.FwUpdate":{"properties":{"acl_rules":{"additionalProperties":{"$ref":"#/components/schemas/models.AclRule"},"type":"object"},"allow_all":{"type":"boolean"},"egress_info":{"additionalProperties":{"$ref":"#/components/schemas/models.EgressInfo"},"type":"object"},"ingress_info":{"additionalProperties":{"$ref":"#/components/schemas/models.IngressInfo"},"type":"object"},"is_egress_gw":{"type":"boolean"},"is_ingress_gw":{"type":"boolean"},"networks":{"items":{"$ref":"#/components/schemas/models.AclRule"},"type":"array"}},"type":"object"},"models.AclRule":{"properties":{"allowed":{"type":"boolean"},"allowed_ports":{"items":{"type":"string"},"type":"array"},"allowed_protocols":{"allOf":[{"$ref":"#/components/schemas/models.Protocol"}],"description":"tcp, udp, etc."},"direction":{"allOf":[{"$ref":"#/components/schemas/models.AllowedTrafficDirection"}],"description":"single or two-way"},"dst":{"items":{"$ref":"#/components/schemas/net.IPNet"},"type":"array"},"dst6":{"items":{"$ref":"#/components/schemas/net.IPNet"},"type":"array"},"id":{"type":"string"},"ip_list":{"items":{"$ref":"#/components/schemas/net.IPNet"},"type":"array"},"ip6_list":{"items":{"$ref":"#/components/schemas/net.IPNet"},"type":"array"}},"type":"object"},"models.Protocol":{"enum":["all","udp","tcp","icmp"],"type":"string"},"models.AllowedTrafficDirection":{"enum":[0,1],"type":"integer"},"models.EgressInfo":{"properties":{"egress_fw_rules":{"additionalProperties":{"$ref":"#/components/schemas/models.AclRule"},"type":"object"},"egress_gateway_cfg":{"$ref":"#/components/schemas/models.EgressGatewayRequest"},"egress_gw_addr":{"$ref":"#/components/schemas/net.IPNet"},"egress_gw_addr6":{"$ref":"#/components/schemas/net.IPNet"},"egress_id":{"type":"string"},"network":{"$ref":"#/components/schemas/net.IPNet"},"network6":{"$ref":"#/components/schemas/net.IPNet"}},"type":"object"},"models.IngressInfo":{"properties":{"egress_ranges":{"items":{"$ref":"#/components/schemas/net.IPNet"},"type":"array"},"egress_ranges6":{"items":{"$ref":"#/components/schemas/net.IPNet"},"type":"array"},"ingress_id":{"type":"string"},"network":{"$ref":"#/components/schemas/net.IPNet"},"network6":{"$ref":"#/components/schemas/net.IPNet"},"rules":{"items":{"$ref":"#/components/schemas/models.FwRule"},"type":"array"},"static_node_ips":{"items":{"items":{"type":"integer"},"type":"array"},"type":"array"}},"type":"object"},"models.FwRule":{"properties":{"allow":{"type":"boolean"},"allowed_ports":{"items":{"type":"string"},"type":"array"},"allowed_protocols":{"allOf":[{"$ref":"#/components/schemas/models.Protocol"}],"description":"tcp, udp, etc."},"dst_ip":{"$ref":"#/components/schemas/net.IPNet"},"src_ip":{"$ref":"#/components/schemas/net.IPNet"}},"type":"object"},"models.HostInfoMap":{"additionalProperties":{"$ref":"#/components/schemas/models.HostNetworkInfo"},"type":"object"},"models.HostNetworkInfo":{"properties":{"interfaces":{"items":{"$ref":"#/components/schemas/models.Iface"},"type":"array"},"is_static":{"type":"boolean"},"is_static_port":{"type":"boolean"},"listen_port":{"type":"integer"},"version":{"type":"string"}},"type":"object"},"models.PeerMap":{"additionalProperties":{"$ref":"#/components/schemas/models.IDandAddr"},"type":"object"},"models.IDandAddr":{"properties":{"address":{"type":"string"},"address4":{"type":"string"},"address6":{"type":"string"},"host_id":{"type":"string"},"id":{"type":"string"},"is_extclient":{"type":"boolean"},"isserver":{"type":"string"},"listen_port":{"type":"integer"},"name":{"type":"string"},"network":{"type":"string"},"username":{"type":"string"}},"type":"object"},"wgtypes.PeerConfig":{"properties":{"allowedIPs":{"description":"AllowedIPs specifies a list of allowed IP addresses in CIDR notation\nfor this peer.","items":{"$ref":"#/components/schemas/net.IPNet"},"type":"array"},"endpoint":{"allOf":[{"$ref":"#/components/schemas/net.UDPAddr"}],"description":"Endpoint specifies the endpoint of this peer entry, if not nil."},"persistentKeepaliveInterval":{"description":"PersistentKeepaliveInterval specifies the persistent keepalive interval\nfor this peer, if not nil.\n\nA non-nil value of 0 will clear the persistent keepalive interval.","format":"int64","type":"integer"},"presharedKey":{"description":"PresharedKey specifies a peer's preshared key configuration, if not nil.\n\nA non-nil, zero-value Key will clear the preshared key.","items":{"type":"integer"},"type":"array"},"publicKey":{"description":"PublicKey specifies the public key of this peer.  PublicKey is a\nmandatory field for all PeerConfigs.","items":{"type":"integer"},"type":"array"},"remove":{"description":"Remove specifies if the peer with this public key should be removed\nfrom a device's peer list.","type":"boolean"},"replaceAllowedIPs":{"description":"ReplaceAllowedIPs specifies if the allowed IPs specified in this peer\nconfiguration should replace any existing ones, instead of appending them\nto the allowed IPs list.","type":"boolean"},"updateOnly":{"description":"UpdateOnly specifies that an operation will only occur on this peer\nif the peer already exists as part of the interface.","type":"boolean"}},"type":"object"},"net.UDPAddr":{"properties":{"ip":{"items":{"type":"integer"},"type":"array"},"port":{"type":"integer"},"zone":{"description":"IPv6 scoped addressing zone","type":"string"}},"type":"object"},"models.ServerConfig":{"properties":{"Is_EE":{"type":"boolean"},"api":{"type":"string"},"apihost":{"type":"string"},"apiport":{"type":"string"},"broker":{"type":"string"},"brokerType":{"type":"string"},"coreDNSAddr":{"type":"string"},"defaultDomain":{"type":"string"},"dnsmode":{"type":"string"},"endpointDetection":{"type":"boolean"},"grpc":{"type":"string"},"ipdetectionInterval":{"type":"integer"},"manageDNS":{"type":"boolean"},"metricInterval":{"type":"string"},"metricsPort":{"type":"integer"},"mqpassword":{"type":"string"},"mqport":{"type":"string"},"mquserName":{"type":"string"},"peerConnectionCheckInterval":{"type":"string"},"server":{"type":"string"},"stun":{"type":"boolean"},"stunServers":{"type":"string"},"trafficKey":{"items":{"type":"integer"},"type":"array"},"version":{"type":"string"}},"type":"object"}}}}
```

## The models.HostUpdate object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"models.HostUpdate":{"properties":{"action":{"$ref":"#/components/schemas/models.HostMqAction"},"egressDomain":{"$ref":"#/components/schemas/models.EgressDomain"},"host":{"$ref":"#/components/schemas/models.Host"},"newMetrics":{"$ref":"#/components/schemas/models.Metrics"},"node":{"$ref":"#/components/schemas/models.Node"},"signal":{"$ref":"#/components/schemas/models.Signal"}},"type":"object"},"models.HostMqAction":{"enum":["UPGRADE","FORCE_UPGRADE","SIGNAL_HOST","UPDATE_HOST","UPDATE_NODE","DELETE_HOST","JOIN_HOST_TO_NETWORK","ACK","REQ_ACK","CHECK_IN","UPDATE_KEYS","REQ_PULL","SIGNAL_PULL","UPDATE_METRICS","EGRESS_UPDATE","CHECK_AUTO_ASSIGN_GW"],"type":"string"},"models.EgressDomain":{"properties":{"domain":{"type":"string"},"host":{"$ref":"#/components/schemas/models.Host"},"id":{"type":"string"},"node":{"$ref":"#/components/schemas/models.Node"}},"type":"object"},"models.Host":{"properties":{"autoupdate":{"type":"boolean"},"country_code":{"type":"string"},"daemoninstalled":{"type":"boolean"},"debug":{"type":"boolean"},"defaultinterface":{"type":"string"},"dns_status":{"type":"string"},"enable_flow_logs":{"type":"boolean"},"endpointip":{"items":{"type":"integer"},"type":"array"},"endpointipv6":{"items":{"type":"integer"},"type":"array"},"firewallinuse":{"type":"string"},"hostpass":{"type":"string"},"id":{"type":"string"},"interface":{"type":"string"},"interfaces":{"items":{"$ref":"#/components/schemas/models.Iface"},"type":"array"},"ipforwarding":{"type":"boolean"},"isdefault":{"type":"boolean"},"isdocker":{"type":"boolean"},"isk8s":{"type":"boolean"},"isstatic":{"type":"boolean"},"isstaticport":{"type":"boolean"},"kernel_version":{"type":"string"},"listenport":{"type":"integer"},"location":{"description":"Format: \"lat,lon\"","type":"string"},"macaddress":{"items":{"type":"integer"},"type":"array"},"mtu":{"type":"integer"},"name":{"type":"string"},"nat_type":{"type":"string"},"nodes":{"items":{"type":"string"},"type":"array"},"os":{"type":"string"},"os_family":{"type":"string"},"os_version":{"type":"string"},"persistentkeepalive":{"format":"int64","type":"integer"},"publickey":{"items":{"type":"integer"},"type":"array"},"traffickeypublic":{"items":{"type":"integer"},"type":"array"},"turn_endpoint":{"$ref":"#/components/schemas/netip.AddrPort"},"verbosity":{"type":"integer"},"version":{"type":"string"},"wg_public_listen_port":{"type":"integer"}},"type":"object"},"models.Iface":{"properties":{"address":{"$ref":"#/components/schemas/net.IPNet"},"addressString":{"type":"string"},"name":{"type":"string"}},"type":"object"},"net.IPNet":{"properties":{"ip":{"description":"network number","items":{"type":"integer"},"type":"array"},"mask":{"description":"network mask","items":{"format":"int32","type":"integer"},"type":"array"}},"type":"object"},"netip.AddrPort":{"type":"object"},"models.Node":{"properties":{"action":{"type":"string"},"additional_rag_ips":{"items":{"type":"number"},"type":"array"},"address":{"$ref":"#/components/schemas/net.IPNet"},"address6":{"$ref":"#/components/schemas/net.IPNet"},"auto_assign_gw":{"type":"boolean"},"auto_relayed_peers_v1":{"additionalProperties":{"type":"string"},"description":"AutoRelayedPeers   map[string]struct{} `json:\"auto_relayed_peers\"`","type":"object"},"connected":{"type":"boolean"},"country_code":{"type":"string"},"defaultacl":{"description":"== PRO ==","type":"string"},"egressgatewaynatenabled":{"type":"boolean"},"egressgatewayranges":{"items":{"type":"string"},"type":"array"},"egressgatewayrequest":{"$ref":"#/components/schemas/models.EgressGatewayRequest"},"expdatetime":{"type":"string"},"fail_over_peers":{"additionalProperties":{"type":"object"},"description":"AutoRelayedBy     uuid.UUID           `json:\"auto_relayed_by\"`","type":"object"},"failed_over_by":{"type":"string"},"hostid":{"type":"string"},"id":{"type":"string"},"inet_node_req":{"$ref":"#/components/schemas/models.InetNodeReq"},"ingressdns":{"type":"string"},"ingressgatewayrange":{"type":"string"},"ingressgatewayrange6":{"type":"string"},"ingressmtu":{"type":"integer"},"ingresspersistentkeepalive":{"type":"integer"},"internetgw_node_id":{"type":"string"},"is_auto_relay":{"type":"boolean"},"is_fail_over":{"type":"boolean"},"is_gw":{"type":"boolean"},"is_static":{"type":"boolean"},"is_user_node":{"type":"boolean"},"isegressgateway":{"type":"boolean"},"isingressgateway":{"type":"boolean"},"isinternetgateway":{"type":"boolean"},"isrelay":{"type":"boolean"},"isrelayed":{"type":"boolean"},"last_evaluated_at":{"type":"string"},"lastcheckin":{"type":"string"},"lastmodified":{"type":"string"},"lastpeerupdate":{"type":"string"},"localaddress":{"$ref":"#/components/schemas/net.IPNet"},"location":{"description":"Format: \"lat,lon\"","type":"string"},"metadata":{"type":"string"},"network":{"type":"string"},"networkrange":{"type":"integer"},"networkrange6":{"type":"number"},"node_status":{"$ref":"#/components/schemas/models.NodeStatus"},"ownerid":{"type":"string"},"pendingdelete":{"type":"boolean"},"posture_check_violation_severity_level":{"$ref":"#/components/schemas/models.Severity"},"posture_check_violations":{"items":{"$ref":"#/components/schemas/models.Violation"},"type":"array"},"relayedby":{"type":"string"},"relaynodes":{"items":{"type":"string"},"type":"array"},"server":{"type":"string"},"static_node":{"$ref":"#/components/schemas/models.ExtClient"},"tags":{"additionalProperties":{"type":"object"},"type":"object"}},"type":"object"},"models.EgressGatewayRequest":{"properties":{"natenabled":{"type":"string"},"netid":{"type":"string"},"nodeid":{"type":"string"},"ranges":{"items":{"type":"string"},"type":"array"},"ranges_with_metric":{"items":{"$ref":"#/components/schemas/models.EgressRangeMetric"},"type":"array"}},"type":"object"},"models.EgressRangeMetric":{"properties":{"nat":{"type":"boolean"},"nat_mode":{"$ref":"#/components/schemas/models.EgressNATMode"},"network":{"type":"string"},"route_metric":{"description":"preffered range 1-999","type":"integer"},"virtual_network":{"type":"string"}},"type":"object"},"models.EgressNATMode":{"enum":["virtual_nat","direct_nat"],"type":"string"},"models.InetNodeReq":{"properties":{"inet_node_client_ids":{"items":{"type":"string"},"type":"array"}},"type":"object"},"models.NodeStatus":{"enum":["online","offline","warning","error","unknown","disconnected"],"type":"string"},"models.Severity":{"enum":[0,1,2,3,4],"type":"integer"},"models.Violation":{"properties":{"attribute":{"type":"string"},"check_id":{"type":"string"},"message":{"type":"string"},"name":{"type":"string"},"severity":{"$ref":"#/components/schemas/models.Severity"}},"type":"object"},"models.ExtClient":{"properties":{"address":{"type":"string"},"address6":{"type":"string"},"allowed_ips":{"items":{"type":"string"},"type":"array"},"client_version":{"type":"string"},"clientid":{"type":"string"},"country":{"type":"string"},"deniednodeacls":{"additionalProperties":{"type":"object"},"type":"object"},"device_id":{"type":"string"},"device_name":{"type":"string"},"dns":{"type":"string"},"enabled":{"type":"boolean"},"extraallowedips":{"items":{"type":"string"},"type":"array"},"ingressgatewayendpoint":{"type":"string"},"ingressgatewayid":{"type":"string"},"jit_expires_at":{"description":"JIT grant expiry time (nil if JIT not enabled or user is admin)","type":"string"},"kernel_version":{"type":"string"},"last_evaluated_at":{"type":"string"},"lastmodified":{"format":"int64","type":"integer"},"location":{"description":"format: lat,long","type":"string"},"network":{"type":"string"},"os":{"type":"string"},"os_family":{"type":"string"},"os_version":{"type":"string"},"ownerid":{"type":"string"},"postdown":{"type":"string"},"postup":{"type":"string"},"posture_check_violation_severity_level":{"$ref":"#/components/schemas/models.Severity"},"posture_check_violations":{"items":{"$ref":"#/components/schemas/models.Violation"},"type":"array"},"privatekey":{"type":"string"},"public_endpoint":{"type":"string"},"publickey":{"type":"string"},"remote_access_client_id":{"description":"unique ID (MAC address) of RAC machine","type":"string"},"tags":{"additionalProperties":{"type":"object"},"type":"object"}},"type":"object"},"models.Metrics":{"properties":{"connectivity":{"additionalProperties":{"$ref":"#/components/schemas/models.Metric"},"type":"object"},"network":{"type":"string"},"node_id":{"type":"string"},"node_name":{"type":"string"},"updated_at":{"type":"string"}},"type":"object"},"models.Metric":{"properties":{"actualuptime":{"format":"int64","type":"integer"},"connected":{"type":"boolean"},"lasttotalreceived":{"format":"int64","type":"integer"},"lasttotalsent":{"format":"int64","type":"integer"},"latency":{"format":"int64","type":"integer"},"node_name":{"type":"string"},"percentup":{"type":"number"},"totalreceived":{"format":"int64","type":"integer"},"totalsent":{"format":"int64","type":"integer"},"totaltime":{"format":"int64","type":"integer"},"uptime":{"format":"int64","type":"integer"}},"type":"object"},"models.Signal":{"properties":{"action":{"$ref":"#/components/schemas/models.SignalAction"},"auto_relay_node_metrics":{"additionalProperties":{"format":"int64","type":"integer"},"type":"object"},"from_host_id":{"type":"string"},"from_host_pubkey":{"type":"string"},"from_node_id":{"type":"string"},"is_pro":{"type":"boolean"},"networkID":{"type":"string"},"reply":{"type":"boolean"},"server":{"type":"string"},"timestamp":{"type":"integer"},"to_host_id":{"type":"string"},"to_host_pubkey":{"type":"string"},"to_node_id":{"type":"string"}},"type":"object"},"models.SignalAction":{"enum":["CONNECTION_NEGOTIATION","RELAY_ME"],"type":"string"}}}}
```

## The models.IDPSyncStatus object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"models.IDPSyncStatus":{"properties":{"description":{"description":"Description is empty if the sync is ongoing or completed,\nand describes the error when the sync fails.","type":"string"},"status":{"description":"Status would be one of: in_progress, completed or failed.","type":"string"}},"type":"object"}}}}
```

## The models.IDPSyncTestRequest object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"models.IDPSyncTestRequest":{"properties":{"auth_provider":{"type":"string"},"azure_tenant_id":{"type":"string"},"client_id":{"type":"string"},"client_secret":{"type":"string"},"google_admin_email":{"type":"string"},"google_sa_creds_json":{"type":"string"},"okta_api_token":{"type":"string"},"okta_org_url":{"type":"string"}},"type":"object"}}}}
```

## The models.IDandAddr object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"models.IDandAddr":{"properties":{"address":{"type":"string"},"address4":{"type":"string"},"address6":{"type":"string"},"host_id":{"type":"string"},"id":{"type":"string"},"is_extclient":{"type":"boolean"},"isserver":{"type":"string"},"listen_port":{"type":"integer"},"name":{"type":"string"},"network":{"type":"string"},"username":{"type":"string"}},"type":"object"}}}}
```

## The models.Iface object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"models.Iface":{"properties":{"address":{"$ref":"#/components/schemas/net.IPNet"},"addressString":{"type":"string"},"name":{"type":"string"}},"type":"object"},"net.IPNet":{"properties":{"ip":{"description":"network number","items":{"type":"integer"},"type":"array"},"mask":{"description":"network mask","items":{"format":"int32","type":"integer"},"type":"array"}},"type":"object"}}}}
```

## The models.InetNodeReq object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"models.InetNodeReq":{"properties":{"inet_node_client_ids":{"items":{"type":"string"},"type":"array"}},"type":"object"}}}}
```

## The models.IngressGwUsers object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"models.IngressGwUsers":{"properties":{"network":{"type":"string"},"node_id":{"type":"string"},"users":{"items":{"$ref":"#/components/schemas/models.ReturnUser"},"type":"array"}},"type":"object"},"models.ReturnUser":{"properties":{"account_disabled":{"type":"boolean"},"auth_type":{"type":"string"},"display_name":{"type":"string"},"external_identity_provider_id":{"type":"string"},"is_mfa_enabled":{"type":"boolean"},"isadmin":{"type":"boolean"},"issuperadmin":{"type":"boolean"},"last_login_time":{"type":"string"},"network_roles":{"additionalProperties":{"additionalProperties":{"type":"object"},"type":"object"},"type":"object"},"num_access_tokens":{"type":"integer"},"platform_role_id":{"$ref":"#/components/schemas/models.UserRoleID"},"remote_gw_ids":{"additionalProperties":{"type":"object"},"description":"deprecated","type":"object"},"user_group_ids":{"additionalProperties":{"type":"object"},"type":"object"},"username":{"type":"string"}},"type":"object"},"models.UserRoleID":{"enum":["super-admin","admin","service-user","platform-user","auditor","network-admin","network-user"],"type":"string"}}}}
```

## The models.IngressInfo object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"models.IngressInfo":{"properties":{"egress_ranges":{"items":{"$ref":"#/components/schemas/net.IPNet"},"type":"array"},"egress_ranges6":{"items":{"$ref":"#/components/schemas/net.IPNet"},"type":"array"},"ingress_id":{"type":"string"},"network":{"$ref":"#/components/schemas/net.IPNet"},"network6":{"$ref":"#/components/schemas/net.IPNet"},"rules":{"items":{"$ref":"#/components/schemas/models.FwRule"},"type":"array"},"static_node_ips":{"items":{"items":{"type":"integer"},"type":"array"},"type":"array"}},"type":"object"},"net.IPNet":{"properties":{"ip":{"description":"network number","items":{"type":"integer"},"type":"array"},"mask":{"description":"network mask","items":{"format":"int32","type":"integer"},"type":"array"}},"type":"object"},"models.FwRule":{"properties":{"allow":{"type":"boolean"},"allowed_ports":{"items":{"type":"string"},"type":"array"},"allowed_protocols":{"allOf":[{"$ref":"#/components/schemas/models.Protocol"}],"description":"tcp, udp, etc."},"dst_ip":{"$ref":"#/components/schemas/net.IPNet"},"src_ip":{"$ref":"#/components/schemas/net.IPNet"}},"type":"object"},"models.Protocol":{"enum":["all","udp","tcp","icmp"],"type":"string"}}}}
```

## The models.InviteUsersReq object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"models.InviteUsersReq":{"properties":{"network_roles":{"additionalProperties":{"additionalProperties":{"type":"object"},"type":"object"},"type":"object"},"platform_role_id":{"type":"string"},"user_emails":{"items":{"type":"string"},"type":"array"},"user_group_ids":{"additionalProperties":{"type":"object"},"type":"object"}},"type":"object"}}}}
```

## The models.JITAccessRequest object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"models.JITAccessRequest":{"properties":{"network_id":{"description":"Network identifier","type":"string"},"reason":{"description":"Reason for access request (required)","type":"string"}},"type":"object"}}}}
```

## The models.JITOperationRequest object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"models.JITOperationRequest":{"properties":{"action":{"description":"enable, disable, request, approve, deny","type":"string"},"expires_at":{"description":"Unix epoch timestamp (seconds) for when access should expire","type":"integer"},"grant_id":{"type":"string"},"reason":{"type":"string"},"request_id":{"type":"string"}},"type":"object"}}}}
```

## The models.KeyType object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"models.KeyType":{"enum":[0,1,2,3],"type":"integer"}}}}
```

## The models.LegacyNode object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"models.LegacyNode":{"properties":{"accesskey":{"type":"string"},"action":{"type":"string"},"address":{"type":"string"},"address6":{"type":"string"},"allowedips":{"items":{"type":"string"},"type":"array"},"connected":{"type":"string"},"defaultacl":{"description":"== PRO ==","type":"string"},"dnson":{"type":"string"},"egressgatewaynatenabled":{"type":"string"},"egressgatewayranges":{"items":{"type":"string"},"type":"array"},"egressgatewayrequest":{"$ref":"#/components/schemas/models.EgressGatewayRequest"},"endpoint":{"type":"string"},"expdatetime":{"format":"int64","type":"integer"},"failover":{"type":"string"},"failovernode":{"type":"string"},"firewallinuse":{"type":"string"},"id":{"minLength":5,"type":"string"},"ingressgatewayrange":{"type":"string"},"ingressgatewayrange6":{"type":"string"},"interface":{"type":"string"},"interfaces":{"items":{"$ref":"#/components/schemas/models.Iface"},"type":"array"},"internetgateway":{"type":"string"},"ipforwarding":{"type":"string"},"isdocker":{"type":"string"},"isegressgateway":{"type":"string"},"ishub":{"type":"string"},"isingressgateway":{"type":"string"},"isk8s":{"type":"string"},"ispending":{"type":"string"},"isrelay":{"type":"string"},"isrelayed":{"type":"string"},"isserver":{"type":"string"},"isstatic":{"description":"IsStatic - refers to if the Endpoint is set manually or dynamically","type":"string"},"lastcheckin":{"format":"int64","type":"integer"},"lastmodified":{"format":"int64","type":"integer"},"lastpeerupdate":{"format":"int64","type":"integer"},"listenport":{"maximum":65535,"minimum":1024,"type":"integer"},"localaddress":{"type":"string"},"locallistenport":{"maximum":65535,"minimum":0,"type":"integer"},"macaddress":{"type":"string"},"mtu":{"type":"integer"},"name":{"maxLength":62,"type":"string"},"network":{"type":"string"},"networksettings":{"$ref":"#/components/schemas/models.Network"},"os":{"type":"string"},"ownerid":{"type":"string"},"password":{"minLength":6,"type":"string"},"persistentkeepalive":{"maximum":1000,"type":"integer"},"publickey":{"type":"string"},"relayaddrs":{"items":{"type":"string"},"type":"array"},"server":{"type":"string"},"traffickeys":{"$ref":"#/components/schemas/models.TrafficKeys"},"udpholepunch":{"type":"string"},"version":{"type":"string"}},"required":["endpoint","id","password","publickey"],"type":"object"},"models.EgressGatewayRequest":{"properties":{"natenabled":{"type":"string"},"netid":{"type":"string"},"nodeid":{"type":"string"},"ranges":{"items":{"type":"string"},"type":"array"},"ranges_with_metric":{"items":{"$ref":"#/components/schemas/models.EgressRangeMetric"},"type":"array"}},"type":"object"},"models.EgressRangeMetric":{"properties":{"nat":{"type":"boolean"},"nat_mode":{"$ref":"#/components/schemas/models.EgressNATMode"},"network":{"type":"string"},"route_metric":{"description":"preffered range 1-999","type":"integer"},"virtual_network":{"type":"string"}},"type":"object"},"models.EgressNATMode":{"enum":["virtual_nat","direct_nat"],"type":"string"},"models.Iface":{"properties":{"address":{"$ref":"#/components/schemas/net.IPNet"},"addressString":{"type":"string"},"name":{"type":"string"}},"type":"object"},"net.IPNet":{"properties":{"ip":{"description":"network number","items":{"type":"integer"},"type":"array"},"mask":{"description":"network mask","items":{"format":"int32","type":"integer"},"type":"array"}},"type":"object"},"models.Network":{"properties":{"addressrange":{"type":"string"},"addressrange6":{"type":"string"},"allowmanualsignup":{"type":"string"},"auto_join":{"type":"string"},"auto_remove":{"type":"string"},"auto_remove_tags":{"items":{"type":"string"},"type":"array"},"auto_remove_threshold_mins":{"type":"integer"},"defaultacl":{"type":"string"},"defaultinterface":{"maxLength":35,"minLength":1,"type":"string"},"defaultkeepalive":{"maximum":1000,"type":"integer"},"defaultlistenport":{"maximum":65535,"minimum":1024,"type":"integer"},"defaultmtu":{"type":"integer"},"defaultpostdown":{"type":"string"},"defaultudpholepunch":{"type":"string"},"dns_nameservers":{"items":{"type":"string"},"type":"array"},"isipv4":{"type":"string"},"isipv6":{"type":"string"},"jit_enabled":{"type":"string"},"netid":{"maxLength":32,"minLength":1,"type":"string"},"networklastmodified":{"format":"int64","type":"integer"},"nodelimit":{"type":"integer"},"nodeslastmodified":{"format":"int64","type":"integer"},"virtual_nat_pool_ipv4":{"description":"VirtualNATPoolIPv4 is the IPv4 CIDR pool from which virtual NAT ranges are allocated for egress gateways","type":"string"},"virtual_nat_site_prefixlen_ipv4":{"description":"VirtualNATSitePrefixLenIPv4 is the prefix length (e.g., 24) for individual site allocations from the IPv4 virtual NAT pool","type":"integer"}},"required":["netid"],"type":"object"},"models.TrafficKeys":{"properties":{"mine":{"items":{"type":"integer"},"type":"array"},"server":{"items":{"type":"integer"},"type":"array"}},"type":"object"}}}}
```

## The models.Metric object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"models.Metric":{"properties":{"actualuptime":{"format":"int64","type":"integer"},"connected":{"type":"boolean"},"lasttotalreceived":{"format":"int64","type":"integer"},"lasttotalsent":{"format":"int64","type":"integer"},"latency":{"format":"int64","type":"integer"},"node_name":{"type":"string"},"percentup":{"type":"number"},"totalreceived":{"format":"int64","type":"integer"},"totalsent":{"format":"int64","type":"integer"},"totaltime":{"format":"int64","type":"integer"},"uptime":{"format":"int64","type":"integer"}},"type":"object"}}}}
```

## The models.Metrics object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"models.Metrics":{"properties":{"connectivity":{"additionalProperties":{"$ref":"#/components/schemas/models.Metric"},"type":"object"},"network":{"type":"string"},"node_id":{"type":"string"},"node_name":{"type":"string"},"updated_at":{"type":"string"}},"type":"object"},"models.Metric":{"properties":{"actualuptime":{"format":"int64","type":"integer"},"connected":{"type":"boolean"},"lasttotalreceived":{"format":"int64","type":"integer"},"lasttotalsent":{"format":"int64","type":"integer"},"latency":{"format":"int64","type":"integer"},"node_name":{"type":"string"},"percentup":{"type":"number"},"totalreceived":{"format":"int64","type":"integer"},"totalsent":{"format":"int64","type":"integer"},"totaltime":{"format":"int64","type":"integer"},"uptime":{"format":"int64","type":"integer"}},"type":"object"}}}}
```

## The models.MetricsMap object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"models.MetricsMap":{"additionalProperties":{"$ref":"#/components/schemas/models.Metrics"},"type":"object"},"models.Metrics":{"properties":{"connectivity":{"additionalProperties":{"$ref":"#/components/schemas/models.Metric"},"type":"object"},"network":{"type":"string"},"node_id":{"type":"string"},"node_name":{"type":"string"},"updated_at":{"type":"string"}},"type":"object"},"models.Metric":{"properties":{"actualuptime":{"format":"int64","type":"integer"},"connected":{"type":"boolean"},"lasttotalreceived":{"format":"int64","type":"integer"},"lasttotalsent":{"format":"int64","type":"integer"},"latency":{"format":"int64","type":"integer"},"node_name":{"type":"string"},"percentup":{"type":"number"},"totalreceived":{"format":"int64","type":"integer"},"totalsent":{"format":"int64","type":"integer"},"totaltime":{"format":"int64","type":"integer"},"uptime":{"format":"int64","type":"integer"}},"type":"object"}}}}
```

## The models.MigrationData object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"models.MigrationData":{"properties":{"hostName":{"type":"string"},"legacyNodes":{"items":{"$ref":"#/components/schemas/models.LegacyNode"},"type":"array"},"os":{"type":"string"},"password":{"type":"string"}},"type":"object"},"models.LegacyNode":{"properties":{"accesskey":{"type":"string"},"action":{"type":"string"},"address":{"type":"string"},"address6":{"type":"string"},"allowedips":{"items":{"type":"string"},"type":"array"},"connected":{"type":"string"},"defaultacl":{"description":"== PRO ==","type":"string"},"dnson":{"type":"string"},"egressgatewaynatenabled":{"type":"string"},"egressgatewayranges":{"items":{"type":"string"},"type":"array"},"egressgatewayrequest":{"$ref":"#/components/schemas/models.EgressGatewayRequest"},"endpoint":{"type":"string"},"expdatetime":{"format":"int64","type":"integer"},"failover":{"type":"string"},"failovernode":{"type":"string"},"firewallinuse":{"type":"string"},"id":{"minLength":5,"type":"string"},"ingressgatewayrange":{"type":"string"},"ingressgatewayrange6":{"type":"string"},"interface":{"type":"string"},"interfaces":{"items":{"$ref":"#/components/schemas/models.Iface"},"type":"array"},"internetgateway":{"type":"string"},"ipforwarding":{"type":"string"},"isdocker":{"type":"string"},"isegressgateway":{"type":"string"},"ishub":{"type":"string"},"isingressgateway":{"type":"string"},"isk8s":{"type":"string"},"ispending":{"type":"string"},"isrelay":{"type":"string"},"isrelayed":{"type":"string"},"isserver":{"type":"string"},"isstatic":{"description":"IsStatic - refers to if the Endpoint is set manually or dynamically","type":"string"},"lastcheckin":{"format":"int64","type":"integer"},"lastmodified":{"format":"int64","type":"integer"},"lastpeerupdate":{"format":"int64","type":"integer"},"listenport":{"maximum":65535,"minimum":1024,"type":"integer"},"localaddress":{"type":"string"},"locallistenport":{"maximum":65535,"minimum":0,"type":"integer"},"macaddress":{"type":"string"},"mtu":{"type":"integer"},"name":{"maxLength":62,"type":"string"},"network":{"type":"string"},"networksettings":{"$ref":"#/components/schemas/models.Network"},"os":{"type":"string"},"ownerid":{"type":"string"},"password":{"minLength":6,"type":"string"},"persistentkeepalive":{"maximum":1000,"type":"integer"},"publickey":{"type":"string"},"relayaddrs":{"items":{"type":"string"},"type":"array"},"server":{"type":"string"},"traffickeys":{"$ref":"#/components/schemas/models.TrafficKeys"},"udpholepunch":{"type":"string"},"version":{"type":"string"}},"required":["endpoint","id","password","publickey"],"type":"object"},"models.EgressGatewayRequest":{"properties":{"natenabled":{"type":"string"},"netid":{"type":"string"},"nodeid":{"type":"string"},"ranges":{"items":{"type":"string"},"type":"array"},"ranges_with_metric":{"items":{"$ref":"#/components/schemas/models.EgressRangeMetric"},"type":"array"}},"type":"object"},"models.EgressRangeMetric":{"properties":{"nat":{"type":"boolean"},"nat_mode":{"$ref":"#/components/schemas/models.EgressNATMode"},"network":{"type":"string"},"route_metric":{"description":"preffered range 1-999","type":"integer"},"virtual_network":{"type":"string"}},"type":"object"},"models.EgressNATMode":{"enum":["virtual_nat","direct_nat"],"type":"string"},"models.Iface":{"properties":{"address":{"$ref":"#/components/schemas/net.IPNet"},"addressString":{"type":"string"},"name":{"type":"string"}},"type":"object"},"net.IPNet":{"properties":{"ip":{"description":"network number","items":{"type":"integer"},"type":"array"},"mask":{"description":"network mask","items":{"format":"int32","type":"integer"},"type":"array"}},"type":"object"},"models.Network":{"properties":{"addressrange":{"type":"string"},"addressrange6":{"type":"string"},"allowmanualsignup":{"type":"string"},"auto_join":{"type":"string"},"auto_remove":{"type":"string"},"auto_remove_tags":{"items":{"type":"string"},"type":"array"},"auto_remove_threshold_mins":{"type":"integer"},"defaultacl":{"type":"string"},"defaultinterface":{"maxLength":35,"minLength":1,"type":"string"},"defaultkeepalive":{"maximum":1000,"type":"integer"},"defaultlistenport":{"maximum":65535,"minimum":1024,"type":"integer"},"defaultmtu":{"type":"integer"},"defaultpostdown":{"type":"string"},"defaultudpholepunch":{"type":"string"},"dns_nameservers":{"items":{"type":"string"},"type":"array"},"isipv4":{"type":"string"},"isipv6":{"type":"string"},"jit_enabled":{"type":"string"},"netid":{"maxLength":32,"minLength":1,"type":"string"},"networklastmodified":{"format":"int64","type":"integer"},"nodelimit":{"type":"integer"},"nodeslastmodified":{"format":"int64","type":"integer"},"virtual_nat_pool_ipv4":{"description":"VirtualNATPoolIPv4 is the IPv4 CIDR pool from which virtual NAT ranges are allocated for egress gateways","type":"string"},"virtual_nat_site_prefixlen_ipv4":{"description":"VirtualNATSitePrefixLenIPv4 is the prefix length (e.g., 24) for individual site allocations from the IPv4 virtual NAT pool","type":"integer"}},"required":["netid"],"type":"object"},"models.TrafficKeys":{"properties":{"mine":{"items":{"type":"integer"},"type":"array"},"server":{"items":{"type":"integer"},"type":"array"}},"type":"object"}}}}
```

## The models.Nameserver object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"models.Nameserver":{"properties":{"ips":{"items":{"type":"string"},"type":"array"},"is_fallback":{"type":"boolean"},"is_search_domain":{"type":"boolean"},"match_domain":{"type":"string"}},"type":"object"}}}}
```

## The models.NameserverReq object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"models.NameserverReq":{"properties":{"description":{"type":"string"},"match_domain":{"type":"string"},"name":{"type":"string"},"network":{"type":"string"},"servers":{"items":{"type":"string"},"type":"array"},"status":{"type":"boolean"},"tags":{"items":{"type":"string"},"type":"array"}},"type":"object"}}}}
```

## The models.Network object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"models.Network":{"properties":{"addressrange":{"type":"string"},"addressrange6":{"type":"string"},"allowmanualsignup":{"type":"string"},"auto_join":{"type":"string"},"auto_remove":{"type":"string"},"auto_remove_tags":{"items":{"type":"string"},"type":"array"},"auto_remove_threshold_mins":{"type":"integer"},"defaultacl":{"type":"string"},"defaultinterface":{"maxLength":35,"minLength":1,"type":"string"},"defaultkeepalive":{"maximum":1000,"type":"integer"},"defaultlistenport":{"maximum":65535,"minimum":1024,"type":"integer"},"defaultmtu":{"type":"integer"},"defaultpostdown":{"type":"string"},"defaultudpholepunch":{"type":"string"},"dns_nameservers":{"items":{"type":"string"},"type":"array"},"isipv4":{"type":"string"},"isipv6":{"type":"string"},"jit_enabled":{"type":"string"},"netid":{"maxLength":32,"minLength":1,"type":"string"},"networklastmodified":{"format":"int64","type":"integer"},"nodelimit":{"type":"integer"},"nodeslastmodified":{"format":"int64","type":"integer"},"virtual_nat_pool_ipv4":{"description":"VirtualNATPoolIPv4 is the IPv4 CIDR pool from which virtual NAT ranges are allocated for egress gateways","type":"string"},"virtual_nat_site_prefixlen_ipv4":{"description":"VirtualNATSitePrefixLenIPv4 is the prefix length (e.g., 24) for individual site allocations from the IPv4 virtual NAT pool","type":"integer"}},"required":["netid"],"type":"object"}}}}
```

## The models.NetworkID object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"models.NetworkID":{"enum":["all_networks"],"type":"string"}}}}
```

## The models.NetworkMetrics object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"models.NetworkMetrics":{"properties":{"nodes":{"$ref":"#/components/schemas/models.MetricsMap"}},"type":"object"},"models.MetricsMap":{"additionalProperties":{"$ref":"#/components/schemas/models.Metrics"},"type":"object"},"models.Metrics":{"properties":{"connectivity":{"additionalProperties":{"$ref":"#/components/schemas/models.Metric"},"type":"object"},"network":{"type":"string"},"node_id":{"type":"string"},"node_name":{"type":"string"},"updated_at":{"type":"string"}},"type":"object"},"models.Metric":{"properties":{"actualuptime":{"format":"int64","type":"integer"},"connected":{"type":"boolean"},"lasttotalreceived":{"format":"int64","type":"integer"},"lasttotalsent":{"format":"int64","type":"integer"},"latency":{"format":"int64","type":"integer"},"node_name":{"type":"string"},"percentup":{"type":"number"},"totalreceived":{"format":"int64","type":"integer"},"totalsent":{"format":"int64","type":"integer"},"totaltime":{"format":"int64","type":"integer"},"uptime":{"format":"int64","type":"integer"}},"type":"object"}}}}
```

## The models.NetworkStatResp object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"models.NetworkStatResp":{"properties":{"addressrange":{"type":"string"},"addressrange6":{"type":"string"},"allowmanualsignup":{"type":"string"},"auto_join":{"type":"string"},"auto_remove":{"type":"string"},"auto_remove_tags":{"items":{"type":"string"},"type":"array"},"auto_remove_threshold_mins":{"type":"integer"},"defaultacl":{"type":"string"},"defaultinterface":{"maxLength":35,"minLength":1,"type":"string"},"defaultkeepalive":{"maximum":1000,"type":"integer"},"defaultlistenport":{"maximum":65535,"minimum":1024,"type":"integer"},"defaultmtu":{"type":"integer"},"defaultpostdown":{"type":"string"},"defaultudpholepunch":{"type":"string"},"dns_nameservers":{"items":{"type":"string"},"type":"array"},"hosts":{"type":"integer"},"isipv4":{"type":"string"},"isipv6":{"type":"string"},"jit_enabled":{"type":"string"},"netid":{"maxLength":32,"minLength":1,"type":"string"},"networklastmodified":{"format":"int64","type":"integer"},"nodelimit":{"type":"integer"},"nodeslastmodified":{"format":"int64","type":"integer"},"virtual_nat_pool_ipv4":{"description":"VirtualNATPoolIPv4 is the IPv4 CIDR pool from which virtual NAT ranges are allocated for egress gateways","type":"string"},"virtual_nat_site_prefixlen_ipv4":{"description":"VirtualNATSitePrefixLenIPv4 is the prefix length (e.g., 24) for individual site allocations from the IPv4 virtual NAT pool","type":"integer"}},"required":["netid"],"type":"object"}}}}
```

## The models.Node object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"models.Node":{"properties":{"action":{"type":"string"},"additional_rag_ips":{"items":{"type":"number"},"type":"array"},"address":{"$ref":"#/components/schemas/net.IPNet"},"address6":{"$ref":"#/components/schemas/net.IPNet"},"auto_assign_gw":{"type":"boolean"},"auto_relayed_peers_v1":{"additionalProperties":{"type":"string"},"description":"AutoRelayedPeers   map[string]struct{} `json:\"auto_relayed_peers\"`","type":"object"},"connected":{"type":"boolean"},"country_code":{"type":"string"},"defaultacl":{"description":"== PRO ==","type":"string"},"egressgatewaynatenabled":{"type":"boolean"},"egressgatewayranges":{"items":{"type":"string"},"type":"array"},"egressgatewayrequest":{"$ref":"#/components/schemas/models.EgressGatewayRequest"},"expdatetime":{"type":"string"},"fail_over_peers":{"additionalProperties":{"type":"object"},"description":"AutoRelayedBy     uuid.UUID           `json:\"auto_relayed_by\"`","type":"object"},"failed_over_by":{"type":"string"},"hostid":{"type":"string"},"id":{"type":"string"},"inet_node_req":{"$ref":"#/components/schemas/models.InetNodeReq"},"ingressdns":{"type":"string"},"ingressgatewayrange":{"type":"string"},"ingressgatewayrange6":{"type":"string"},"ingressmtu":{"type":"integer"},"ingresspersistentkeepalive":{"type":"integer"},"internetgw_node_id":{"type":"string"},"is_auto_relay":{"type":"boolean"},"is_fail_over":{"type":"boolean"},"is_gw":{"type":"boolean"},"is_static":{"type":"boolean"},"is_user_node":{"type":"boolean"},"isegressgateway":{"type":"boolean"},"isingressgateway":{"type":"boolean"},"isinternetgateway":{"type":"boolean"},"isrelay":{"type":"boolean"},"isrelayed":{"type":"boolean"},"last_evaluated_at":{"type":"string"},"lastcheckin":{"type":"string"},"lastmodified":{"type":"string"},"lastpeerupdate":{"type":"string"},"localaddress":{"$ref":"#/components/schemas/net.IPNet"},"location":{"description":"Format: \"lat,lon\"","type":"string"},"metadata":{"type":"string"},"network":{"type":"string"},"networkrange":{"type":"integer"},"networkrange6":{"type":"number"},"node_status":{"$ref":"#/components/schemas/models.NodeStatus"},"ownerid":{"type":"string"},"pendingdelete":{"type":"boolean"},"posture_check_violation_severity_level":{"$ref":"#/components/schemas/models.Severity"},"posture_check_violations":{"items":{"$ref":"#/components/schemas/models.Violation"},"type":"array"},"relayedby":{"type":"string"},"relaynodes":{"items":{"type":"string"},"type":"array"},"server":{"type":"string"},"static_node":{"$ref":"#/components/schemas/models.ExtClient"},"tags":{"additionalProperties":{"type":"object"},"type":"object"}},"type":"object"},"net.IPNet":{"properties":{"ip":{"description":"network number","items":{"type":"integer"},"type":"array"},"mask":{"description":"network mask","items":{"format":"int32","type":"integer"},"type":"array"}},"type":"object"},"models.EgressGatewayRequest":{"properties":{"natenabled":{"type":"string"},"netid":{"type":"string"},"nodeid":{"type":"string"},"ranges":{"items":{"type":"string"},"type":"array"},"ranges_with_metric":{"items":{"$ref":"#/components/schemas/models.EgressRangeMetric"},"type":"array"}},"type":"object"},"models.EgressRangeMetric":{"properties":{"nat":{"type":"boolean"},"nat_mode":{"$ref":"#/components/schemas/models.EgressNATMode"},"network":{"type":"string"},"route_metric":{"description":"preffered range 1-999","type":"integer"},"virtual_network":{"type":"string"}},"type":"object"},"models.EgressNATMode":{"enum":["virtual_nat","direct_nat"],"type":"string"},"models.InetNodeReq":{"properties":{"inet_node_client_ids":{"items":{"type":"string"},"type":"array"}},"type":"object"},"models.NodeStatus":{"enum":["online","offline","warning","error","unknown","disconnected"],"type":"string"},"models.Severity":{"enum":[0,1,2,3,4],"type":"integer"},"models.Violation":{"properties":{"attribute":{"type":"string"},"check_id":{"type":"string"},"message":{"type":"string"},"name":{"type":"string"},"severity":{"$ref":"#/components/schemas/models.Severity"}},"type":"object"},"models.ExtClient":{"properties":{"address":{"type":"string"},"address6":{"type":"string"},"allowed_ips":{"items":{"type":"string"},"type":"array"},"client_version":{"type":"string"},"clientid":{"type":"string"},"country":{"type":"string"},"deniednodeacls":{"additionalProperties":{"type":"object"},"type":"object"},"device_id":{"type":"string"},"device_name":{"type":"string"},"dns":{"type":"string"},"enabled":{"type":"boolean"},"extraallowedips":{"items":{"type":"string"},"type":"array"},"ingressgatewayendpoint":{"type":"string"},"ingressgatewayid":{"type":"string"},"jit_expires_at":{"description":"JIT grant expiry time (nil if JIT not enabled or user is admin)","type":"string"},"kernel_version":{"type":"string"},"last_evaluated_at":{"type":"string"},"lastmodified":{"format":"int64","type":"integer"},"location":{"description":"format: lat,long","type":"string"},"network":{"type":"string"},"os":{"type":"string"},"os_family":{"type":"string"},"os_version":{"type":"string"},"ownerid":{"type":"string"},"postdown":{"type":"string"},"postup":{"type":"string"},"posture_check_violation_severity_level":{"$ref":"#/components/schemas/models.Severity"},"posture_check_violations":{"items":{"$ref":"#/components/schemas/models.Violation"},"type":"array"},"privatekey":{"type":"string"},"public_endpoint":{"type":"string"},"publickey":{"type":"string"},"remote_access_client_id":{"description":"unique ID (MAC address) of RAC machine","type":"string"},"tags":{"additionalProperties":{"type":"object"},"type":"object"}},"type":"object"}}}}
```

## The models.NodeGet object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"models.NodeGet":{"properties":{"host":{"$ref":"#/components/schemas/models.Host"},"host_peers":{"items":{"$ref":"#/components/schemas/wgtypes.PeerConfig"},"type":"array"},"node":{"$ref":"#/components/schemas/models.Node"},"peerids":{"$ref":"#/components/schemas/models.PeerMap"},"peers":{"items":{"$ref":"#/components/schemas/wgtypes.PeerConfig"},"type":"array"},"serverconfig":{"$ref":"#/components/schemas/models.ServerConfig"}},"type":"object"},"models.Host":{"properties":{"autoupdate":{"type":"boolean"},"country_code":{"type":"string"},"daemoninstalled":{"type":"boolean"},"debug":{"type":"boolean"},"defaultinterface":{"type":"string"},"dns_status":{"type":"string"},"enable_flow_logs":{"type":"boolean"},"endpointip":{"items":{"type":"integer"},"type":"array"},"endpointipv6":{"items":{"type":"integer"},"type":"array"},"firewallinuse":{"type":"string"},"hostpass":{"type":"string"},"id":{"type":"string"},"interface":{"type":"string"},"interfaces":{"items":{"$ref":"#/components/schemas/models.Iface"},"type":"array"},"ipforwarding":{"type":"boolean"},"isdefault":{"type":"boolean"},"isdocker":{"type":"boolean"},"isk8s":{"type":"boolean"},"isstatic":{"type":"boolean"},"isstaticport":{"type":"boolean"},"kernel_version":{"type":"string"},"listenport":{"type":"integer"},"location":{"description":"Format: \"lat,lon\"","type":"string"},"macaddress":{"items":{"type":"integer"},"type":"array"},"mtu":{"type":"integer"},"name":{"type":"string"},"nat_type":{"type":"string"},"nodes":{"items":{"type":"string"},"type":"array"},"os":{"type":"string"},"os_family":{"type":"string"},"os_version":{"type":"string"},"persistentkeepalive":{"format":"int64","type":"integer"},"publickey":{"items":{"type":"integer"},"type":"array"},"traffickeypublic":{"items":{"type":"integer"},"type":"array"},"turn_endpoint":{"$ref":"#/components/schemas/netip.AddrPort"},"verbosity":{"type":"integer"},"version":{"type":"string"},"wg_public_listen_port":{"type":"integer"}},"type":"object"},"models.Iface":{"properties":{"address":{"$ref":"#/components/schemas/net.IPNet"},"addressString":{"type":"string"},"name":{"type":"string"}},"type":"object"},"net.IPNet":{"properties":{"ip":{"description":"network number","items":{"type":"integer"},"type":"array"},"mask":{"description":"network mask","items":{"format":"int32","type":"integer"},"type":"array"}},"type":"object"},"netip.AddrPort":{"type":"object"},"wgtypes.PeerConfig":{"properties":{"allowedIPs":{"description":"AllowedIPs specifies a list of allowed IP addresses in CIDR notation\nfor this peer.","items":{"$ref":"#/components/schemas/net.IPNet"},"type":"array"},"endpoint":{"allOf":[{"$ref":"#/components/schemas/net.UDPAddr"}],"description":"Endpoint specifies the endpoint of this peer entry, if not nil."},"persistentKeepaliveInterval":{"description":"PersistentKeepaliveInterval specifies the persistent keepalive interval\nfor this peer, if not nil.\n\nA non-nil value of 0 will clear the persistent keepalive interval.","format":"int64","type":"integer"},"presharedKey":{"description":"PresharedKey specifies a peer's preshared key configuration, if not nil.\n\nA non-nil, zero-value Key will clear the preshared key.","items":{"type":"integer"},"type":"array"},"publicKey":{"description":"PublicKey specifies the public key of this peer.  PublicKey is a\nmandatory field for all PeerConfigs.","items":{"type":"integer"},"type":"array"},"remove":{"description":"Remove specifies if the peer with this public key should be removed\nfrom a device's peer list.","type":"boolean"},"replaceAllowedIPs":{"description":"ReplaceAllowedIPs specifies if the allowed IPs specified in this peer\nconfiguration should replace any existing ones, instead of appending them\nto the allowed IPs list.","type":"boolean"},"updateOnly":{"description":"UpdateOnly specifies that an operation will only occur on this peer\nif the peer already exists as part of the interface.","type":"boolean"}},"type":"object"},"net.UDPAddr":{"properties":{"ip":{"items":{"type":"integer"},"type":"array"},"port":{"type":"integer"},"zone":{"description":"IPv6 scoped addressing zone","type":"string"}},"type":"object"},"models.Node":{"properties":{"action":{"type":"string"},"additional_rag_ips":{"items":{"type":"number"},"type":"array"},"address":{"$ref":"#/components/schemas/net.IPNet"},"address6":{"$ref":"#/components/schemas/net.IPNet"},"auto_assign_gw":{"type":"boolean"},"auto_relayed_peers_v1":{"additionalProperties":{"type":"string"},"description":"AutoRelayedPeers   map[string]struct{} `json:\"auto_relayed_peers\"`","type":"object"},"connected":{"type":"boolean"},"country_code":{"type":"string"},"defaultacl":{"description":"== PRO ==","type":"string"},"egressgatewaynatenabled":{"type":"boolean"},"egressgatewayranges":{"items":{"type":"string"},"type":"array"},"egressgatewayrequest":{"$ref":"#/components/schemas/models.EgressGatewayRequest"},"expdatetime":{"type":"string"},"fail_over_peers":{"additionalProperties":{"type":"object"},"description":"AutoRelayedBy     uuid.UUID           `json:\"auto_relayed_by\"`","type":"object"},"failed_over_by":{"type":"string"},"hostid":{"type":"string"},"id":{"type":"string"},"inet_node_req":{"$ref":"#/components/schemas/models.InetNodeReq"},"ingressdns":{"type":"string"},"ingressgatewayrange":{"type":"string"},"ingressgatewayrange6":{"type":"string"},"ingressmtu":{"type":"integer"},"ingresspersistentkeepalive":{"type":"integer"},"internetgw_node_id":{"type":"string"},"is_auto_relay":{"type":"boolean"},"is_fail_over":{"type":"boolean"},"is_gw":{"type":"boolean"},"is_static":{"type":"boolean"},"is_user_node":{"type":"boolean"},"isegressgateway":{"type":"boolean"},"isingressgateway":{"type":"boolean"},"isinternetgateway":{"type":"boolean"},"isrelay":{"type":"boolean"},"isrelayed":{"type":"boolean"},"last_evaluated_at":{"type":"string"},"lastcheckin":{"type":"string"},"lastmodified":{"type":"string"},"lastpeerupdate":{"type":"string"},"localaddress":{"$ref":"#/components/schemas/net.IPNet"},"location":{"description":"Format: \"lat,lon\"","type":"string"},"metadata":{"type":"string"},"network":{"type":"string"},"networkrange":{"type":"integer"},"networkrange6":{"type":"number"},"node_status":{"$ref":"#/components/schemas/models.NodeStatus"},"ownerid":{"type":"string"},"pendingdelete":{"type":"boolean"},"posture_check_violation_severity_level":{"$ref":"#/components/schemas/models.Severity"},"posture_check_violations":{"items":{"$ref":"#/components/schemas/models.Violation"},"type":"array"},"relayedby":{"type":"string"},"relaynodes":{"items":{"type":"string"},"type":"array"},"server":{"type":"string"},"static_node":{"$ref":"#/components/schemas/models.ExtClient"},"tags":{"additionalProperties":{"type":"object"},"type":"object"}},"type":"object"},"models.EgressGatewayRequest":{"properties":{"natenabled":{"type":"string"},"netid":{"type":"string"},"nodeid":{"type":"string"},"ranges":{"items":{"type":"string"},"type":"array"},"ranges_with_metric":{"items":{"$ref":"#/components/schemas/models.EgressRangeMetric"},"type":"array"}},"type":"object"},"models.EgressRangeMetric":{"properties":{"nat":{"type":"boolean"},"nat_mode":{"$ref":"#/components/schemas/models.EgressNATMode"},"network":{"type":"string"},"route_metric":{"description":"preffered range 1-999","type":"integer"},"virtual_network":{"type":"string"}},"type":"object"},"models.EgressNATMode":{"enum":["virtual_nat","direct_nat"],"type":"string"},"models.InetNodeReq":{"properties":{"inet_node_client_ids":{"items":{"type":"string"},"type":"array"}},"type":"object"},"models.NodeStatus":{"enum":["online","offline","warning","error","unknown","disconnected"],"type":"string"},"models.Severity":{"enum":[0,1,2,3,4],"type":"integer"},"models.Violation":{"properties":{"attribute":{"type":"string"},"check_id":{"type":"string"},"message":{"type":"string"},"name":{"type":"string"},"severity":{"$ref":"#/components/schemas/models.Severity"}},"type":"object"},"models.ExtClient":{"properties":{"address":{"type":"string"},"address6":{"type":"string"},"allowed_ips":{"items":{"type":"string"},"type":"array"},"client_version":{"type":"string"},"clientid":{"type":"string"},"country":{"type":"string"},"deniednodeacls":{"additionalProperties":{"type":"object"},"type":"object"},"device_id":{"type":"string"},"device_name":{"type":"string"},"dns":{"type":"string"},"enabled":{"type":"boolean"},"extraallowedips":{"items":{"type":"string"},"type":"array"},"ingressgatewayendpoint":{"type":"string"},"ingressgatewayid":{"type":"string"},"jit_expires_at":{"description":"JIT grant expiry time (nil if JIT not enabled or user is admin)","type":"string"},"kernel_version":{"type":"string"},"last_evaluated_at":{"type":"string"},"lastmodified":{"format":"int64","type":"integer"},"location":{"description":"format: lat,long","type":"string"},"network":{"type":"string"},"os":{"type":"string"},"os_family":{"type":"string"},"os_version":{"type":"string"},"ownerid":{"type":"string"},"postdown":{"type":"string"},"postup":{"type":"string"},"posture_check_violation_severity_level":{"$ref":"#/components/schemas/models.Severity"},"posture_check_violations":{"items":{"$ref":"#/components/schemas/models.Violation"},"type":"array"},"privatekey":{"type":"string"},"public_endpoint":{"type":"string"},"publickey":{"type":"string"},"remote_access_client_id":{"description":"unique ID (MAC address) of RAC machine","type":"string"},"tags":{"additionalProperties":{"type":"object"},"type":"object"}},"type":"object"},"models.PeerMap":{"additionalProperties":{"$ref":"#/components/schemas/models.IDandAddr"},"type":"object"},"models.IDandAddr":{"properties":{"address":{"type":"string"},"address4":{"type":"string"},"address6":{"type":"string"},"host_id":{"type":"string"},"id":{"type":"string"},"is_extclient":{"type":"boolean"},"isserver":{"type":"string"},"listen_port":{"type":"integer"},"name":{"type":"string"},"network":{"type":"string"},"username":{"type":"string"}},"type":"object"},"models.ServerConfig":{"properties":{"Is_EE":{"type":"boolean"},"api":{"type":"string"},"apihost":{"type":"string"},"apiport":{"type":"string"},"broker":{"type":"string"},"brokerType":{"type":"string"},"coreDNSAddr":{"type":"string"},"defaultDomain":{"type":"string"},"dnsmode":{"type":"string"},"endpointDetection":{"type":"boolean"},"grpc":{"type":"string"},"ipdetectionInterval":{"type":"integer"},"manageDNS":{"type":"boolean"},"metricInterval":{"type":"string"},"metricsPort":{"type":"integer"},"mqpassword":{"type":"string"},"mqport":{"type":"string"},"mquserName":{"type":"string"},"peerConnectionCheckInterval":{"type":"string"},"server":{"type":"string"},"stun":{"type":"boolean"},"stunServers":{"type":"string"},"trafficKey":{"items":{"type":"integer"},"type":"array"},"version":{"type":"string"}},"type":"object"}}}}
```

## The models.NodeStatus object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"models.NodeStatus":{"enum":["online","offline","warning","error","unknown","disconnected"],"type":"string"}}}}
```

## The models.Origin object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"models.Origin":{"enum":["DASHBOARD","API","NMCTL","CLIENT-APP"],"type":"string"}}}}
```

## The models.PeerIdentity object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"models.PeerIdentity":{"properties":{"id":{"type":"string"},"name":{"type":"string"},"type":{"$ref":"#/components/schemas/models.PeerType"}},"type":"object"},"models.PeerType":{"enum":[0,1,2,3],"type":"integer"}}}}
```

## The models.PeerMap object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"models.PeerMap":{"additionalProperties":{"$ref":"#/components/schemas/models.IDandAddr"},"type":"object"},"models.IDandAddr":{"properties":{"address":{"type":"string"},"address4":{"type":"string"},"address6":{"type":"string"},"host_id":{"type":"string"},"id":{"type":"string"},"is_extclient":{"type":"boolean"},"isserver":{"type":"string"},"listen_port":{"type":"integer"},"name":{"type":"string"},"network":{"type":"string"},"username":{"type":"string"}},"type":"object"}}}}
```

## The models.PeerType object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"models.PeerType":{"enum":[0,1,2,3],"type":"integer"}}}}
```

## The models.Protocol object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"models.Protocol":{"enum":["all","udp","tcp","icmp"],"type":"string"}}}}
```

## The models.ProtocolType object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"models.ProtocolType":{"properties":{"allow_port_setting":{"type":"boolean"},"allowed_protocols":{"items":{"$ref":"#/components/schemas/models.Protocol"},"type":"array"},"name":{"type":"string"},"port_range":{"type":"string"}},"type":"object"},"models.Protocol":{"enum":["all","udp","tcp","icmp"],"type":"string"}}}}
```

## The models.RegisterResponse object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"models.RegisterResponse":{"properties":{"requested_host":{"$ref":"#/components/schemas/models.Host"},"server_config":{"$ref":"#/components/schemas/models.ServerConfig"}},"type":"object"},"models.Host":{"properties":{"autoupdate":{"type":"boolean"},"country_code":{"type":"string"},"daemoninstalled":{"type":"boolean"},"debug":{"type":"boolean"},"defaultinterface":{"type":"string"},"dns_status":{"type":"string"},"enable_flow_logs":{"type":"boolean"},"endpointip":{"items":{"type":"integer"},"type":"array"},"endpointipv6":{"items":{"type":"integer"},"type":"array"},"firewallinuse":{"type":"string"},"hostpass":{"type":"string"},"id":{"type":"string"},"interface":{"type":"string"},"interfaces":{"items":{"$ref":"#/components/schemas/models.Iface"},"type":"array"},"ipforwarding":{"type":"boolean"},"isdefault":{"type":"boolean"},"isdocker":{"type":"boolean"},"isk8s":{"type":"boolean"},"isstatic":{"type":"boolean"},"isstaticport":{"type":"boolean"},"kernel_version":{"type":"string"},"listenport":{"type":"integer"},"location":{"description":"Format: \"lat,lon\"","type":"string"},"macaddress":{"items":{"type":"integer"},"type":"array"},"mtu":{"type":"integer"},"name":{"type":"string"},"nat_type":{"type":"string"},"nodes":{"items":{"type":"string"},"type":"array"},"os":{"type":"string"},"os_family":{"type":"string"},"os_version":{"type":"string"},"persistentkeepalive":{"format":"int64","type":"integer"},"publickey":{"items":{"type":"integer"},"type":"array"},"traffickeypublic":{"items":{"type":"integer"},"type":"array"},"turn_endpoint":{"$ref":"#/components/schemas/netip.AddrPort"},"verbosity":{"type":"integer"},"version":{"type":"string"},"wg_public_listen_port":{"type":"integer"}},"type":"object"},"models.Iface":{"properties":{"address":{"$ref":"#/components/schemas/net.IPNet"},"addressString":{"type":"string"},"name":{"type":"string"}},"type":"object"},"net.IPNet":{"properties":{"ip":{"description":"network number","items":{"type":"integer"},"type":"array"},"mask":{"description":"network mask","items":{"format":"int32","type":"integer"},"type":"array"}},"type":"object"},"netip.AddrPort":{"type":"object"},"models.ServerConfig":{"properties":{"Is_EE":{"type":"boolean"},"api":{"type":"string"},"apihost":{"type":"string"},"apiport":{"type":"string"},"broker":{"type":"string"},"brokerType":{"type":"string"},"coreDNSAddr":{"type":"string"},"defaultDomain":{"type":"string"},"dnsmode":{"type":"string"},"endpointDetection":{"type":"boolean"},"grpc":{"type":"string"},"ipdetectionInterval":{"type":"integer"},"manageDNS":{"type":"boolean"},"metricInterval":{"type":"string"},"metricsPort":{"type":"integer"},"mqpassword":{"type":"string"},"mqport":{"type":"string"},"mquserName":{"type":"string"},"peerConnectionCheckInterval":{"type":"string"},"server":{"type":"string"},"stun":{"type":"boolean"},"stunServers":{"type":"string"},"trafficKey":{"items":{"type":"integer"},"type":"array"},"version":{"type":"string"}},"type":"object"}}}}
```

## The models.ReturnUser object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"models.ReturnUser":{"properties":{"account_disabled":{"type":"boolean"},"auth_type":{"type":"string"},"display_name":{"type":"string"},"external_identity_provider_id":{"type":"string"},"is_mfa_enabled":{"type":"boolean"},"isadmin":{"type":"boolean"},"issuperadmin":{"type":"boolean"},"last_login_time":{"type":"string"},"network_roles":{"additionalProperties":{"additionalProperties":{"type":"object"},"type":"object"},"type":"object"},"num_access_tokens":{"type":"integer"},"platform_role_id":{"$ref":"#/components/schemas/models.UserRoleID"},"remote_gw_ids":{"additionalProperties":{"type":"object"},"description":"deprecated","type":"object"},"user_group_ids":{"additionalProperties":{"type":"object"},"type":"object"},"username":{"type":"string"}},"type":"object"},"models.UserRoleID":{"enum":["super-admin","admin","service-user","platform-user","auditor","network-admin","network-user"],"type":"string"}}}}
```

## The models.ReturnUserWithRolesAndGroups object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"models.ReturnUserWithRolesAndGroups":{"properties":{"account_disabled":{"type":"boolean"},"auth_type":{"type":"string"},"display_name":{"type":"string"},"external_identity_provider_id":{"type":"string"},"is_mfa_enabled":{"type":"boolean"},"isadmin":{"type":"boolean"},"issuperadmin":{"type":"boolean"},"last_login_time":{"type":"string"},"network_roles":{"additionalProperties":{"additionalProperties":{"type":"object"},"type":"object"},"type":"object"},"num_access_tokens":{"type":"integer"},"platform_role":{"$ref":"#/components/schemas/models.UserRolePermissionTemplate"},"platform_role_id":{"$ref":"#/components/schemas/models.UserRoleID"},"remote_gw_ids":{"additionalProperties":{"type":"object"},"description":"deprecated","type":"object"},"user_group_ids":{"additionalProperties":{"$ref":"#/components/schemas/models.UserGroup"},"type":"object"},"username":{"type":"string"}},"type":"object"},"models.UserRolePermissionTemplate":{"properties":{"default":{"type":"boolean"},"deny_dashboard_access":{"type":"boolean"},"full_access":{"type":"boolean"},"global_level_access":{"additionalProperties":{"additionalProperties":{"$ref":"#/components/schemas/models.RsrcPermissionScope"},"type":"object"},"type":"object"},"id":{"$ref":"#/components/schemas/models.UserRoleID"},"meta_data":{"type":"string"},"name":{"type":"string"},"network_id":{"$ref":"#/components/schemas/models.NetworkID"},"network_level_access":{"additionalProperties":{"additionalProperties":{"$ref":"#/components/schemas/models.RsrcPermissionScope"},"type":"object"},"type":"object"}},"type":"object"},"models.RsrcPermissionScope":{"properties":{"create":{"type":"boolean"},"delete":{"type":"boolean"},"read":{"type":"boolean"},"self_only":{"type":"boolean"},"update":{"type":"boolean"},"vpn_access":{"type":"boolean"}},"type":"object"},"models.UserRoleID":{"enum":["super-admin","admin","service-user","platform-user","auditor","network-admin","network-user"],"type":"string"},"models.NetworkID":{"enum":["all_networks"],"type":"string"},"models.UserGroup":{"properties":{"color_code":{"type":"string"},"default":{"type":"boolean"},"external_identity_provider_id":{"type":"string"},"id":{"type":"string"},"meta_data":{"type":"string"},"name":{"type":"string"},"network_roles":{"additionalProperties":{"additionalProperties":{"type":"object"},"type":"object"},"type":"object"}},"type":"object"}}}}
```

## The models.RsrcPermissionScope object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"models.RsrcPermissionScope":{"properties":{"create":{"type":"boolean"},"delete":{"type":"boolean"},"read":{"type":"boolean"},"self_only":{"type":"boolean"},"update":{"type":"boolean"},"vpn_access":{"type":"boolean"}},"type":"object"}}}}
```

## The models.ServerConfig object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"models.ServerConfig":{"properties":{"Is_EE":{"type":"boolean"},"api":{"type":"string"},"apihost":{"type":"string"},"apiport":{"type":"string"},"broker":{"type":"string"},"brokerType":{"type":"string"},"coreDNSAddr":{"type":"string"},"defaultDomain":{"type":"string"},"dnsmode":{"type":"string"},"endpointDetection":{"type":"boolean"},"grpc":{"type":"string"},"ipdetectionInterval":{"type":"integer"},"manageDNS":{"type":"boolean"},"metricInterval":{"type":"string"},"metricsPort":{"type":"integer"},"mqpassword":{"type":"string"},"mqport":{"type":"string"},"mquserName":{"type":"string"},"peerConnectionCheckInterval":{"type":"string"},"server":{"type":"string"},"stun":{"type":"boolean"},"stunServers":{"type":"string"},"trafficKey":{"items":{"type":"integer"},"type":"array"},"version":{"type":"string"}},"type":"object"}}}}
```

## The models.ServerSettings object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"models.ServerSettings":{"properties":{"allowed_email_domains":{"type":"string"},"audit_logs_retention_period":{"type":"integer"},"authprovider":{"type":"string"},"azure_tenant":{"type":"string"},"basic_auth":{"type":"boolean"},"clean_up_interval_in_mins":{"type":"integer"},"client_id":{"type":"string"},"client_secret":{"type":"string"},"default_domain":{"type":"string"},"email_sender_addr":{"type":"string"},"email_sender_password":{"type":"string"},"email_sender_user":{"type":"string"},"enable_flow_logs":{"type":"boolean"},"endpoint_detection":{"type":"boolean"},"google_admin_email":{"type":"string"},"google_sa_creds_json":{"type":"string"},"group_filters":{"items":{"type":"string"},"type":"array"},"idp_sync_interval":{"type":"string"},"ip_detection_interval":{"description":"IPDetectionInterval is the interval (in seconds) at which devices check for changes in public ip.","type":"integer"},"jwt_validity_duration":{"description":"JwtValidityDuration is the validity duration of auth tokens for users\non the dashboard (NMUI).","type":"integer"},"jwt_validity_duration_clients":{"description":"JwtValidityDurationClients is the validity duration of auth tokens for\nusers on the clients (NetDesk).","type":"integer"},"manage_dns":{"type":"boolean"},"metric_interval":{"type":"string"},"metrics_port":{"type":"integer"},"mfa_enforced":{"type":"boolean"},"netclientautoupdate":{"type":"boolean"},"oidcissuer":{"type":"string"},"okta_api_token":{"type":"string"},"okta_org_url":{"type":"string"},"old_acl_support":{"type":"boolean"},"peer_connection_check_interval":{"type":"string"},"posture_check_interval":{"description":"in minutes","type":"string"},"rac_restrict_to_single_network":{"type":"boolean"},"smtp_host":{"type":"string"},"smtp_port":{"type":"integer"},"stun":{"type":"boolean"},"stun_servers":{"type":"string"},"sync_enabled":{"type":"boolean"},"telemetry":{"type":"string"},"user_filters":{"items":{"type":"string"},"type":"array"},"verbosity":{"type":"integer"}},"type":"object"}}}}
```

## The models.Severity object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"models.Severity":{"enum":[0,1,2,3,4],"type":"integer"}}}}
```

## The models.Signal object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"models.Signal":{"properties":{"action":{"$ref":"#/components/schemas/models.SignalAction"},"auto_relay_node_metrics":{"additionalProperties":{"format":"int64","type":"integer"},"type":"object"},"from_host_id":{"type":"string"},"from_host_pubkey":{"type":"string"},"from_node_id":{"type":"string"},"is_pro":{"type":"boolean"},"networkID":{"type":"string"},"reply":{"type":"boolean"},"server":{"type":"string"},"timestamp":{"type":"integer"},"to_host_id":{"type":"string"},"to_host_pubkey":{"type":"string"},"to_node_id":{"type":"string"}},"type":"object"},"models.SignalAction":{"enum":["CONNECTION_NEGOTIATION","RELAY_ME"],"type":"string"}}}}
```

## The models.SignalAction object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"models.SignalAction":{"enum":["CONNECTION_NEGOTIATION","RELAY_ME"],"type":"string"}}}}
```

## The models.SuccessResponse object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"models.SuccessResponse":{"properties":{"code":{"type":"integer"},"message":{"type":"string"},"response":{}},"type":"object"}}}}
```

## The models.SuccessfulUserLoginResponse object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"models.SuccessfulUserLoginResponse":{"properties":{"authToken":{"type":"string"},"userName":{"type":"string"}},"type":"object"}}}}
```

## The models.TOTPInitiateResponse object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"models.TOTPInitiateResponse":{"properties":{"otp_auth_url":{"type":"string"},"otp_auth_url_signature":{"type":"string"},"qr_code":{"type":"string"}},"type":"object"}}}}
```

## The models.TagListRespNodes object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"models.TagListRespNodes":{"properties":{"color_code":{"type":"string"},"created_at":{"type":"string"},"created_by":{"type":"string"},"id":{"type":"string"},"network":{"$ref":"#/components/schemas/models.NetworkID"},"tag_name":{"type":"string"},"tagged_nodes":{"items":{"$ref":"#/components/schemas/models.ApiNode"},"type":"array"},"used_by_count":{"type":"integer"}},"type":"object"},"models.NetworkID":{"enum":["all_networks"],"type":"string"},"models.ApiNode":{"properties":{"additional_rag_ips":{"items":{"type":"string"},"type":"array"},"address":{"type":"string"},"address6":{"type":"string"},"allowedips":{"items":{"type":"string"},"type":"array"},"auto_assign_gw":{"type":"boolean"},"auto_relayed_peers":{"additionalProperties":{"type":"string"},"type":"object"},"connected":{"type":"boolean"},"country":{"type":"string"},"defaultacl":{"description":"== PRO ==","type":"string"},"dnson":{"type":"boolean"},"egressgatewaynatenabled":{"type":"boolean"},"egressgatewayranges":{"items":{"type":"string"},"type":"array"},"egressgatewayranges_with_metric":{"items":{"$ref":"#/components/schemas/models.EgressRangeMetric"},"type":"array"},"expdatetime":{"format":"int64","type":"integer"},"fail_over_peers":{"additionalProperties":{"type":"object"},"type":"object"},"failed_over_by":{"type":"string"},"hostid":{"minLength":5,"type":"string"},"id":{"minLength":5,"type":"string"},"inet_node_req":{"$ref":"#/components/schemas/models.InetNodeReq"},"ingressdns":{"type":"string"},"ingressmtu":{"type":"integer"},"ingresspersistentkeepalive":{"type":"integer"},"internetgw_node_id":{"type":"string"},"is_auto_relay":{"type":"boolean"},"is_fail_over":{"type":"boolean"},"is_gw":{"type":"boolean"},"is_static":{"type":"boolean"},"is_user_node":{"type":"boolean"},"isegressgateway":{"type":"boolean"},"isingressgateway":{"type":"boolean"},"isinternetgateway":{"type":"boolean"},"isrelay":{"type":"boolean"},"isrelayed":{"type":"boolean"},"last_evaluated_at":{"type":"string"},"lastcheckin":{"format":"int64","type":"integer"},"lastmodified":{"format":"int64","type":"integer"},"lastpeerupdate":{"format":"int64","type":"integer"},"localaddress":{"type":"string"},"location":{"type":"string"},"metadata":{"type":"string"},"network":{"type":"string"},"networkrange":{"type":"string"},"networkrange6":{"type":"string"},"pendingdelete":{"type":"boolean"},"posture_check_violation_severity_level":{"$ref":"#/components/schemas/models.Severity"},"posture_check_violations":{"items":{"$ref":"#/components/schemas/models.Violation"},"type":"array"},"relayedby":{"description":"AutoRelayedBy                 uuid.UUID           `json:\"auto_relayed_by\"`","type":"string"},"relaynodes":{"items":{"type":"string"},"type":"array"},"server":{"type":"string"},"static_node":{"$ref":"#/components/schemas/models.ExtClient"},"status":{"$ref":"#/components/schemas/models.NodeStatus"},"tags":{"additionalProperties":{"type":"object"},"type":"object"}},"required":["hostid","id"],"type":"object"},"models.EgressRangeMetric":{"properties":{"nat":{"type":"boolean"},"nat_mode":{"$ref":"#/components/schemas/models.EgressNATMode"},"network":{"type":"string"},"route_metric":{"description":"preffered range 1-999","type":"integer"},"virtual_network":{"type":"string"}},"type":"object"},"models.EgressNATMode":{"enum":["virtual_nat","direct_nat"],"type":"string"},"models.InetNodeReq":{"properties":{"inet_node_client_ids":{"items":{"type":"string"},"type":"array"}},"type":"object"},"models.Severity":{"enum":[0,1,2,3,4],"type":"integer"},"models.Violation":{"properties":{"attribute":{"type":"string"},"check_id":{"type":"string"},"message":{"type":"string"},"name":{"type":"string"},"severity":{"$ref":"#/components/schemas/models.Severity"}},"type":"object"},"models.ExtClient":{"properties":{"address":{"type":"string"},"address6":{"type":"string"},"allowed_ips":{"items":{"type":"string"},"type":"array"},"client_version":{"type":"string"},"clientid":{"type":"string"},"country":{"type":"string"},"deniednodeacls":{"additionalProperties":{"type":"object"},"type":"object"},"device_id":{"type":"string"},"device_name":{"type":"string"},"dns":{"type":"string"},"enabled":{"type":"boolean"},"extraallowedips":{"items":{"type":"string"},"type":"array"},"ingressgatewayendpoint":{"type":"string"},"ingressgatewayid":{"type":"string"},"jit_expires_at":{"description":"JIT grant expiry time (nil if JIT not enabled or user is admin)","type":"string"},"kernel_version":{"type":"string"},"last_evaluated_at":{"type":"string"},"lastmodified":{"format":"int64","type":"integer"},"location":{"description":"format: lat,long","type":"string"},"network":{"type":"string"},"os":{"type":"string"},"os_family":{"type":"string"},"os_version":{"type":"string"},"ownerid":{"type":"string"},"postdown":{"type":"string"},"postup":{"type":"string"},"posture_check_violation_severity_level":{"$ref":"#/components/schemas/models.Severity"},"posture_check_violations":{"items":{"$ref":"#/components/schemas/models.Violation"},"type":"array"},"privatekey":{"type":"string"},"public_endpoint":{"type":"string"},"publickey":{"type":"string"},"remote_access_client_id":{"description":"unique ID (MAC address) of RAC machine","type":"string"},"tags":{"additionalProperties":{"type":"object"},"type":"object"}},"type":"object"},"models.NodeStatus":{"enum":["online","offline","warning","error","unknown","disconnected"],"type":"string"}}}}
```

## The models.Theme object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"models.Theme":{"enum":["dark","light","system"],"type":"string"}}}}
```

## The models.TrafficKeys object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"models.TrafficKeys":{"properties":{"mine":{"items":{"type":"integer"},"type":"array"},"server":{"items":{"type":"integer"},"type":"array"}},"type":"object"}}}}
```

## The models.UpdateAclRequest object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"models.UpdateAclRequest":{"properties":{"allowed_traffic_direction":{"$ref":"#/components/schemas/models.AllowedTrafficDirection"},"created_at":{"type":"string"},"created_by":{"type":"string"},"default":{"type":"boolean"},"dst_type":{"items":{"$ref":"#/components/schemas/models.AclPolicyTag"},"type":"array"},"enabled":{"type":"boolean"},"id":{"type":"string"},"meta_data":{"type":"string"},"name":{"type":"string"},"network_id":{"$ref":"#/components/schemas/models.NetworkID"},"new_name":{"type":"string"},"policy_type":{"$ref":"#/components/schemas/models.AclPolicyType"},"ports":{"items":{"type":"string"},"type":"array"},"protocol":{"allOf":[{"$ref":"#/components/schemas/models.Protocol"}],"description":"tcp, udp, etc."},"src_type":{"items":{"$ref":"#/components/schemas/models.AclPolicyTag"},"type":"array"},"type":{"type":"string"}},"type":"object"},"models.AllowedTrafficDirection":{"enum":[0,1],"type":"integer"},"models.AclPolicyTag":{"properties":{"id":{"$ref":"#/components/schemas/models.AclGroupType"},"value":{"type":"string"}},"type":"object"},"models.AclGroupType":{"enum":["user","user-group","tag","device","egress-range","egress-id","ip","ipset"],"type":"string"},"models.NetworkID":{"enum":["all_networks"],"type":"string"},"models.AclPolicyType":{"enum":["user-policy","device-policy"],"type":"string"},"models.Protocol":{"enum":["all","udp","tcp","icmp"],"type":"string"}}}}
```

## The models.UpdateTagReq object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"models.UpdateTagReq":{"properties":{"color_code":{"type":"string"},"created_at":{"type":"string"},"created_by":{"type":"string"},"id":{"type":"string"},"network":{"$ref":"#/components/schemas/models.NetworkID"},"new_name":{"type":"string"},"tag_name":{"type":"string"},"tagged_nodes":{"items":{"$ref":"#/components/schemas/models.ApiNode"},"type":"array"}},"type":"object"},"models.NetworkID":{"enum":["all_networks"],"type":"string"},"models.ApiNode":{"properties":{"additional_rag_ips":{"items":{"type":"string"},"type":"array"},"address":{"type":"string"},"address6":{"type":"string"},"allowedips":{"items":{"type":"string"},"type":"array"},"auto_assign_gw":{"type":"boolean"},"auto_relayed_peers":{"additionalProperties":{"type":"string"},"type":"object"},"connected":{"type":"boolean"},"country":{"type":"string"},"defaultacl":{"description":"== PRO ==","type":"string"},"dnson":{"type":"boolean"},"egressgatewaynatenabled":{"type":"boolean"},"egressgatewayranges":{"items":{"type":"string"},"type":"array"},"egressgatewayranges_with_metric":{"items":{"$ref":"#/components/schemas/models.EgressRangeMetric"},"type":"array"},"expdatetime":{"format":"int64","type":"integer"},"fail_over_peers":{"additionalProperties":{"type":"object"},"type":"object"},"failed_over_by":{"type":"string"},"hostid":{"minLength":5,"type":"string"},"id":{"minLength":5,"type":"string"},"inet_node_req":{"$ref":"#/components/schemas/models.InetNodeReq"},"ingressdns":{"type":"string"},"ingressmtu":{"type":"integer"},"ingresspersistentkeepalive":{"type":"integer"},"internetgw_node_id":{"type":"string"},"is_auto_relay":{"type":"boolean"},"is_fail_over":{"type":"boolean"},"is_gw":{"type":"boolean"},"is_static":{"type":"boolean"},"is_user_node":{"type":"boolean"},"isegressgateway":{"type":"boolean"},"isingressgateway":{"type":"boolean"},"isinternetgateway":{"type":"boolean"},"isrelay":{"type":"boolean"},"isrelayed":{"type":"boolean"},"last_evaluated_at":{"type":"string"},"lastcheckin":{"format":"int64","type":"integer"},"lastmodified":{"format":"int64","type":"integer"},"lastpeerupdate":{"format":"int64","type":"integer"},"localaddress":{"type":"string"},"location":{"type":"string"},"metadata":{"type":"string"},"network":{"type":"string"},"networkrange":{"type":"string"},"networkrange6":{"type":"string"},"pendingdelete":{"type":"boolean"},"posture_check_violation_severity_level":{"$ref":"#/components/schemas/models.Severity"},"posture_check_violations":{"items":{"$ref":"#/components/schemas/models.Violation"},"type":"array"},"relayedby":{"description":"AutoRelayedBy                 uuid.UUID           `json:\"auto_relayed_by\"`","type":"string"},"relaynodes":{"items":{"type":"string"},"type":"array"},"server":{"type":"string"},"static_node":{"$ref":"#/components/schemas/models.ExtClient"},"status":{"$ref":"#/components/schemas/models.NodeStatus"},"tags":{"additionalProperties":{"type":"object"},"type":"object"}},"required":["hostid","id"],"type":"object"},"models.EgressRangeMetric":{"properties":{"nat":{"type":"boolean"},"nat_mode":{"$ref":"#/components/schemas/models.EgressNATMode"},"network":{"type":"string"},"route_metric":{"description":"preffered range 1-999","type":"integer"},"virtual_network":{"type":"string"}},"type":"object"},"models.EgressNATMode":{"enum":["virtual_nat","direct_nat"],"type":"string"},"models.InetNodeReq":{"properties":{"inet_node_client_ids":{"items":{"type":"string"},"type":"array"}},"type":"object"},"models.Severity":{"enum":[0,1,2,3,4],"type":"integer"},"models.Violation":{"properties":{"attribute":{"type":"string"},"check_id":{"type":"string"},"message":{"type":"string"},"name":{"type":"string"},"severity":{"$ref":"#/components/schemas/models.Severity"}},"type":"object"},"models.ExtClient":{"properties":{"address":{"type":"string"},"address6":{"type":"string"},"allowed_ips":{"items":{"type":"string"},"type":"array"},"client_version":{"type":"string"},"clientid":{"type":"string"},"country":{"type":"string"},"deniednodeacls":{"additionalProperties":{"type":"object"},"type":"object"},"device_id":{"type":"string"},"device_name":{"type":"string"},"dns":{"type":"string"},"enabled":{"type":"boolean"},"extraallowedips":{"items":{"type":"string"},"type":"array"},"ingressgatewayendpoint":{"type":"string"},"ingressgatewayid":{"type":"string"},"jit_expires_at":{"description":"JIT grant expiry time (nil if JIT not enabled or user is admin)","type":"string"},"kernel_version":{"type":"string"},"last_evaluated_at":{"type":"string"},"lastmodified":{"format":"int64","type":"integer"},"location":{"description":"format: lat,long","type":"string"},"network":{"type":"string"},"os":{"type":"string"},"os_family":{"type":"string"},"os_version":{"type":"string"},"ownerid":{"type":"string"},"postdown":{"type":"string"},"postup":{"type":"string"},"posture_check_violation_severity_level":{"$ref":"#/components/schemas/models.Severity"},"posture_check_violations":{"items":{"$ref":"#/components/schemas/models.Violation"},"type":"array"},"privatekey":{"type":"string"},"public_endpoint":{"type":"string"},"publickey":{"type":"string"},"remote_access_client_id":{"description":"unique ID (MAC address) of RAC machine","type":"string"},"tags":{"additionalProperties":{"type":"object"},"type":"object"}},"type":"object"},"models.NodeStatus":{"enum":["online","offline","warning","error","unknown","disconnected"],"type":"string"}}}}
```

## The models.User object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"models.User":{"properties":{"account_disabled":{"type":"boolean"},"auth_type":{"type":"string"},"display_name":{"type":"string"},"external_identity_provider_id":{"type":"string"},"is_mfa_enabled":{"type":"boolean"},"isadmin":{"description":"deprecated","type":"boolean"},"issuperadmin":{"description":"deprecated","type":"boolean"},"last_login_time":{"type":"string"},"network_roles":{"additionalProperties":{"additionalProperties":{"type":"object"},"type":"object"},"type":"object"},"password":{"minLength":5,"type":"string"},"platform_role_id":{"$ref":"#/components/schemas/models.UserRoleID"},"remote_gw_ids":{"additionalProperties":{"type":"object"},"description":"deprecated","type":"object"},"totp_secret":{"type":"string"},"user_group_ids":{"additionalProperties":{"type":"object"},"type":"object"},"username":{"minLength":3,"type":"string"}},"required":["password"],"type":"object"},"models.UserRoleID":{"enum":["super-admin","admin","service-user","platform-user","auditor","network-admin","network-user"],"type":"string"}}}}
```

## The models.UserAuthParams object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"models.UserAuthParams":{"properties":{"password":{"type":"string"},"username":{"type":"string"}},"type":"object"}}}}
```

## The models.UserGroup object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"models.UserGroup":{"properties":{"color_code":{"type":"string"},"default":{"type":"boolean"},"external_identity_provider_id":{"type":"string"},"id":{"type":"string"},"meta_data":{"type":"string"},"name":{"type":"string"},"network_roles":{"additionalProperties":{"additionalProperties":{"type":"object"},"type":"object"},"type":"object"}},"type":"object"}}}}
```

## The models.UserIPMap object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"models.UserIPMap":{"properties":{"mappings":{"additionalProperties":{"$ref":"#/components/schemas/models.UserMapping"},"type":"object"}},"type":"object"},"models.UserMapping":{"properties":{"groups":{"items":{"type":"string"},"type":"array"},"user":{"type":"string"}},"type":"object"}}}}
```

## The models.UserIdentityValidationRequest object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"models.UserIdentityValidationRequest":{"properties":{"password":{"type":"string"}},"type":"object"}}}}
```

## The models.UserIdentityValidationResponse object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"models.UserIdentityValidationResponse":{"properties":{"identity_validated":{"type":"boolean"}},"type":"object"}}}}
```

## The models.UserInvite object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"models.UserInvite":{"properties":{"email":{"type":"string"},"invite_code":{"type":"string"},"invite_url":{"type":"string"},"network_roles":{"additionalProperties":{"additionalProperties":{"type":"object"},"type":"object"},"type":"object"},"platform_role_id":{"type":"string"},"user_group_ids":{"additionalProperties":{"type":"object"},"type":"object"}},"type":"object"}}}}
```

## The models.UserJITNetworkStatus object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"models.UserJITNetworkStatus":{"properties":{"grant":{"description":"schema.JITGrant"},"has_access":{"type":"boolean"},"jit_enabled":{"type":"boolean"},"network_id":{"type":"string"},"network_name":{"type":"string"},"pending_request":{"type":"boolean"},"request":{"description":"schema.JITRequest"}},"type":"object"}}}}
```

## The models.UserMapping object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"models.UserMapping":{"properties":{"groups":{"items":{"type":"string"},"type":"array"},"user":{"type":"string"}},"type":"object"}}}}
```

## The models.UserRoleID object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"models.UserRoleID":{"enum":["super-admin","admin","service-user","platform-user","auditor","network-admin","network-user"],"type":"string"}}}}
```

## The models.UserRolePermissionTemplate object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"models.UserRolePermissionTemplate":{"properties":{"default":{"type":"boolean"},"deny_dashboard_access":{"type":"boolean"},"full_access":{"type":"boolean"},"global_level_access":{"additionalProperties":{"additionalProperties":{"$ref":"#/components/schemas/models.RsrcPermissionScope"},"type":"object"},"type":"object"},"id":{"$ref":"#/components/schemas/models.UserRoleID"},"meta_data":{"type":"string"},"name":{"type":"string"},"network_id":{"$ref":"#/components/schemas/models.NetworkID"},"network_level_access":{"additionalProperties":{"additionalProperties":{"$ref":"#/components/schemas/models.RsrcPermissionScope"},"type":"object"},"type":"object"}},"type":"object"},"models.RsrcPermissionScope":{"properties":{"create":{"type":"boolean"},"delete":{"type":"boolean"},"read":{"type":"boolean"},"self_only":{"type":"boolean"},"update":{"type":"boolean"},"vpn_access":{"type":"boolean"}},"type":"object"},"models.UserRoleID":{"enum":["super-admin","admin","service-user","platform-user","auditor","network-admin","network-user"],"type":"string"},"models.NetworkID":{"enum":["all_networks"],"type":"string"}}}}
```

## The models.UserSettings object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"models.UserSettings":{"properties":{"reduced_motion":{"type":"boolean"},"text_size":{"type":"string"},"theme":{"$ref":"#/components/schemas/models.Theme"}},"type":"object"},"models.Theme":{"enum":["dark","light","system"],"type":"string"}}}}
```

## The models.UserTOTPVerificationParams object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"models.UserTOTPVerificationParams":{"properties":{"otp_auth_url":{"type":"string"},"otp_auth_url_signature":{"type":"string"},"totp":{"type":"string"}},"type":"object"}}}}
```

## The models.Violation object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"models.Violation":{"properties":{"attribute":{"type":"string"},"check_id":{"type":"string"},"message":{"type":"string"},"name":{"type":"string"},"severity":{"$ref":"#/components/schemas/models.Severity"}},"type":"object"},"models.Severity":{"enum":[0,1,2,3,4],"type":"integer"}}}}
```

## The net.IPNet object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"net.IPNet":{"properties":{"ip":{"description":"network number","items":{"type":"integer"},"type":"array"},"mask":{"description":"network mask","items":{"format":"int32","type":"integer"},"type":"array"}},"type":"object"}}}}
```

## The net.UDPAddr object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"net.UDPAddr":{"properties":{"ip":{"items":{"type":"integer"},"type":"array"},"port":{"type":"integer"},"zone":{"description":"IPv6 scoped addressing zone","type":"string"}},"type":"object"}}}}
```

## The netip.AddrPort object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"netip.AddrPort":{"type":"object"}}}}
```

## The schema.Attribute object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"schema.Attribute":{"enum":["os","os_version","os_family","kernel_version","auto_update","client_version","client_location"],"type":"string"}}}}
```

## The schema.Egress object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"schema.Egress":{"properties":{"created_at":{"type":"string"},"created_by":{"type":"string"},"description":{"type":"string"},"domain":{"type":"string"},"domain_ans":{"items":{"type":"string"},"type":"array"},"id":{"type":"string"},"mode":{"$ref":"#/components/schemas/models.EgressNATMode"},"name":{"type":"string"},"nat":{"type":"boolean"},"network":{"type":"string"},"nodes":{"$ref":"#/components/schemas/datatypes.JSONMap"},"range":{"type":"string"},"status":{"description":"IsInetGw    bool              `gorm:\"is_inet_gw\" json:\"is_internet_gateway\"`","type":"boolean"},"tags":{"$ref":"#/components/schemas/datatypes.JSONMap"},"updated_at":{"type":"string"},"virtual_range":{"type":"string"}},"type":"object"},"models.EgressNATMode":{"enum":["virtual_nat","direct_nat"],"type":"string"},"datatypes.JSONMap":{"additionalProperties":true,"type":"object"}}}}
```

## The schema.Event object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"schema.Event":{"properties":{"action":{"$ref":"#/components/schemas/models.Action"},"diff":{"items":{"type":"integer"},"type":"array"},"id":{"type":"string"},"network_id":{"$ref":"#/components/schemas/models.NetworkID"},"origin":{"$ref":"#/components/schemas/models.Origin"},"source":{"items":{"type":"integer"},"type":"array"},"target":{"items":{"type":"integer"},"type":"array"},"time_stamp":{"type":"string"},"triggered_by":{"type":"string"}},"type":"object"},"models.Action":{"enum":["CREATE","UPDATE","DELETE","DELETE_ALL","LOGIN","LOGOUT","CONNECT","SYNC","REFRESH_KEY","REFRESH_ALL_KEYS","SYNC_ALL","UPGRADE_ALL","DISCONNECT","JOIN_HOST_TO_NETWORK","REMOVE_HOST_FROM_NETWORK","ENABLE_MFA","DISABLE_MFA","ENFORCE_MFA","UNENFORCE_MFA","ENABLE_BASIC_AUTH","DISABLE_BASIC_AUTH","ENABLE_TELEMETRY","DISABLE_TELEMETRY","UPDATE_CLIENT_SETTINGS","UPDATE_AUTHENTICATION_SECURITY_SETTINGS","UPDATE_MONITORING_AND_DEBUGGING_SETTINGS","UPDATE_EMAIL_SETTINGS","UPDATE_IDP_SETTINGS","ENABLE_FLOW_LOGS","DISABLE_FLOW_LOGS","GATEWAY_ASSIGN","GATEWAY_UNASSIGN"],"type":"string"},"models.NetworkID":{"enum":["all_networks"],"type":"string"},"models.Origin":{"enum":["DASHBOARD","API","NMCTL","CLIENT-APP"],"type":"string"}}}}
```

## The schema.JITRequest object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"schema.JITRequest":{"properties":{"approved_at":{"type":"string"},"approved_by":{"type":"string"},"duration_hours":{"type":"integer"},"expires_at":{"type":"string"},"id":{"type":"string"},"network_id":{"type":"string"},"reason":{"type":"string"},"requested_at":{"type":"string"},"revoked_at":{"type":"string"},"status":{"description":"pending, approved, denied, expired","type":"string"},"user_id":{"type":"string"},"user_name":{"type":"string"}},"type":"object"}}}}
```

## The schema.Nameserver object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"schema.Nameserver":{"properties":{"created_at":{"type":"string"},"created_by":{"type":"string"},"default":{"type":"boolean"},"description":{"type":"string"},"domains":{"items":{"$ref":"#/components/schemas/schema.NameserverDomain"},"type":"array"},"fallback":{"type":"boolean"},"id":{"type":"string"},"match_all":{"type":"boolean"},"match_domains":{"description":"TODO: deprecate","items":{"type":"string"},"type":"array"},"name":{"type":"string"},"network_id":{"type":"string"},"nodes":{"$ref":"#/components/schemas/datatypes.JSONMap"},"servers":{"items":{"type":"string"},"type":"array"},"status":{"type":"boolean"},"tags":{"$ref":"#/components/schemas/datatypes.JSONMap"},"updated_at":{"type":"string"}},"type":"object"},"schema.NameserverDomain":{"properties":{"domain":{"type":"string"},"is_search_domain":{"type":"boolean"}},"type":"object"},"datatypes.JSONMap":{"additionalProperties":true,"type":"object"}}}}
```

## The schema.NameserverDomain object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"schema.NameserverDomain":{"properties":{"domain":{"type":"string"},"is_search_domain":{"type":"boolean"}},"type":"object"}}}}
```

## The schema.PendingHost object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"schema.PendingHost":{"properties":{"enrollment_key_id":{"items":{"type":"integer"},"type":"array"},"host_id":{"type":"string"},"host_name":{"type":"string"},"id":{"type":"string"},"location":{"description":"Format: \"lat,lon\"","type":"string"},"network":{"type":"string"},"os":{"type":"string"},"public_key":{"type":"string"},"requested_at":{"type":"string"},"version":{"type":"string"}},"type":"object"}}}}
```

## The schema.PostureCheck object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"schema.PostureCheck":{"properties":{"attribute":{"$ref":"#/components/schemas/schema.Attribute"},"created_at":{"type":"string"},"created_by":{"type":"string"},"description":{"type":"string"},"id":{"type":"string"},"name":{"type":"string"},"network_id":{"$ref":"#/components/schemas/models.NetworkID"},"severity":{"$ref":"#/components/schemas/models.Severity"},"status":{"type":"boolean"},"tags":{"$ref":"#/components/schemas/datatypes.JSONMap"},"updated_at":{"type":"string"},"user_groups":{"$ref":"#/components/schemas/datatypes.JSONMap"},"values":{"items":{"type":"string"},"type":"array"}},"type":"object"},"schema.Attribute":{"enum":["os","os_version","os_family","kernel_version","auto_update","client_version","client_location"],"type":"string"},"models.NetworkID":{"enum":["all_networks"],"type":"string"},"models.Severity":{"enum":[0,1,2,3,4],"type":"integer"},"datatypes.JSONMap":{"additionalProperties":true,"type":"object"}}}}
```

## The schema.UserAccessToken object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"schema.UserAccessToken":{"properties":{"created_at":{"type":"string"},"created_by":{"type":"string"},"expires_at":{"type":"string"},"id":{"type":"string"},"last_used":{"type":"string"},"name":{"type":"string"},"user_name":{"type":"string"}},"type":"object"}}}}
```

## The wgtypes.PeerConfig object

```json
{"openapi":"3.1.1","info":{"title":"NetMaker","version":"1.4.0"},"components":{"schemas":{"wgtypes.PeerConfig":{"properties":{"allowedIPs":{"description":"AllowedIPs specifies a list of allowed IP addresses in CIDR notation\nfor this peer.","items":{"$ref":"#/components/schemas/net.IPNet"},"type":"array"},"endpoint":{"allOf":[{"$ref":"#/components/schemas/net.UDPAddr"}],"description":"Endpoint specifies the endpoint of this peer entry, if not nil."},"persistentKeepaliveInterval":{"description":"PersistentKeepaliveInterval specifies the persistent keepalive interval\nfor this peer, if not nil.\n\nA non-nil value of 0 will clear the persistent keepalive interval.","format":"int64","type":"integer"},"presharedKey":{"description":"PresharedKey specifies a peer's preshared key configuration, if not nil.\n\nA non-nil, zero-value Key will clear the preshared key.","items":{"type":"integer"},"type":"array"},"publicKey":{"description":"PublicKey specifies the public key of this peer.  PublicKey is a\nmandatory field for all PeerConfigs.","items":{"type":"integer"},"type":"array"},"remove":{"description":"Remove specifies if the peer with this public key should be removed\nfrom a device's peer list.","type":"boolean"},"replaceAllowedIPs":{"description":"ReplaceAllowedIPs specifies if the allowed IPs specified in this peer\nconfiguration should replace any existing ones, instead of appending them\nto the allowed IPs list.","type":"boolean"},"updateOnly":{"description":"UpdateOnly specifies that an operation will only occur on this peer\nif the peer already exists as part of the interface.","type":"boolean"}},"type":"object"},"net.IPNet":{"properties":{"ip":{"description":"network number","items":{"type":"integer"},"type":"array"},"mask":{"description":"network mask","items":{"format":"int32","type":"integer"},"type":"array"}},"type":"object"},"net.UDPAddr":{"properties":{"ip":{"items":{"type":"integer"},"type":"array"},"port":{"type":"integer"},"zone":{"description":"IPv6 scoped addressing zone","type":"string"}},"type":"object"}}}}
```


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://learn.netmaker.io/api-spec/models.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
