diff --git a/sdncon/stats/models.py b/sdncon/stats/models.py
new file mode 100755
index 0000000..a493475
--- /dev/null
+++ b/sdncon/stats/models.py
@@ -0,0 +1,40 @@
+#
+# Copyright (c) 2013 Big Switch Networks, Inc.
+#
+# Licensed under the Eclipse Public License, Version 1.0 (the
+# "License"); you may not use this file except in compliance with the
+# License. You may obtain a copy of the License at
+#
+#      http://www.eclipse.org/legal/epl-v10.html
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+# implied. See the License for the specific language governing
+# permissions and limitations under the License.
+#
+
+from django.db import models
+"""
+class StatdConfig(models.Model):
+    stat_type = models.CharField(
+        primary_key=True,
+        verbose_name='Stat Type',
+        max_length=64)
+    
+    sampling_period = models.PositiveIntegerField(
+        verbose_name='Sampling Period',
+        default=15)
+    
+    reporting_period = models.PositiveIntegerField(
+        verbose_name='Reporting Period',
+        default=60)
+    
+    class Rest:
+        NAME = 'statd-config'
+        FIELD_INFO = (
+            {'name': 'stat_type', 'rest_name': 'stat-type'},
+            {'name': 'sampling_period', 'rest_name': 'sampling-period'},
+            {'name': 'reporting_period', 'rest_name': 'reporting-period'},
+            )
+"""
\ No newline at end of file
