diff --git a/xos/core/models/__init__.py b/xos/core/models/__init__.py
index 5b0ad4b..371c73a 100644
--- a/xos/core/models/__init__.py
+++ b/xos/core/models/__init__.py
@@ -1,8 +1,10 @@
 from .plcorebase import PlCoreBase,PlCoreBaseManager,PlCoreBaseDeletionManager,PlModelMixIn
 from .project import Project
 from .singletonmodel import SingletonModel
+from .xosmodel import XOS
 from .service import Service, Tenant, TenantWithContainer, CoarseTenant, ServicePrivilege, TenantRoot, TenantRootPrivilege, TenantRootRole, TenantPrivilege, TenantRole, Subscriber, Provider
 from .service import ServiceAttribute, TenantAttribute, ServiceRole
+from .service import ServiceController, ServiceControllerResource
 from .tag import Tag
 from .role import Role
 from .site import Site, Deployment, DeploymentRole, DeploymentPrivilege, Controller, ControllerRole, ControllerSite, SiteDeployment,Diag
diff --git a/xos/core/models/service.py b/xos/core/models/service.py
index 8373bdb..7b0ef4f 100644
--- a/xos/core/models/service.py
+++ b/xos/core/models/service.py
@@ -67,8 +67,7 @@
 class ServiceController(PlCoreBase):
     xos = models.ForeignKey(XOS, related_name='servicecontrolers', help_text="Pointer to XOS", default=get_xos)
     name = StrippedCharField(max_length=30, help_text="Service Name")
-    models_url = models.URLField(max_length=1024, help_text="URL of models.py")
-    admin_url = models.URLField(max_length=1024, help_text="URL of admin.py")
+    base_url = StrippedCharField(max_length=1024, help_text="Base URL, allows use of relative URLs for resources", null=True, blank=True)
 
 class ServiceControllerResource(PlCoreBase):
     KIND_CHOICES = (('models', 'Models'),
@@ -89,7 +88,7 @@
     name = StrippedCharField(max_length=30, help_text="Object Name")
     kind = StrippedCharField(choices=KIND_CHOICES, max_length=30)
     format = StrippedCharField(choices=FORMAT_CHOICES, max_length=30)
-    url = models.URLField(max_length=1024, help_text="URL of resource")
+    url = StrippedCharField(max_length=1024, help_text="URL of resource", null=True, blank=True)
 
 class Service(PlCoreBase, AttributeMixin):
     # when subclassing a service, redefine KIND to describe the new service
