diff --git a/xos/core/admin.py b/xos/core/admin.py
index 2124e96..8910d9c 100644
--- a/xos/core/admin.py
+++ b/xos/core/admin.py
@@ -2172,7 +2172,7 @@
     user_readonly_inlines = []
     inlines = [NetworkParameterInline, ]
     fieldsets = [
-        (None, {'fields': ['name', 'description', 'guaranteed_bandwidth', 'visibility', 'translation', 'access', 'shared_network_name', 'shared_network_id', 'topology_kind', 'controller_kind'],
+        (None, {'fields': ['name', 'description', 'guaranteed_bandwidth', 'visibility', 'translation', 'access', 'shared_network_name', 'shared_network_id', 'topology_kind', 'controller_kind', 'vtn_kind'],
                 'classes':['suit-tab suit-tab-general']}), ]
     suit_form_tabs = (('general', 'Network Template Details'),
                       ('netparams', 'Parameters'))
diff --git a/xos/core/models/network.py b/xos/core/models/network.py
index af3aa0a..d53017f 100644
--- a/xos/core/models/network.py
+++ b/xos/core/models/network.py
@@ -102,6 +102,9 @@
     CONTROLLER_CHOICES = ((None, 'None'), ('onos', 'ONOS'), ('custom', 'Custom'))
     ACCESS_CHOICES = ((None, 'None'), ('indirect', 'Indirect'), ('direct', 'Direct'))
 
+    VTN_KIND_CHOICES = (("PRIVATE", "Private"), ("PUBLIC", "Public"), ("MANAGEMENT_LOCAL", "Management Local"),
+                        ("MANAGEMENT_HOST", "Management Host"), ("VSG", "VSG"), ("ACCESS_AGENT", "Access Agent"))
+
     name = models.CharField(max_length=32)
     description = models.CharField(max_length=1024, blank=True, null=True)
     guaranteed_bandwidth = models.IntegerField(default=0)
@@ -112,6 +115,7 @@
     shared_network_id = models.CharField(null=True, blank=True, max_length=256, help_text="Quantum network")
     topology_kind = models.CharField(null=False, blank=False, max_length=30, choices=TOPOLOGY_CHOICES, default="bigswitch")
     controller_kind = models.CharField(null=True, blank=True, max_length=30, choices=CONTROLLER_CHOICES, default=None)
+    vtn_kind = models.CharField(null=True, blank=True, max_length=30, choices=VTN_KIND_CHOICES, default="PRIVATE")
 
     def __init__(self, *args, **kwargs):
         super(NetworkTemplate, self).__init__(*args, **kwargs)
diff --git a/xos/tosca/custom_types/xos.m4 b/xos/tosca/custom_types/xos.m4
index 4105e05..40027c9 100644
--- a/xos/tosca/custom_types/xos.m4
+++ b/xos/tosca/custom_types/xos.m4
@@ -633,6 +633,10 @@
                 type: string
                 required: false
                 description: The type of access semantics for this network
+            vtn_kind:
+                type: string
+                required: false
+                description: Network kind to pass to VTN
 
     tosca.nodes.network.Network.XOS:
           # Due to bug? in implementation, we have to copy everything from
diff --git a/xos/tosca/custom_types/xos.yaml b/xos/tosca/custom_types/xos.yaml
index a643959..d834fa4 100644
--- a/xos/tosca/custom_types/xos.yaml
+++ b/xos/tosca/custom_types/xos.yaml
@@ -1280,6 +1280,10 @@
                 type: string
                 required: false
                 description: The type of access semantics for this network
+            vtn_kind:
+                type: string
+                required: false
+                description: Network kind to pass to VTN
 
     tosca.nodes.network.Network.XOS:
           # Due to bug? in implementation, we have to copy everything from
diff --git a/xos/tosca/resources/networktemplate.py b/xos/tosca/resources/networktemplate.py
index 3a5ce59..afd604e 100644
--- a/xos/tosca/resources/networktemplate.py
+++ b/xos/tosca/resources/networktemplate.py
@@ -12,7 +12,7 @@
 class XOSNetworkTemplate(XOSResource):
     provides = "tosca.nodes.NetworkTemplate"
     xos_model = NetworkTemplate
-    copyin_props = ["visibility", "translation", "shared_network_name", "shared_network_id", "toplogy_kind", "controller_kind", "access"]
+    copyin_props = ["visibility", "translation", "shared_network_name", "shared_network_id", "toplogy_kind", "controller_kind", "access", "vtn_kind"]
 
     def get_xos_args(self):
         args = super(XOSNetworkTemplate, self).get_xos_args()
