# Virtual Network [Virtual network configuration](https://docs.trustgrid.io/docs/domain/virtual-networks/) ## List virtual networks - [GET /v2/domain/{domainName}/network](https://apidocs.trustgrid.io/domain/paths/~1v2~1domain~1%7Bdomainname%7D~1network/get.md): Requires virtual-networks::read permission. ## Create a virtual network network - [POST /v2/domain/{domainName}/network](https://apidocs.trustgrid.io/domain/paths/~1v2~1domain~1%7Bdomainname%7D~1network/post.md): Requires virtual-networks::modify permission. ## Delete a virtual network - this change is not staged and will immediately affect the domain - [DELETE /v2/domain/{domainName}/network/{networkName}](https://apidocs.trustgrid.io/domain/paths/~1v2~1domain~1%7Bdomainname%7D~1network~1%7Bnetworkname%7D/delete.md): Requires virtual-networks::modify permission. ## List a virtual network's access policies - [GET /v2/domain/{domainName}/network/{networkName}/access-policy](https://apidocs.trustgrid.io/domain/paths/~1v2~1domain~1%7Bdomainname%7D~1network~1%7Bnetworkname%7D~1access-policy/get.md): Requires virtual-networks::read permission. ## Create a network access policy - [POST /v2/domain/{domainName}/network/{networkName}/access-policy](https://apidocs.trustgrid.io/domain/paths/~1v2~1domain~1%7Bdomainname%7D~1network~1%7Bnetworkname%7D~1access-policy/post.md): Requires virtual-networks::modify permission. ## Delete a network access policy - [DELETE /v2/domain/{domainName}/network/{networkName}/access-policy/{accessPolicyID}](https://apidocs.trustgrid.io/domain/paths/~1v2~1domain~1%7Bdomainname%7D~1network~1%7Bnetworkname%7D~1access-policy~1%7Baccesspolicyid%7D/delete.md): Requires virtual-networks::modify permission. ## Update a network access policy - [PUT /v2/domain/{domainName}/network/{networkName}/access-policy/{accessPolicyID}](https://apidocs.trustgrid.io/domain/paths/~1v2~1domain~1%7Bdomainname%7D~1network~1%7Bnetworkname%7D~1access-policy~1%7Baccesspolicyid%7D/put.md): Requires virtual-networks::modify permission. ## List a network's auth groups - [GET /v2/domain/{domainName}/network/{networkName}/auth-group](https://apidocs.trustgrid.io/domain/paths/~1v2~1domain~1%7Bdomainname%7D~1network~1%7Bnetworkname%7D~1auth-group/get.md): Requires virtual-networks::read permission. ## Create a network auth group - [POST /v2/domain/{domainName}/network/{networkName}/auth-group](https://apidocs.trustgrid.io/domain/paths/~1v2~1domain~1%7Bdomainname%7D~1network~1%7Bnetworkname%7D~1auth-group/post.md): Requires virtual-networks::modify permission. ## Delete a network auth group - [DELETE /v2/domain/{domainName}/network/{networkName}/auth-group/{groupName}](https://apidocs.trustgrid.io/domain/paths/~1v2~1domain~1%7Bdomainname%7D~1network~1%7Bnetworkname%7D~1auth-group~1%7Bgroupname%7D/delete.md): Requires virtual-networks::modify permission. ## List a network auth group's members - [GET /v2/domain/{domainName}/network/{networkName}/auth-group/{groupName}](https://apidocs.trustgrid.io/domain/paths/~1v2~1domain~1%7Bdomainname%7D~1network~1%7Bnetworkname%7D~1auth-group~1%7Bgroupname%7D/get.md): Requires virtual-networks::read permission. ## Add a network auth group member - [POST /v2/domain/{domainName}/network/{networkName}/auth-group/{groupName}](https://apidocs.trustgrid.io/domain/paths/~1v2~1domain~1%7Bdomainname%7D~1network~1%7Bnetworkname%7D~1auth-group~1%7Bgroupname%7D/post.md): Requires virtual-networks::modify permission. ## Update a network auth group - [PUT /v2/domain/{domainName}/network/{networkName}/auth-group/{groupName}](https://apidocs.trustgrid.io/domain/paths/~1v2~1domain~1%7Bdomainname%7D~1network~1%7Bnetworkname%7D~1auth-group~1%7Bgroupname%7D/put.md): Requires virtual-networks::modify permission. ## Remove a network auth group member - [DELETE /v2/domain/{domainName}/network/{networkName}/auth-group/{groupName}/{memberID}](https://apidocs.trustgrid.io/domain/paths/~1v2~1domain~1%7Bdomainname%7D~1network~1%7Bnetworkname%7D~1auth-group~1%7Bgroupname%7D~1%7Bmemberid%7D/delete.md): Requires virtual-networks::modify permission. ## Update a membership - [PUT /v2/domain/{domainName}/network/{networkName}/auth-group/{groupName}/{memberID}](https://apidocs.trustgrid.io/domain/paths/~1v2~1domain~1%7Bdomainname%7D~1network~1%7Bnetworkname%7D~1auth-group~1%7Bgroupname%7D~1%7Bmemberid%7D/put.md): Requires virtual-networks::modify permission. ## List staged changes - [GET /v2/domain/{domainName}/network/{networkName}/change](https://apidocs.trustgrid.io/domain/paths/~1v2~1domain~1%7Bdomainname%7D~1network~1%7Bnetworkname%7D~1change/get.md): Requires virtual-networks::read permission. ## Commit staged changes - [POST /v2/domain/{domainName}/network/{networkName}/change/commit](https://apidocs.trustgrid.io/domain/paths/~1v2~1domain~1%7Bdomainname%7D~1network~1%7Bnetworkname%7D~1change~1commit/post.md): Requires virtual-networks::modify permission. ## List validation errors for staged changes - [GET /v2/domain/{domainName}/network/{networkName}/change/validate](https://apidocs.trustgrid.io/domain/paths/~1v2~1domain~1%7Bdomainname%7D~1network~1%7Bnetworkname%7D~1change~1validate/get.md): Requires virtual-networks::read permission. ## Revert a staged change. If the item is newly added and not committed, the item will be deleted along with any associated changes. - [DELETE /v2/domain/{domainName}/network/{networkName}/change/{changeID}](https://apidocs.trustgrid.io/domain/paths/~1v2~1domain~1%7Bdomainname%7D~1network~1%7Bnetworkname%7D~1change~1%7Bchangeid%7D/delete.md): Requires virtual-networks::modify permission. ## Get a network's DNS configuration - [GET /v2/domain/{domainName}/network/{networkName}/dns](https://apidocs.trustgrid.io/domain/paths/~1v2~1domain~1%7Bdomainname%7D~1network~1%7Bnetworkname%7D~1dns/get.md): Requires virtual-networks::read permission. ## Update a network's DNS configuration - [PUT /v2/domain/{domainName}/network/{networkName}/dns](https://apidocs.trustgrid.io/domain/paths/~1v2~1domain~1%7Bdomainname%7D~1network~1%7Bnetworkname%7D~1dns/put.md): Requires virtual-networks::modify permission. ## List a network's DNS zones - [GET /v2/domain/{domainName}/network/{networkName}/dns-zone](https://apidocs.trustgrid.io/domain/paths/~1v2~1domain~1%7Bdomainname%7D~1network~1%7Bnetworkname%7D~1dns-zone/get.md): Requires virtual-networks::read permission. ## Create a DNS zone - [POST /v2/domain/{domainName}/network/{networkName}/dns-zone](https://apidocs.trustgrid.io/domain/paths/~1v2~1domain~1%7Bdomainname%7D~1network~1%7Bnetworkname%7D~1dns-zone/post.md): Requires virtual-networks::modify permission. ## Delete a DNS zone - [DELETE /v2/domain/{domainName}/network/{networkName}/dns-zone/{zoneName}](https://apidocs.trustgrid.io/domain/paths/~1v2~1domain~1%7Bdomainname%7D~1network~1%7Bnetworkname%7D~1dns-zone~1%7Bzonename%7D/delete.md): Requires virtual-networks::modify permission. ## Update a DNS zone - [PUT /v2/domain/{domainName}/network/{networkName}/dns-zone/{zoneName}](https://apidocs.trustgrid.io/domain/paths/~1v2~1domain~1%7Bdomainname%7D~1network~1%7Bnetworkname%7D~1dns-zone~1%7Bzonename%7D/put.md): Requires virtual-networks::modify permission. ## List a network zone's DNS records - [GET /v2/domain/{domainName}/network/{networkName}/dns-zone/{zoneName}/dns-record](https://apidocs.trustgrid.io/domain/paths/~1v2~1domain~1%7Bdomainname%7D~1network~1%7Bnetworkname%7D~1dns-zone~1%7Bzonename%7D~1dns-record/get.md): Requires virtual-networks::read permission. ## Create a DNS record - [POST /v2/domain/{domainName}/network/{networkName}/dns-zone/{zoneName}/dns-record](https://apidocs.trustgrid.io/domain/paths/~1v2~1domain~1%7Bdomainname%7D~1network~1%7Bnetworkname%7D~1dns-zone~1%7Bzonename%7D~1dns-record/post.md): Requires virtual-networks::modify permission. ## Delete a DNS record - [DELETE /v2/domain/{domainName}/network/{networkName}/dns-zone/{zoneName}/dns-record/{recordName}/{recordType}](https://apidocs.trustgrid.io/domain/paths/~1v2~1domain~1%7Bdomainname%7D~1network~1%7Bnetworkname%7D~1dns-zone~1%7Bzonename%7D~1dns-record~1%7Brecordname%7D~1%7Brecordtype%7D/delete.md): Requires virtual-networks::modify permission. ## Update a DNS record - [PUT /v2/domain/{domainName}/network/{networkName}/dns-zone/{zoneName}/dns-record/{recordName}/{recordType}](https://apidocs.trustgrid.io/domain/paths/~1v2~1domain~1%7Bdomainname%7D~1network~1%7Bnetworkname%7D~1dns-zone~1%7Bzonename%7D~1dns-record~1%7Brecordname%7D~1%7Brecordtype%7D/put.md): Requires virtual-networks::modify permission. ## List a network's groups - [GET /v2/domain/{domainName}/network/{networkName}/network-group](https://apidocs.trustgrid.io/domain/paths/~1v2~1domain~1%7Bdomainname%7D~1network~1%7Bnetworkname%7D~1network-group/get.md): Requires virtual-networks::read permission. ## Create a network group - [POST /v2/domain/{domainName}/network/{networkName}/network-group](https://apidocs.trustgrid.io/domain/paths/~1v2~1domain~1%7Bdomainname%7D~1network~1%7Bnetworkname%7D~1network-group/post.md): Requires virtual-networks::modify permission. ## Delete a network group - [DELETE /v2/domain/{domainName}/network/{networkName}/network-group/{groupName}](https://apidocs.trustgrid.io/domain/paths/~1v2~1domain~1%7Bdomainname%7D~1network~1%7Bnetworkname%7D~1network-group~1%7Bgroupname%7D/delete.md): Requires virtual-networks::modify permission. ## List a network's group memberships - [GET /v2/domain/{domainName}/network/{networkName}/network-group/{groupName}](https://apidocs.trustgrid.io/domain/paths/~1v2~1domain~1%7Bdomainname%7D~1network~1%7Bnetworkname%7D~1network-group~1%7Bgroupname%7D/get.md): Requires virtual-networks::read permission. ## Update a network group - [PUT /v2/domain/{domainName}/network/{networkName}/network-group/{groupName}](https://apidocs.trustgrid.io/domain/paths/~1v2~1domain~1%7Bdomainname%7D~1network~1%7Bnetworkname%7D~1network-group~1%7Bgroupname%7D/put.md): Requires virtual-networks::modify permission. ## Remove a network object from a network group - [DELETE /v2/domain/{domainName}/network/{networkName}/network-group/{groupName}/{objectName}](https://apidocs.trustgrid.io/domain/paths/~1v2~1domain~1%7Bdomainname%7D~1network~1%7Bnetworkname%7D~1network-group~1%7Bgroupname%7D~1%7Bobjectname%7D/delete.md): Requires virtual-networks::modify permission. ## Add a network object to a network group (represented by a network group membership - [POST /v2/domain/{domainName}/network/{networkName}/network-group/{groupName}/{objectName}](https://apidocs.trustgrid.io/domain/paths/~1v2~1domain~1%7Bdomainname%7D~1network~1%7Bnetworkname%7D~1network-group~1%7Bgroupname%7D~1%7Bobjectname%7D/post.md): Requires virtual-networks::modify permission. ## List a network's objects - [GET /v2/domain/{domainName}/network/{networkName}/network-object](https://apidocs.trustgrid.io/domain/paths/~1v2~1domain~1%7Bdomainname%7D~1network~1%7Bnetworkname%7D~1network-object/get.md): Requires virtual-networks::read permission. ## Create a network object - [POST /v2/domain/{domainName}/network/{networkName}/network-object](https://apidocs.trustgrid.io/domain/paths/~1v2~1domain~1%7Bdomainname%7D~1network~1%7Bnetworkname%7D~1network-object/post.md): Requires virtual-networks::modify permission. ## Delete a network object - [DELETE /v2/domain/{domainName}/network/{networkName}/network-object/{objectName}](https://apidocs.trustgrid.io/domain/paths/~1v2~1domain~1%7Bdomainname%7D~1network~1%7Bnetworkname%7D~1network-object~1%7Bobjectname%7D/delete.md): Requires virtual-networks::modify permission. ## Update a network object - [PUT /v2/domain/{domainName}/network/{networkName}/network-object/{objectName}](https://apidocs.trustgrid.io/domain/paths/~1v2~1domain~1%7Bdomainname%7D~1network~1%7Bnetworkname%7D~1network-object~1%7Bobjectname%7D/put.md): Requires virtual-networks::modify permission. ## List a network's port forwardings - [GET /v2/domain/{domainName}/network/{networkName}/port-forwarding](https://apidocs.trustgrid.io/domain/paths/~1v2~1domain~1%7Bdomainname%7D~1network~1%7Bnetworkname%7D~1port-forwarding/get.md): Requires virtual-networks::read permission. ## Create a port forwarding - [POST /v2/domain/{domainName}/network/{networkName}/port-forwarding](https://apidocs.trustgrid.io/domain/paths/~1v2~1domain~1%7Bdomainname%7D~1network~1%7Bnetworkname%7D~1port-forwarding/post.md): Requires virtual-networks::modify permission. ## Get a port forwarding - [DELETE /v2/domain/{domainName}/network/{networkName}/port-forwarding/{portForwardingID}](https://apidocs.trustgrid.io/domain/paths/~1v2~1domain~1%7Bdomainname%7D~1network~1%7Bnetworkname%7D~1port-forwarding~1%7Bportforwardingid%7D/delete.md): Requires virtual-networks::read permission. ## Update a port forwarding - [PUT /v2/domain/{domainName}/network/{networkName}/port-forwarding/{portForwardingID}](https://apidocs.trustgrid.io/domain/paths/~1v2~1domain~1%7Bdomainname%7D~1network~1%7Bnetworkname%7D~1port-forwarding~1%7Bportforwardingid%7D/put.md): Requires virtual-networks::modify permission. ## List a network's routes - [GET /v2/domain/{domainName}/network/{networkName}/route](https://apidocs.trustgrid.io/domain/paths/~1v2~1domain~1%7Bdomainname%7D~1network~1%7Bnetworkname%7D~1route/get.md): Requires virtual-networks::read permission. ## Create a network route - [POST /v2/domain/{domainName}/network/{networkName}/route](https://apidocs.trustgrid.io/domain/paths/~1v2~1domain~1%7Bdomainname%7D~1network~1%7Bnetworkname%7D~1route/post.md): Requires virtual-networks::modify permission. ## Delete a network route - [DELETE /v2/domain/{domainName}/network/{networkName}/route/{routeID}](https://apidocs.trustgrid.io/domain/paths/~1v2~1domain~1%7Bdomainname%7D~1network~1%7Bnetworkname%7D~1route~1%7Brouteid%7D/delete.md): Requires virtual-networks::modify permission. ## Update a network route - [PUT /v2/domain/{domainName}/network/{networkName}/route/{routeID}](https://apidocs.trustgrid.io/domain/paths/~1v2~1domain~1%7Bdomainname%7D~1network~1%7Bnetworkname%7D~1route~1%7Brouteid%7D/put.md): Requires virtual-networks::modify permission. ## Returns all the VPN networks - [GET /v2/cluster/{clusterFQDN}/vpn](https://apidocs.trustgrid.io/virtual-network/paths/~1v2~1cluster~1%7Bclusterfqdn%7D~1vpn/get.md) ## Attach a VPN network - [POST /v2/cluster/{clusterFQDN}/vpn](https://apidocs.trustgrid.io/virtual-network/paths/~1v2~1cluster~1%7Bclusterfqdn%7D~1vpn/post.md) ## Delete a VPN network - [DELETE /v2/cluster/{clusterFQDN}/vpn/{networkName}](https://apidocs.trustgrid.io/virtual-network/paths/~1v2~1cluster~1%7Bclusterfqdn%7D~1vpn~1%7Bnetworkname%7D/delete.md) ## Returns information about a VPN network - [GET /v2/cluster/{clusterFQDN}/vpn/{networkName}](https://apidocs.trustgrid.io/virtual-network/paths/~1v2~1cluster~1%7Bclusterfqdn%7D~1vpn~1%7Bnetworkname%7D/get.md) ## Update a VPN network - [PUT /v2/cluster/{clusterFQDN}/vpn/{networkName}](https://apidocs.trustgrid.io/virtual-network/paths/~1v2~1cluster~1%7Bclusterfqdn%7D~1vpn~1%7Bnetworkname%7D/put.md) ## Delete a VPN DNS configuration - [DELETE /v2/cluster/{clusterFQDN}/vpn/{networkName}/dns](https://apidocs.trustgrid.io/virtual-network/paths/~1v2~1cluster~1%7Bclusterfqdn%7D~1vpn~1%7Bnetworkname%7D~1dns/delete.md) ## Get a VPN DNS configuration - [GET /v2/cluster/{clusterFQDN}/vpn/{networkName}/dns](https://apidocs.trustgrid.io/virtual-network/paths/~1v2~1cluster~1%7Bclusterfqdn%7D~1vpn~1%7Bnetworkname%7D~1dns/get.md) ## Create a VPN DNS configuration - [POST /v2/cluster/{clusterFQDN}/vpn/{networkName}/dns](https://apidocs.trustgrid.io/virtual-network/paths/~1v2~1cluster~1%7Bclusterfqdn%7D~1vpn~1%7Bnetworkname%7D~1dns/post.md) ## Update a VPN DNS configuration - [PUT /v2/cluster/{clusterFQDN}/vpn/{networkName}/dns](https://apidocs.trustgrid.io/virtual-network/paths/~1v2~1cluster~1%7Bclusterfqdn%7D~1vpn~1%7Bnetworkname%7D~1dns/put.md) ## Get a VPN's dynamic export routes - [GET /v2/cluster/{clusterFQDN}/vpn/{networkName}/dynamic/export-route](https://apidocs.trustgrid.io/virtual-network/paths/~1v2~1cluster~1%7Bclusterfqdn%7D~1vpn~1%7Bnetworkname%7D~1dynamic~1export-route/get.md) ## Create a VPN export route - [POST /v2/cluster/{clusterFQDN}/vpn/{networkName}/dynamic/export-route](https://apidocs.trustgrid.io/virtual-network/paths/~1v2~1cluster~1%7Bclusterfqdn%7D~1vpn~1%7Bnetworkname%7D~1dynamic~1export-route/post.md) ## Delete a VPN export route - [DELETE /v2/cluster/{clusterFQDN}/vpn/{networkName}/dynamic/export-route/{uid}](https://apidocs.trustgrid.io/virtual-network/paths/~1v2~1cluster~1%7Bclusterfqdn%7D~1vpn~1%7Bnetworkname%7D~1dynamic~1export-route~1%7Buid%7D/delete.md) ## Update a VPN export route - [PUT /v2/cluster/{clusterFQDN}/vpn/{networkName}/dynamic/export-route/{uid}](https://apidocs.trustgrid.io/virtual-network/paths/~1v2~1cluster~1%7Bclusterfqdn%7D~1vpn~1%7Bnetworkname%7D~1dynamic~1export-route~1%7Buid%7D/put.md) ## Get a VPN's dynamic import routes - [GET /v2/cluster/{clusterFQDN}/vpn/{networkName}/dynamic/import-route](https://apidocs.trustgrid.io/virtual-network/paths/~1v2~1cluster~1%7Bclusterfqdn%7D~1vpn~1%7Bnetworkname%7D~1dynamic~1import-route/get.md) ## Create a VPN import route - [POST /v2/cluster/{clusterFQDN}/vpn/{networkName}/dynamic/import-route](https://apidocs.trustgrid.io/virtual-network/paths/~1v2~1cluster~1%7Bclusterfqdn%7D~1vpn~1%7Bnetworkname%7D~1dynamic~1import-route/post.md) ## Delete a VPN import route - [DELETE /v2/cluster/{clusterFQDN}/vpn/{networkName}/dynamic/import-route/{uid}](https://apidocs.trustgrid.io/virtual-network/paths/~1v2~1cluster~1%7Bclusterfqdn%7D~1vpn~1%7Bnetworkname%7D~1dynamic~1import-route~1%7Buid%7D/delete.md) ## Update a VPN import route - [PUT /v2/cluster/{clusterFQDN}/vpn/{networkName}/dynamic/import-route/{uid}](https://apidocs.trustgrid.io/virtual-network/paths/~1v2~1cluster~1%7Bclusterfqdn%7D~1vpn~1%7Bnetworkname%7D~1dynamic~1import-route~1%7Buid%7D/put.md) ## Get a VPN's interfaces - [GET /v2/cluster/{clusterFQDN}/vpn/{networkName}/interface](https://apidocs.trustgrid.io/virtual-network/paths/~1v2~1cluster~1%7Bclusterfqdn%7D~1vpn~1%7Bnetworkname%7D~1interface/get.md) ## Create a VPN interface - [POST /v2/cluster/{clusterFQDN}/vpn/{networkName}/interface](https://apidocs.trustgrid.io/virtual-network/paths/~1v2~1cluster~1%7Bclusterfqdn%7D~1vpn~1%7Bnetworkname%7D~1interface/post.md) ## Delete a VPN interface - [DELETE /v2/cluster/{clusterFQDN}/vpn/{networkName}/interface/{interfaceName}](https://apidocs.trustgrid.io/virtual-network/paths/~1v2~1cluster~1%7Bclusterfqdn%7D~1vpn~1%7Bnetworkname%7D~1interface~1%7Binterfacename%7D/delete.md) ## Update a VPN interface - [PUT /v2/cluster/{clusterFQDN}/vpn/{networkName}/interface/{interfaceName}](https://apidocs.trustgrid.io/virtual-network/paths/~1v2~1cluster~1%7Bclusterfqdn%7D~1vpn~1%7Bnetworkname%7D~1interface~1%7Binterfacename%7D/put.md) ## Get a VPN's routes - [GET /v2/cluster/{clusterFQDN}/vpn/{networkName}/route](https://apidocs.trustgrid.io/virtual-network/paths/~1v2~1cluster~1%7Bclusterfqdn%7D~1vpn~1%7Bnetworkname%7D~1route/get.md) ## Create a VPN route - [POST /v2/cluster/{clusterFQDN}/vpn/{networkName}/route](https://apidocs.trustgrid.io/virtual-network/paths/~1v2~1cluster~1%7Bclusterfqdn%7D~1vpn~1%7Bnetworkname%7D~1route/post.md) ## Delete a VPN route - [DELETE /v2/cluster/{clusterFQDN}/vpn/{networkName}/route/{uid}](https://apidocs.trustgrid.io/virtual-network/paths/~1v2~1cluster~1%7Bclusterfqdn%7D~1vpn~1%7Bnetworkname%7D~1route~1%7Buid%7D/delete.md) ## Update a VPN route - [PUT /v2/cluster/{clusterFQDN}/vpn/{networkName}/route/{uid}](https://apidocs.trustgrid.io/virtual-network/paths/~1v2~1cluster~1%7Bclusterfqdn%7D~1vpn~1%7Bnetworkname%7D~1route~1%7Buid%7D/put.md) ## Get a VPN's services - [GET /v2/cluster/{clusterFQDN}/vpn/{networkName}/service](https://apidocs.trustgrid.io/virtual-network/paths/~1v2~1cluster~1%7Bclusterfqdn%7D~1vpn~1%7Bnetworkname%7D~1service/get.md) ## Create a VPN Service - [POST /v2/cluster/{clusterFQDN}/vpn/{networkName}/service](https://apidocs.trustgrid.io/virtual-network/paths/~1v2~1cluster~1%7Bclusterfqdn%7D~1vpn~1%7Bnetworkname%7D~1service/post.md) ## Delete a Service - [DELETE /v2/cluster/{clusterFQDN}/vpn/{networkName}/service/{uid}](https://apidocs.trustgrid.io/virtual-network/paths/~1v2~1cluster~1%7Bclusterfqdn%7D~1vpn~1%7Bnetworkname%7D~1service~1%7Buid%7D/delete.md) ## Update a Service - [PUT /v2/cluster/{clusterFQDN}/vpn/{networkName}/service/{uid}](https://apidocs.trustgrid.io/virtual-network/paths/~1v2~1cluster~1%7Bclusterfqdn%7D~1vpn~1%7Bnetworkname%7D~1service~1%7Buid%7D/put.md) ## List virtual networks - [GET /v2/domain/{domainName}/network](https://apidocs.trustgrid.io/virtual-network/paths/~1v2~1domain~1%7Bdomainname%7D~1network/get.md): Requires virtual-networks::read permission. ## Create a virtual network network - [POST /v2/domain/{domainName}/network](https://apidocs.trustgrid.io/virtual-network/paths/~1v2~1domain~1%7Bdomainname%7D~1network/post.md): Requires virtual-networks::modify permission. ## Delete a virtual network - this change is not staged and will immediately affect the domain - [DELETE /v2/domain/{domainName}/network/{networkName}](https://apidocs.trustgrid.io/virtual-network/paths/~1v2~1domain~1%7Bdomainname%7D~1network~1%7Bnetworkname%7D/delete.md): Requires virtual-networks::modify permission. ## List a virtual network's access policies - [GET /v2/domain/{domainName}/network/{networkName}/access-policy](https://apidocs.trustgrid.io/virtual-network/paths/~1v2~1domain~1%7Bdomainname%7D~1network~1%7Bnetworkname%7D~1access-policy/get.md): Requires virtual-networks::read permission. ## Create a network access policy - [POST /v2/domain/{domainName}/network/{networkName}/access-policy](https://apidocs.trustgrid.io/virtual-network/paths/~1v2~1domain~1%7Bdomainname%7D~1network~1%7Bnetworkname%7D~1access-policy/post.md): Requires virtual-networks::modify permission. ## Delete a network access policy - [DELETE /v2/domain/{domainName}/network/{networkName}/access-policy/{accessPolicyID}](https://apidocs.trustgrid.io/virtual-network/paths/~1v2~1domain~1%7Bdomainname%7D~1network~1%7Bnetworkname%7D~1access-policy~1%7Baccesspolicyid%7D/delete.md): Requires virtual-networks::modify permission. ## Update a network access policy - [PUT /v2/domain/{domainName}/network/{networkName}/access-policy/{accessPolicyID}](https://apidocs.trustgrid.io/virtual-network/paths/~1v2~1domain~1%7Bdomainname%7D~1network~1%7Bnetworkname%7D~1access-policy~1%7Baccesspolicyid%7D/put.md): Requires virtual-networks::modify permission. ## List a network's auth groups - [GET /v2/domain/{domainName}/network/{networkName}/auth-group](https://apidocs.trustgrid.io/virtual-network/paths/~1v2~1domain~1%7Bdomainname%7D~1network~1%7Bnetworkname%7D~1auth-group/get.md): Requires virtual-networks::read permission. ## Create a network auth group - [POST /v2/domain/{domainName}/network/{networkName}/auth-group](https://apidocs.trustgrid.io/virtual-network/paths/~1v2~1domain~1%7Bdomainname%7D~1network~1%7Bnetworkname%7D~1auth-group/post.md): Requires virtual-networks::modify permission. ## Delete a network auth group - [DELETE /v2/domain/{domainName}/network/{networkName}/auth-group/{groupName}](https://apidocs.trustgrid.io/virtual-network/paths/~1v2~1domain~1%7Bdomainname%7D~1network~1%7Bnetworkname%7D~1auth-group~1%7Bgroupname%7D/delete.md): Requires virtual-networks::modify permission. ## List a network auth group's members - [GET /v2/domain/{domainName}/network/{networkName}/auth-group/{groupName}](https://apidocs.trustgrid.io/virtual-network/paths/~1v2~1domain~1%7Bdomainname%7D~1network~1%7Bnetworkname%7D~1auth-group~1%7Bgroupname%7D/get.md): Requires virtual-networks::read permission. ## Add a network auth group member - [POST /v2/domain/{domainName}/network/{networkName}/auth-group/{groupName}](https://apidocs.trustgrid.io/virtual-network/paths/~1v2~1domain~1%7Bdomainname%7D~1network~1%7Bnetworkname%7D~1auth-group~1%7Bgroupname%7D/post.md): Requires virtual-networks::modify permission. ## Update a network auth group - [PUT /v2/domain/{domainName}/network/{networkName}/auth-group/{groupName}](https://apidocs.trustgrid.io/virtual-network/paths/~1v2~1domain~1%7Bdomainname%7D~1network~1%7Bnetworkname%7D~1auth-group~1%7Bgroupname%7D/put.md): Requires virtual-networks::modify permission. ## Remove a network auth group member - [DELETE /v2/domain/{domainName}/network/{networkName}/auth-group/{groupName}/{memberID}](https://apidocs.trustgrid.io/virtual-network/paths/~1v2~1domain~1%7Bdomainname%7D~1network~1%7Bnetworkname%7D~1auth-group~1%7Bgroupname%7D~1%7Bmemberid%7D/delete.md): Requires virtual-networks::modify permission. ## Update a membership - [PUT /v2/domain/{domainName}/network/{networkName}/auth-group/{groupName}/{memberID}](https://apidocs.trustgrid.io/virtual-network/paths/~1v2~1domain~1%7Bdomainname%7D~1network~1%7Bnetworkname%7D~1auth-group~1%7Bgroupname%7D~1%7Bmemberid%7D/put.md): Requires virtual-networks::modify permission. ## List staged changes - [GET /v2/domain/{domainName}/network/{networkName}/change](https://apidocs.trustgrid.io/virtual-network/paths/~1v2~1domain~1%7Bdomainname%7D~1network~1%7Bnetworkname%7D~1change/get.md): Requires virtual-networks::read permission. ## Commit staged changes - [POST /v2/domain/{domainName}/network/{networkName}/change/commit](https://apidocs.trustgrid.io/virtual-network/paths/~1v2~1domain~1%7Bdomainname%7D~1network~1%7Bnetworkname%7D~1change~1commit/post.md): Requires virtual-networks::modify permission. ## List validation errors for staged changes - [GET /v2/domain/{domainName}/network/{networkName}/change/validate](https://apidocs.trustgrid.io/virtual-network/paths/~1v2~1domain~1%7Bdomainname%7D~1network~1%7Bnetworkname%7D~1change~1validate/get.md): Requires virtual-networks::read permission. ## Revert a staged change. If the item is newly added and not committed, the item will be deleted along with any associated changes. - [DELETE /v2/domain/{domainName}/network/{networkName}/change/{changeID}](https://apidocs.trustgrid.io/virtual-network/paths/~1v2~1domain~1%7Bdomainname%7D~1network~1%7Bnetworkname%7D~1change~1%7Bchangeid%7D/delete.md): Requires virtual-networks::modify permission. ## Get a network's DNS configuration - [GET /v2/domain/{domainName}/network/{networkName}/dns](https://apidocs.trustgrid.io/virtual-network/paths/~1v2~1domain~1%7Bdomainname%7D~1network~1%7Bnetworkname%7D~1dns/get.md): Requires virtual-networks::read permission. ## Update a network's DNS configuration - [PUT /v2/domain/{domainName}/network/{networkName}/dns](https://apidocs.trustgrid.io/virtual-network/paths/~1v2~1domain~1%7Bdomainname%7D~1network~1%7Bnetworkname%7D~1dns/put.md): Requires virtual-networks::modify permission. ## List a network's DNS zones - [GET /v2/domain/{domainName}/network/{networkName}/dns-zone](https://apidocs.trustgrid.io/virtual-network/paths/~1v2~1domain~1%7Bdomainname%7D~1network~1%7Bnetworkname%7D~1dns-zone/get.md): Requires virtual-networks::read permission. ## Create a DNS zone - [POST /v2/domain/{domainName}/network/{networkName}/dns-zone](https://apidocs.trustgrid.io/virtual-network/paths/~1v2~1domain~1%7Bdomainname%7D~1network~1%7Bnetworkname%7D~1dns-zone/post.md): Requires virtual-networks::modify permission. ## Delete a DNS zone - [DELETE /v2/domain/{domainName}/network/{networkName}/dns-zone/{zoneName}](https://apidocs.trustgrid.io/virtual-network/paths/~1v2~1domain~1%7Bdomainname%7D~1network~1%7Bnetworkname%7D~1dns-zone~1%7Bzonename%7D/delete.md): Requires virtual-networks::modify permission. ## Update a DNS zone - [PUT /v2/domain/{domainName}/network/{networkName}/dns-zone/{zoneName}](https://apidocs.trustgrid.io/virtual-network/paths/~1v2~1domain~1%7Bdomainname%7D~1network~1%7Bnetworkname%7D~1dns-zone~1%7Bzonename%7D/put.md): Requires virtual-networks::modify permission. ## List a network zone's DNS records - [GET /v2/domain/{domainName}/network/{networkName}/dns-zone/{zoneName}/dns-record](https://apidocs.trustgrid.io/virtual-network/paths/~1v2~1domain~1%7Bdomainname%7D~1network~1%7Bnetworkname%7D~1dns-zone~1%7Bzonename%7D~1dns-record/get.md): Requires virtual-networks::read permission. ## Create a DNS record - [POST /v2/domain/{domainName}/network/{networkName}/dns-zone/{zoneName}/dns-record](https://apidocs.trustgrid.io/virtual-network/paths/~1v2~1domain~1%7Bdomainname%7D~1network~1%7Bnetworkname%7D~1dns-zone~1%7Bzonename%7D~1dns-record/post.md): Requires virtual-networks::modify permission. ## Delete a DNS record - [DELETE /v2/domain/{domainName}/network/{networkName}/dns-zone/{zoneName}/dns-record/{recordName}/{recordType}](https://apidocs.trustgrid.io/virtual-network/paths/~1v2~1domain~1%7Bdomainname%7D~1network~1%7Bnetworkname%7D~1dns-zone~1%7Bzonename%7D~1dns-record~1%7Brecordname%7D~1%7Brecordtype%7D/delete.md): Requires virtual-networks::modify permission. ## Update a DNS record - [PUT /v2/domain/{domainName}/network/{networkName}/dns-zone/{zoneName}/dns-record/{recordName}/{recordType}](https://apidocs.trustgrid.io/virtual-network/paths/~1v2~1domain~1%7Bdomainname%7D~1network~1%7Bnetworkname%7D~1dns-zone~1%7Bzonename%7D~1dns-record~1%7Brecordname%7D~1%7Brecordtype%7D/put.md): Requires virtual-networks::modify permission. ## List a network's groups - [GET /v2/domain/{domainName}/network/{networkName}/network-group](https://apidocs.trustgrid.io/virtual-network/paths/~1v2~1domain~1%7Bdomainname%7D~1network~1%7Bnetworkname%7D~1network-group/get.md): Requires virtual-networks::read permission. ## Create a network group - [POST /v2/domain/{domainName}/network/{networkName}/network-group](https://apidocs.trustgrid.io/virtual-network/paths/~1v2~1domain~1%7Bdomainname%7D~1network~1%7Bnetworkname%7D~1network-group/post.md): Requires virtual-networks::modify permission. ## Delete a network group - [DELETE /v2/domain/{domainName}/network/{networkName}/network-group/{groupName}](https://apidocs.trustgrid.io/virtual-network/paths/~1v2~1domain~1%7Bdomainname%7D~1network~1%7Bnetworkname%7D~1network-group~1%7Bgroupname%7D/delete.md): Requires virtual-networks::modify permission. ## List a network's group memberships - [GET /v2/domain/{domainName}/network/{networkName}/network-group/{groupName}](https://apidocs.trustgrid.io/virtual-network/paths/~1v2~1domain~1%7Bdomainname%7D~1network~1%7Bnetworkname%7D~1network-group~1%7Bgroupname%7D/get.md): Requires virtual-networks::read permission. ## Update a network group - [PUT /v2/domain/{domainName}/network/{networkName}/network-group/{groupName}](https://apidocs.trustgrid.io/virtual-network/paths/~1v2~1domain~1%7Bdomainname%7D~1network~1%7Bnetworkname%7D~1network-group~1%7Bgroupname%7D/put.md): Requires virtual-networks::modify permission. ## Remove a network object from a network group - [DELETE /v2/domain/{domainName}/network/{networkName}/network-group/{groupName}/{objectName}](https://apidocs.trustgrid.io/virtual-network/paths/~1v2~1domain~1%7Bdomainname%7D~1network~1%7Bnetworkname%7D~1network-group~1%7Bgroupname%7D~1%7Bobjectname%7D/delete.md): Requires virtual-networks::modify permission. ## Add a network object to a network group (represented by a network group membership - [POST /v2/domain/{domainName}/network/{networkName}/network-group/{groupName}/{objectName}](https://apidocs.trustgrid.io/virtual-network/paths/~1v2~1domain~1%7Bdomainname%7D~1network~1%7Bnetworkname%7D~1network-group~1%7Bgroupname%7D~1%7Bobjectname%7D/post.md): Requires virtual-networks::modify permission. ## List a network's objects - [GET /v2/domain/{domainName}/network/{networkName}/network-object](https://apidocs.trustgrid.io/virtual-network/paths/~1v2~1domain~1%7Bdomainname%7D~1network~1%7Bnetworkname%7D~1network-object/get.md): Requires virtual-networks::read permission. ## Create a network object - [POST /v2/domain/{domainName}/network/{networkName}/network-object](https://apidocs.trustgrid.io/virtual-network/paths/~1v2~1domain~1%7Bdomainname%7D~1network~1%7Bnetworkname%7D~1network-object/post.md): Requires virtual-networks::modify permission. ## Delete a network object - [DELETE /v2/domain/{domainName}/network/{networkName}/network-object/{objectName}](https://apidocs.trustgrid.io/virtual-network/paths/~1v2~1domain~1%7Bdomainname%7D~1network~1%7Bnetworkname%7D~1network-object~1%7Bobjectname%7D/delete.md): Requires virtual-networks::modify permission. ## Update a network object - [PUT /v2/domain/{domainName}/network/{networkName}/network-object/{objectName}](https://apidocs.trustgrid.io/virtual-network/paths/~1v2~1domain~1%7Bdomainname%7D~1network~1%7Bnetworkname%7D~1network-object~1%7Bobjectname%7D/put.md): Requires virtual-networks::modify permission. ## List a network's port forwardings - [GET /v2/domain/{domainName}/network/{networkName}/port-forwarding](https://apidocs.trustgrid.io/virtual-network/paths/~1v2~1domain~1%7Bdomainname%7D~1network~1%7Bnetworkname%7D~1port-forwarding/get.md): Requires virtual-networks::read permission. ## Create a port forwarding - [POST /v2/domain/{domainName}/network/{networkName}/port-forwarding](https://apidocs.trustgrid.io/virtual-network/paths/~1v2~1domain~1%7Bdomainname%7D~1network~1%7Bnetworkname%7D~1port-forwarding/post.md): Requires virtual-networks::modify permission. ## Get a port forwarding - [DELETE /v2/domain/{domainName}/network/{networkName}/port-forwarding/{portForwardingID}](https://apidocs.trustgrid.io/virtual-network/paths/~1v2~1domain~1%7Bdomainname%7D~1network~1%7Bnetworkname%7D~1port-forwarding~1%7Bportforwardingid%7D/delete.md): Requires virtual-networks::read permission. ## Update a port forwarding - [PUT /v2/domain/{domainName}/network/{networkName}/port-forwarding/{portForwardingID}](https://apidocs.trustgrid.io/virtual-network/paths/~1v2~1domain~1%7Bdomainname%7D~1network~1%7Bnetworkname%7D~1port-forwarding~1%7Bportforwardingid%7D/put.md): Requires virtual-networks::modify permission. ## List a network's routes - [GET /v2/domain/{domainName}/network/{networkName}/route](https://apidocs.trustgrid.io/virtual-network/paths/~1v2~1domain~1%7Bdomainname%7D~1network~1%7Bnetworkname%7D~1route/get.md): Requires virtual-networks::read permission. ## Create a network route - [POST /v2/domain/{domainName}/network/{networkName}/route](https://apidocs.trustgrid.io/virtual-network/paths/~1v2~1domain~1%7Bdomainname%7D~1network~1%7Bnetworkname%7D~1route/post.md): Requires virtual-networks::modify permission. ## Delete a network route - [DELETE /v2/domain/{domainName}/network/{networkName}/route/{routeID}](https://apidocs.trustgrid.io/virtual-network/paths/~1v2~1domain~1%7Bdomainname%7D~1network~1%7Bnetworkname%7D~1route~1%7Brouteid%7D/delete.md): Requires virtual-networks::modify permission. ## Update a network route - [PUT /v2/domain/{domainName}/network/{networkName}/route/{routeID}](https://apidocs.trustgrid.io/virtual-network/paths/~1v2~1domain~1%7Bdomainname%7D~1network~1%7Bnetworkname%7D~1route~1%7Brouteid%7D/put.md): Requires virtual-networks::modify permission. ## Returns all the VPN networks - [GET /v2/node/{nodeID}/vpn](https://apidocs.trustgrid.io/virtual-network/paths/~1v2~1node~1%7Bnodeid%7D~1vpn/get.md) ## Attach a VPN network - [POST /v2/node/{nodeID}/vpn](https://apidocs.trustgrid.io/virtual-network/paths/~1v2~1node~1%7Bnodeid%7D~1vpn/post.md) ## Delete a VPN network - [DELETE /v2/node/{nodeID}/vpn/{networkName}](https://apidocs.trustgrid.io/virtual-network/paths/~1v2~1node~1%7Bnodeid%7D~1vpn~1%7Bnetworkname%7D/delete.md) ## Get a VPN network - [GET /v2/node/{nodeID}/vpn/{networkName}](https://apidocs.trustgrid.io/virtual-network/paths/~1v2~1node~1%7Bnodeid%7D~1vpn~1%7Bnetworkname%7D/get.md) ## Update a VPN network - [PUT /v2/node/{nodeID}/vpn/{networkName}](https://apidocs.trustgrid.io/virtual-network/paths/~1v2~1node~1%7Bnodeid%7D~1vpn~1%7Bnetworkname%7D/put.md) ## Delete a VPN DNS configuration - [DELETE /v2/node/{nodeID}/vpn/{networkName}/dns](https://apidocs.trustgrid.io/virtual-network/paths/~1v2~1node~1%7Bnodeid%7D~1vpn~1%7Bnetworkname%7D~1dns/delete.md) ## Get a VPN's DNS configuration - [GET /v2/node/{nodeID}/vpn/{networkName}/dns](https://apidocs.trustgrid.io/virtual-network/paths/~1v2~1node~1%7Bnodeid%7D~1vpn~1%7Bnetworkname%7D~1dns/get.md) ## Create a VPN DNS configuration - [POST /v2/node/{nodeID}/vpn/{networkName}/dns](https://apidocs.trustgrid.io/virtual-network/paths/~1v2~1node~1%7Bnodeid%7D~1vpn~1%7Bnetworkname%7D~1dns/post.md) ## Update a VPN DNS configuration - [PUT /v2/node/{nodeID}/vpn/{networkName}/dns](https://apidocs.trustgrid.io/virtual-network/paths/~1v2~1node~1%7Bnodeid%7D~1vpn~1%7Bnetworkname%7D~1dns/put.md) ## Get a VPN's dynamic export routes - [GET /v2/node/{nodeID}/vpn/{networkName}/dynamic/export-route](https://apidocs.trustgrid.io/virtual-network/paths/~1v2~1node~1%7Bnodeid%7D~1vpn~1%7Bnetworkname%7D~1dynamic~1export-route/get.md) ## Create a VPN export route - [POST /v2/node/{nodeID}/vpn/{networkName}/dynamic/export-route](https://apidocs.trustgrid.io/virtual-network/paths/~1v2~1node~1%7Bnodeid%7D~1vpn~1%7Bnetworkname%7D~1dynamic~1export-route/post.md) ## Delete a VPN export route - [DELETE /v2/node/{nodeID}/vpn/{networkName}/dynamic/export-route/{uid}](https://apidocs.trustgrid.io/virtual-network/paths/~1v2~1node~1%7Bnodeid%7D~1vpn~1%7Bnetworkname%7D~1dynamic~1export-route~1%7Buid%7D/delete.md) ## Update a VPN export route - [PUT /v2/node/{nodeID}/vpn/{networkName}/dynamic/export-route/{uid}](https://apidocs.trustgrid.io/virtual-network/paths/~1v2~1node~1%7Bnodeid%7D~1vpn~1%7Bnetworkname%7D~1dynamic~1export-route~1%7Buid%7D/put.md) ## Get a VPN's dynamic import routes - [GET /v2/node/{nodeID}/vpn/{networkName}/dynamic/import-route](https://apidocs.trustgrid.io/virtual-network/paths/~1v2~1node~1%7Bnodeid%7D~1vpn~1%7Bnetworkname%7D~1dynamic~1import-route/get.md) ## Create a VPN import route - [POST /v2/node/{nodeID}/vpn/{networkName}/dynamic/import-route](https://apidocs.trustgrid.io/virtual-network/paths/~1v2~1node~1%7Bnodeid%7D~1vpn~1%7Bnetworkname%7D~1dynamic~1import-route/post.md) ## Delete a VPN import route - [DELETE /v2/node/{nodeID}/vpn/{networkName}/dynamic/import-route/{uid}](https://apidocs.trustgrid.io/virtual-network/paths/~1v2~1node~1%7Bnodeid%7D~1vpn~1%7Bnetworkname%7D~1dynamic~1import-route~1%7Buid%7D/delete.md) ## Update a VPN import route - [PUT /v2/node/{nodeID}/vpn/{networkName}/dynamic/import-route/{uid}](https://apidocs.trustgrid.io/virtual-network/paths/~1v2~1node~1%7Bnodeid%7D~1vpn~1%7Bnetworkname%7D~1dynamic~1import-route~1%7Buid%7D/put.md) ## Get a VPN's interfaces - [GET /v2/node/{nodeID}/vpn/{networkName}/interface](https://apidocs.trustgrid.io/virtual-network/paths/~1v2~1node~1%7Bnodeid%7D~1vpn~1%7Bnetworkname%7D~1interface/get.md) ## Create a VPN interface - [POST /v2/node/{nodeID}/vpn/{networkName}/interface](https://apidocs.trustgrid.io/virtual-network/paths/~1v2~1node~1%7Bnodeid%7D~1vpn~1%7Bnetworkname%7D~1interface/post.md) ## Delete a VPN interface - [DELETE /v2/node/{nodeID}/vpn/{networkName}/interface/{interfaceName}](https://apidocs.trustgrid.io/virtual-network/paths/~1v2~1node~1%7Bnodeid%7D~1vpn~1%7Bnetworkname%7D~1interface~1%7Binterfacename%7D/delete.md) ## Update a VPN interface - [PUT /v2/node/{nodeID}/vpn/{networkName}/interface/{interfaceName}](https://apidocs.trustgrid.io/virtual-network/paths/~1v2~1node~1%7Bnodeid%7D~1vpn~1%7Bnetworkname%7D~1interface~1%7Binterfacename%7D/put.md) ## Get a VPN's routes - [GET /v2/node/{nodeID}/vpn/{networkName}/route](https://apidocs.trustgrid.io/virtual-network/paths/~1v2~1node~1%7Bnodeid%7D~1vpn~1%7Bnetworkname%7D~1route/get.md) ## Create a VPN route - [POST /v2/node/{nodeID}/vpn/{networkName}/route](https://apidocs.trustgrid.io/virtual-network/paths/~1v2~1node~1%7Bnodeid%7D~1vpn~1%7Bnetworkname%7D~1route/post.md) ## Delete a VPN route - [DELETE /v2/node/{nodeID}/vpn/{networkName}/route/{uid}](https://apidocs.trustgrid.io/virtual-network/paths/~1v2~1node~1%7Bnodeid%7D~1vpn~1%7Bnetworkname%7D~1route~1%7Buid%7D/delete.md) ## Update a VPN route - [PUT /v2/node/{nodeID}/vpn/{networkName}/route/{uid}](https://apidocs.trustgrid.io/virtual-network/paths/~1v2~1node~1%7Bnodeid%7D~1vpn~1%7Bnetworkname%7D~1route~1%7Buid%7D/put.md) ## Get a VPN's services - [GET /v2/node/{nodeID}/vpn/{networkName}/service](https://apidocs.trustgrid.io/virtual-network/paths/~1v2~1node~1%7Bnodeid%7D~1vpn~1%7Bnetworkname%7D~1service/get.md): Requires node-vpn::read permission. ## Create a VPN Service - [POST /v2/node/{nodeID}/vpn/{networkName}/service](https://apidocs.trustgrid.io/virtual-network/paths/~1v2~1node~1%7Bnodeid%7D~1vpn~1%7Bnetworkname%7D~1service/post.md): Requires node-vpn::modify permission. ## Delete a VPN Service - [DELETE /v2/node/{nodeID}/vpn/{networkName}/service/{uid}](https://apidocs.trustgrid.io/virtual-network/paths/~1v2~1node~1%7Bnodeid%7D~1vpn~1%7Bnetworkname%7D~1service~1%7Buid%7D/delete.md): Requires node-vpn::modify permission. ## Update a Service - [PUT /v2/node/{nodeID}/vpn/{networkName}/service/{uid}](https://apidocs.trustgrid.io/virtual-network/paths/~1v2~1node~1%7Bnodeid%7D~1vpn~1%7Bnetworkname%7D~1service~1%7Buid%7D/put.md)