diff --git a/xos/synchronizers/new_base/apiaccessor.py b/xos/synchronizers/new_base/apiaccessor.py
index f855a46..4ffae57 100644
--- a/xos/synchronizers/new_base/apiaccessor.py
+++ b/xos/synchronizers/new_base/apiaccessor.py
@@ -48,5 +48,8 @@
     def is_instance(self, obj, name):
         return name in obj.class_names.split(",")
 
+    def get_content_type_id(self, obj):
+        return obj.self_content_type_id
+
 
 
diff --git a/xos/synchronizers/new_base/djangoaccessor.py b/xos/synchronizers/new_base/djangoaccessor.py
index 759ba2b..b670406 100644
--- a/xos/synchronizers/new_base/djangoaccessor.py
+++ b/xos/synchronizers/new_base/djangoaccessor.py
@@ -7,6 +7,7 @@
 from django.db import connection
 from django.db.models import F, Q
 from django import setup as django_setup # django 1.7
+from django.contrib.contenttypes.models import ContentType
 
 from xos.logger import Logger, logging
 logger = Logger(level=logging.INFO)
@@ -76,4 +77,6 @@
     def is_instance(self, obj, name):
         return isinstance(obj, self.get_model_class(name))
 
+    def get_content_type_id(self, obj):
+        return ContentType.objects.get_for_model(obj)
 
diff --git a/xos/synchronizers/new_base/modelaccessor.py b/xos/synchronizers/new_base/modelaccessor.py
index d4b9ace..765b5d5 100644
--- a/xos/synchronizers/new_base/modelaccessor.py
+++ b/xos/synchronizers/new_base/modelaccessor.py
@@ -73,6 +73,9 @@
         """ returns True if obj is of model type "name" or is a descendant """
         raise Exception("Not Implemented")
 
+    def get_content_type_id(self, obj):
+        raise Exception("Not Implemented")
+
     def journal_object(self, o, operation, msg=None, timestamp=None):
         pass
 
diff --git a/xos/synchronizers/new_base/syncstep.py b/xos/synchronizers/new_base/syncstep.py
index 8b1185c..56ad412 100644
--- a/xos/synchronizers/new_base/syncstep.py
+++ b/xos/synchronizers/new_base/syncstep.py
@@ -3,7 +3,7 @@
 from xos.config import Config
 from xos.logger import Logger, logging
 from synchronizers.new_base.modelaccessor import *
-from synchronizers.base.ansible_helper import run_template
+from synchronizers.new_base.ansible_helper import run_template
 #from synchronizers.new_base.steps import *
 #from synchronizers.new_base.ansible_helper import *
 #from generate.dependency_walker import *
