+ },
+ "additionalProperties" : 0
+ },
+ "name" : "delete_network",
+ "protected" : 1
+ },
+ "PUT" : {
+ "returns" : {
+ "type" : "null"
+ },
+ "permissions" : {
+ "check" : [
+ "perm",
+ "/nodes/{node}",
+ [
+ "Sys.Modify"
+ ]
+ ]
+ },
+ "proxyto" : "node",
+ "description" : "Update network device configuration",
+ "method" : "PUT",
+ "name" : "update_network",
+ "parameters" : {
+ "additionalProperties" : 0,
+ "properties" : {
+ "slaves" : {
+ "optional" : 1,
+ "type" : "string",
+ "description" : "Specify the interfaces used by the bonding device.",
+ "format" : "pve-iface-list"
+ },
+ "netmask" : {
+ "format" : "ipv4mask",
+ "optional" : 1,
+ "type" : "string",
+ "description" : "Network mask.",
+ "requires" : "address"
+ },
+ "address" : {
+ "format" : "ipv4",
+ "requires" : "netmask",
+ "description" : "IP address.",
+ "type" : "string",
+ "optional" : 1
+ },
+ "bridge_ports" : {
+ "format" : "pve-iface-list",
+ "description" : "Specify the iterfaces you want to add to your bridge.",
+ "type" : "string",
+ "optional" : 1
+ },
+ "autostart" : {
+ "optional" : 1,
+ "type" : "boolean",
+ "description" : "Automatically start interface on boot."
+ },
+ "type" : {
+ "type" : "string",
+ "description" : "Network interface type",
+ "enum" : [
+ "bridge",
+ "bond",
+ "eth",
+ "alias",
+ "vlan",
+ "OVSBridge",
+ "OVSBond",
+ "OVSPort",
+ "OVSIntPort",
+ "unknown"
+ ]
+ },
+ "gateway6" : {
+ "type" : "string",
+ "optional" : 1,
+ "description" : "Default ipv6 gateway address.",
+ "format" : "ipv6"
+ },
+ "gateway" : {
+ "format" : "ipv4",
+ "optional" : 1,
+ "type" : "string",
+ "description" : "Default gateway address."
+ },
+ "ovs_bridge" : {
+ "type" : "string",
+ "optional" : 1,
+ "description" : "The OVS bridge associated with a OVS port. This is required when you create an OVS port.",
+ "format" : "pve-iface"
+ },
+ "delete" : {
+ "type" : "string",
+ "optional" : 1,
+ "description" : "A list of settings you want to delete.",
+ "format" : "pve-configid-list"
+ },
+ "comments" : {
+ "description" : "Comments",
+ "type" : "string",
+ "optional" : 1
+ },
+ "ovs_tag" : {
+ "optional" : 1,
+ "type" : "integer",
+ "maximum" : 4094,
+ "description" : "Specify a VLan tag (used by OVSPort, OVSIntPort, OVSBond)",
+ "minimum" : 1
+ },
+ "ovs_options" : {
+ "description" : "OVS interface options.",
+ "optional" : 1,
+ "type" : "string",
+ "maxLength" : 1024
+ },
+ "node" : {
+ "type" : "string",
+ "description" : "The cluster node name.",
+ "format" : "pve-node"
+ },
+ "comments6" : {
+ "type" : "string",
+ "optional" : 1,
+ "description" : "Comments"
+ },
+ "bridge_vlan_aware" : {
+ "optional" : 1,
+ "type" : "boolean",
+ "description" : "Enable bridge vlan support."
+ },
+ "address6" : {
+ "format" : "ipv6",
+ "optional" : 1,
+ "type" : "string",
+ "description" : "IP address.",
+ "requires" : "netmask6"
+ },
+ "bond_xmit_hash_policy" : {
+ "description" : "Selects the transmit hash policy to use for slave selection in balance-xor and 802.3ad modes.",
+ "enum" : [
+ "layer2",
+ "layer2+3",
+ "layer3+4"
+ ],
+ "optional" : 1,
+ "type" : "string"
+ },
+ "ovs_bonds" : {
+ "format" : "pve-iface-list",
+ "description" : "Specify the interfaces used by the bonding device.",
+ "optional" : 1,
+ "type" : "string"
+ },
+ "bond_mode" : {
+ "optional" : 1,
+ "type" : "string",
+ "description" : "Bonding mode.",
+ "enum" : [
+ "balance-rr",
+ "active-backup",
+ "balance-xor",
+ "broadcast",
+ "802.3ad",
+ "balance-tlb",
+ "balance-alb",
+ "balance-slb",
+ "lacp-balance-slb",
+ "lacp-balance-tcp"
+ ]
+ },
+ "iface" : {
+ "format" : "pve-iface",
+ "maxLength" : 20,
+ "minLength" : 2,
+ "description" : "Network interface name.",
+ "type" : "string"
+ },
+ "ovs_ports" : {
+ "format" : "pve-iface-list",
+ "optional" : 1,
+ "type" : "string",
+ "description" : "Specify the iterfaces you want to add to your bridge."
+ },
+ "netmask6" : {
+ "maximum" : 128,
+ "type" : "integer",
+ "optional" : 1,
+ "requires" : "address6",
+ "description" : "Network mask.",
+ "minimum" : 0
+ }
+ }
+ },
+ "protected" : 1
+ },
+ "GET" : {
+ "description" : "Read network device configuration",
+ "proxyto" : "node",
+ "parameters" : {
+ "additionalProperties" : 0,
+ "properties" : {
+ "node" : {
+ "format" : "pve-node",
+ "type" : "string",
+ "description" : "The cluster node name."
+ },
+ "iface" : {
+ "type" : "string",
+ "description" : "Network interface name.",
+ "minLength" : 2,
+ "maxLength" : 20,
+ "format" : "pve-iface"
+ }
+ }
+ },
+ "name" : "network_config",
+ "permissions" : {
+ "check" : [
+ "perm",
+ "/nodes/{node}",
+ [
+ "Sys.Audit"
+ ]
+ ]
+ },
+ "returns" : {
+ "properties" : {
+ "method" : {
+ "type" : "string"
+ },
+ "type" : {
+ "type" : "string"
+ }
+ },
+ "type" : "object"
+ },
+ "method" : "GET"
+ }
+ },
+ "text" : "{iface}",
+ "leaf" : 1,
+ "path" : "/nodes/{node}/network/{iface}"
+ }
+ ],
+ "text" : "network",
+ "info" : {
+ "GET" : {
+ "returns" : {
+ "items" : {
+ "properties" : {},
+ "type" : "object"
+ },
+ "links" : [
+ {
+ "rel" : "child",
+ "href" : "{iface}"
+ }
+ ],
+ "type" : "array"
+ },
+ "method" : "GET",
+ "proxyto" : "node",
+ "description" : "List available networks",
+ "permissions" : {
+ "user" : "all"
+ },
+ "name" : "index",
+ "parameters" : {
+ "additionalProperties" : 0,
+ "properties" : {
+ "type" : {
+ "optional" : 1,
+ "type" : "string",
+ "description" : "Only list specific interface types.",
+ "enum" : [
+ "bridge",
+ "bond",
+ "eth",
+ "alias",
+ "vlan",
+ "OVSBridge",
+ "OVSBond",
+ "OVSPort",
+ "OVSIntPort",
+ "any_bridge"
+ ]
+ },
+ "node" : {
+ "format" : "pve-node",
+ "description" : "The cluster node name.",
+ "type" : "string"
+ }
+ }
+ }
+ },
+ "DELETE" : {
+ "proxyto" : "node",
+ "description" : "Revert network configuration changes.",
+ "permissions" : {
+ "check" : [
+ "perm",
+ "/nodes/{node}",
+ [
+ "Sys.Modify"
+ ]
+ ]
+ },
+ "returns" : {
+ "type" : "null"
+ },
+ "protected" : 1,
+ "parameters" : {
+ "additionalProperties" : 0,
+ "properties" : {
+ "node" : {
+ "description" : "The cluster node name.",
+ "type" : "string",
+ "format" : "pve-node"
+ }
+ }
+ },
+ "name" : "revert_network_changes",
+ "method" : "DELETE"
+ },
+ "POST" : {
+ "protected" : 1,
+ "name" : "create_network",
+ "parameters" : {
+ "properties" : {
+ "ovs_bridge" : {
+ "description" : "The OVS bridge associated with a OVS port. This is required when you create an OVS port.",
+ "type" : "string",
+ "optional" : 1,
+ "format" : "pve-iface"
+ },
+ "gateway" : {
+ "type" : "string",
+ "optional" : 1,
+ "description" : "Default gateway address.",
+ "format" : "ipv4"
+ },
+ "gateway6" : {
+ "format" : "ipv6",
+ "description" : "Default ipv6 gateway address.",
+ "type" : "string",
+ "optional" : 1
+ },
+ "node" : {
+ "format" : "pve-node",
+ "type" : "string",
+ "description" : "The cluster node name."
+ },
+ "ovs_options" : {
+ "maxLength" : 1024,
+ "description" : "OVS interface options.",
+ "type" : "string",
+ "optional" : 1
+ },
+ "comments" : {
+ "optional" : 1,
+ "type" : "string",
+ "description" : "Comments"
+ },
+ "ovs_tag" : {
+ "optional" : 1,
+ "type" : "integer",
+ "maximum" : 4094,
+ "description" : "Specify a VLan tag (used by OVSPort, OVSIntPort, OVSBond)",
+ "minimum" : 1
+ },
+ "netmask" : {
+ "optional" : 1,
+ "type" : "string",
+ "requires" : "address",
+ "description" : "Network mask.",
+ "format" : "ipv4mask"
+ },
+ "slaves" : {
+ "type" : "string",
+ "optional" : 1,
+ "description" : "Specify the interfaces used by the bonding device.",
+ "format" : "pve-iface-list"
+ },
+ "type" : {
+ "enum" : [
+ "bridge",
+ "bond",
+ "eth",
+ "alias",
+ "vlan",
+ "OVSBridge",
+ "OVSBond",
+ "OVSPort",
+ "OVSIntPort",
+ "unknown"
+ ],
+ "description" : "Network interface type",
+ "type" : "string"
+ },
+ "autostart" : {
+ "description" : "Automatically start interface on boot.",
+ "type" : "boolean",
+ "optional" : 1
+ },
+ "bridge_ports" : {
+ "format" : "pve-iface-list",
+ "type" : "string",
+ "optional" : 1,
+ "description" : "Specify the iterfaces you want to add to your bridge."
+ },
+ "address" : {
+ "requires" : "netmask",
+ "description" : "IP address.",
+ "type" : "string",
+ "optional" : 1,
+ "format" : "ipv4"
+ },
+ "bond_mode" : {
+ "description" : "Bonding mode.",
+ "enum" : [
+ "balance-rr",
+ "active-backup",
+ "balance-xor",
+ "broadcast",
+ "802.3ad",
+ "balance-tlb",
+ "balance-alb",
+ "balance-slb",
+ "lacp-balance-slb",
+ "lacp-balance-tcp"
+ ],
+ "optional" : 1,
+ "type" : "string"
+ },
+ "ovs_bonds" : {
+ "format" : "pve-iface-list",
+ "type" : "string",
+ "optional" : 1,
+ "description" : "Specify the interfaces used by the bonding device."
+ },
+ "netmask6" : {
+ "minimum" : 0,
+ "optional" : 1,
+ "type" : "integer",
+ "maximum" : 128,
+ "description" : "Network mask.",
+ "requires" : "address6"
+ },
+ "ovs_ports" : {
+ "optional" : 1,
+ "type" : "string",
+ "description" : "Specify the iterfaces you want to add to your bridge.",
+ "format" : "pve-iface-list"