diff --git a/api/base.py b/api/base.py
index 89269a031ff95ac13e715afec05f2bbc9bbe3273..1634f361aa5015296ddabd0c402c84ed20b3e5e2 100644
--- a/api/base.py
+++ b/api/base.py
@@ -31,7 +31,7 @@ class RequestHandler(webapp2.RequestHandler):
         access_token = self.request.headers.get('Authorization', None)
         drone_secret = self.request.headers.get('X-SciTran-Auth', None)
 
-        site_id = config.get_item('site', '_id')
+        site_id = config.get_item('site', 'id')
         if site_id is None:
             self.abort(503, 'Database not initialized')
 
@@ -121,14 +121,14 @@ class RequestHandler(webapp2.RequestHandler):
 
     def dispatch(self):
         """dispatching and request forwarding"""
-        site_id = config.get_item('site', '_id')
+        site_id = config.get_item('site', 'id')
         target_site = self.get_param('site', site_id)
         if target_site == site_id:
             log.debug('from %s %s %s %s %s' % (self.source_site, self.uid, self.request.method, self.request.path, str(self.request.GET.mixed())))
             return super(RequestHandler, self).dispatch()
         else:
             if not site_id:
-                self.abort(500, 'api site._id is not configured')
+                self.abort(500, 'api site.id is not configured')
             if not config.get_item('site', 'ssl_cert'):
                 self.abort(500, 'api ssl_cert is not configured')
             target = config.db.sites.find_one({'_id': target_site}, ['api_uri'])
diff --git a/api/config.py b/api/config.py
index 969bbf502afa5fbf72158887620a28dc54dd0fa2..6f5130a2f62638f59a42f13de808ae843b04fb1d 100644
--- a/api/config.py
+++ b/api/config.py
@@ -28,7 +28,7 @@ DEFAULT_CONFIG = {
         'drone_secret': None,
     },
     'site': {
-        '_id': 'local',
+        'id': 'local',
         'name': 'Local',
         'url': 'https://localhost/api',
         'central_url': 'https://sdmc.scitran.io/api',
@@ -93,7 +93,7 @@ def initialize_db():
 
     now = datetime.datetime.utcnow()
     db.groups.update_one({'_id': 'unknown'}, {'$setOnInsert': { 'created': now, 'modified': now, 'name': 'Unknown', 'roles': []}}, upsert=True)
-    db.sites.replace_one({'_id': __config['site']['_id']}, {'name': __config['site']['name'], 'site_url': __config['site']['url']}, upsert=True)
+    db.sites.replace_one({'_id': __config['site']['id']}, {'name': __config['site']['name'], 'site_url': __config['site']['url']}, upsert=True)
 
 
 def get_config():
diff --git a/api/core.py b/api/core.py
index 6cbce5d93e3690165688ddbc2d4647d68fcf3f2c..bd5b6299d886f77298287aaee259c00fcc963984 100644
--- a/api/core.py
+++ b/api/core.py
@@ -256,7 +256,7 @@ class Core(base.RequestHandler):
         """Return local and remote sites."""
         projection = ['name', 'onload']
         # TODO onload for local is true
-        site_id = config.site_id()
+        site_id = config.get_item('site', 'id')
         if self.public_request or self.is_true('all'):
             sites = list(config.db.sites.find(None, projection))
         else:
diff --git a/api/handlers/containerhandler.py b/api/handlers/containerhandler.py
index 7b1b9c71f1a5640ed3b8b6258053d1872e202cd9..cbb13d3898d6131ecdfa5a853e979077ca1642fd 100644
--- a/api/handlers/containerhandler.py
+++ b/api/handlers/containerhandler.py
@@ -191,7 +191,7 @@ class ContainerHandler(base.RequestHandler):
         query = {}
         user = {
             '_id': uid,
-            'site': config.site_id()
+            'site': config.get_item('site', 'id')
         }
         try:
             results = permchecker(self.storage.exec_op)('GET', query=query, user=user, projection=projection)
diff --git a/bin/bootstrap.py b/bin/bootstrap.py
index ae03fa58d23abd09ca7f034cc5531e2e07bf48dd..6360181d97ef7931cbffad10ba3af56c622f265e 100755
--- a/bin/bootstrap.py
+++ b/bin/bootstrap.py
@@ -51,7 +51,7 @@ def users(args):
             u['avatars'].setdefault('gravatar', gravatar)
             config.db.users.update_one({'_id': u['_id']}, {'$setOnInsert': u}, upsert=True)
     log.info('bootstrapping groups...')
-    site_id = config.get_item('site', '_id')
+    site_id = config.get_item('site', 'id')
     for g in input_data.get('groups', []):
         log.info('    ' + g['_id'])
         g['created'] = now
diff --git a/sample.config b/sample.config
index d769ca55139d3f7841a67e4722855a5366feb8dc..be4a6154ba00c9191de6657b02eb4dbe5629c3ec 100644
--- a/sample.config
+++ b/sample.config
@@ -12,7 +12,7 @@
 #SCITRAN_CORE_NEWRELIC=none
 #SCITRAN_CORE_DRONE_SECRET=""
 
-#SCITRAN_SITE__ID=""
+#SCITRAN_SITE_ID=""
 #SCITRAN_SITE_NAME=""
 #SCITRAN_SITE_URL=""
 #SCITRAN_SITE_CENTRAL_URL=""