diff --git a/cps-rest/docs/api/swagger/openapi.yml b/cps-rest/docs/api/swagger/openapi.yml
index 2eed7e6..ff7cdf8 100755
--- a/cps-rest/docs/api/swagger/openapi.yml
+++ b/cps-rest/docs/api/swagger/openapi.yml
@@ -12,7 +12,7 @@
   /v1/dataspaces/{dataspace-name}/:
     delete:
       tags:
-        - cps-rest
+        - cps-admin
       summary: Delete the given dataspace
       operationId: deleteDataspace
       parameters:
@@ -41,7 +41,7 @@
   /v1/dataspaces/{dataspace-name}/anchors:
     get:
       tags:
-        - cps-rest
+        - cps-admin
       summary: Read all anchors, given a dataspace
       operationId: getAnchors
       parameters:
@@ -74,7 +74,7 @@
           content: {}
     post:
       tags:
-        - cps-rest
+        - cps-admin
       summary: Create a new anchor in the given dataspace
       operationId: createAnchor
       parameters:
@@ -111,7 +111,7 @@
   /v1/dataspaces/{dataspace-name}/anchors/{anchor-name}:
     get:
       tags:
-        - cps-rest
+        - cps-admin
       summary: Read an anchor given a anchor and a dataspace
       operationId: getAnchor
       parameters:
@@ -145,7 +145,7 @@
           content: {}
     delete:
       tags:
-        - cps-rest
+        - cps-admin
       summary: Delete an anchor given a anchor and a dataspace
       operationId: deleteAnchor
       parameters:
@@ -180,7 +180,7 @@
   /v1/dataspaces/{dataspace-name}/anchors/{anchor-name}/nodes:
     get:
       tags:
-        - cps-rest
+        - cps-data
       summary: Get a node given an anchor for the given dataspace
       operationId: getNodeByDataspaceAndAnchor
       parameters:
@@ -213,49 +213,10 @@
           description: Not Found
           content: {}
       x-codegen-request-body-name: xpath
-  /v1/dataspaces/{dataspace-name}/modules:
-    get:
-      tags:
-        - cps-rest
-      summary: Read all yang modules in the store
-      operationId: getModule
-      parameters:
-        - name: dataspace-name
-          in: path
-          description: dataspace-name
-          required: true
-          schema:
-            type: string
-        - name: namespace-name
-          in: query
-          description: namespace-name
-          schema:
-            type: string
-        - name: revision
-          in: query
-          description: revision
-          schema:
-            type: string
-      responses:
-        200:
-          description: OK
-          content:
-            application/json:
-              schema:
-                type: object
-        401:
-          description: Unauthorized
-          content: {}
-        403:
-          description: Forbidden
-          content: {}
-        404:
-          description: Not Found
-          content: {}
   /v1/dataspaces/{dataspace-name}/nodes:
     get:
       tags:
-        - cps-rest
+        - cps-data
       summary: Get all nodes for a given dataspace using an xpath or schema node identifier
       operationId: getNode
       parameters:
@@ -284,7 +245,7 @@
       x-codegen-request-body-name: requestBody
     post:
       tags:
-        - cps-rest
+        - cps-data
       summary: Create a node for a given anchor for the given dataspace
       operationId: createNode
       parameters:
diff --git a/cps-rest/src/main/java/org/onap/cps/rest/controller/CpsRestController.java b/cps-rest/src/main/java/org/onap/cps/rest/controller/AdminRestController.java
old mode 100755
new mode 100644
similarity index 78%
rename from cps-rest/src/main/java/org/onap/cps/rest/controller/CpsRestController.java
rename to cps-rest/src/main/java/org/onap/cps/rest/controller/AdminRestController.java
index 1802ce7..e2ce367
--- a/cps-rest/src/main/java/org/onap/cps/rest/controller/CpsRestController.java
+++ b/cps-rest/src/main/java/org/onap/cps/rest/controller/AdminRestController.java
@@ -24,16 +24,15 @@
 import javax.validation.Valid;
 import org.modelmapper.ModelMapper;
 import org.onap.cps.api.CpsAdminService;
-import org.onap.cps.rest.api.CpsRestApi;
+import org.onap.cps.rest.api.CpsAdminApi;
 import org.onap.cps.spi.model.Anchor;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.http.HttpStatus;
 import org.springframework.http.ResponseEntity;
 import org.springframework.web.bind.annotation.RestController;
-import org.springframework.web.multipart.MultipartFile;
 
 @RestController
-public class CpsRestController implements CpsRestApi {
+public class AdminRestController implements CpsAdminApi {
 
     @Autowired
     private CpsAdminService cpsAdminService;
@@ -58,11 +57,6 @@
     }
 
     @Override
-    public ResponseEntity<Object> createNode(@Valid final MultipartFile multipartFile, final String dataspaceName) {
-        return null;
-    }
-
-    @Override
     public ResponseEntity<Object> deleteAnchor(final String dataspaceName, final String anchorName) {
         return null;
     }
@@ -83,20 +77,4 @@
         final Collection<Anchor> anchorDetails = cpsAdminService.getAnchors(dataspaceName);
         return new ResponseEntity<>(anchorDetails, HttpStatus.OK);
     }
-
-    @Override
-    public ResponseEntity<Object> getModule(final String dataspaceName, @Valid final String namespaceName,
-        @Valid final String revision) {
-        return null;
-    }
-
-    @Override
-    public ResponseEntity<Object> getNode(final String dataspaceName) {
-        return null;
-    }
-
-    @Override
-    public ResponseEntity<Object> getNodeByDataspaceAndAnchor(final String dataspaceName, final String anchorName) {
-        return null;
-    }
 }
diff --git a/cps-rest/src/main/java/org/onap/cps/rest/controller/DataRestController.java b/cps-rest/src/main/java/org/onap/cps/rest/controller/DataRestController.java
new file mode 100644
index 0000000..c637cc6
--- /dev/null
+++ b/cps-rest/src/main/java/org/onap/cps/rest/controller/DataRestController.java
@@ -0,0 +1,54 @@
+/*
+ * ============LICENSE_START=======================================================
+ *  Copyright (C) 2020 Bell Canada. All rights reserved.
+ *  ================================================================================
+ *  Licensed under the Apache License, Version 2.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.apache.org/licenses/LICENSE-2.0
+ *  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.
+ *
+ *  SPDX-License-Identifier: Apache-2.0
+ *  ============LICENSE_END=========================================================
+ */
+
+package org.onap.cps.rest.controller;
+
+import javax.validation.Valid;
+import org.modelmapper.ModelMapper;
+import org.onap.cps.api.CpsAdminService;
+import org.onap.cps.rest.api.CpsDataApi;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.http.ResponseEntity;
+import org.springframework.web.bind.annotation.RestController;
+import org.springframework.web.multipart.MultipartFile;
+
+@RestController
+public class DataRestController implements CpsDataApi {
+
+    @Autowired
+    private CpsAdminService cpsAdminService;
+
+    @Autowired
+    private ModelMapper modelMapper;
+
+    @Override
+    public ResponseEntity<Object> createNode(@Valid final MultipartFile multipartFile, final String dataspaceName) {
+        return null;
+    }
+
+    @Override
+    public ResponseEntity<Object> getNode(final String dataspaceName) {
+        return null;
+    }
+
+    @Override
+    public ResponseEntity<Object> getNodeByDataspaceAndAnchor(final String dataspaceName, final String anchorName) {
+        return null;
+    }
+}
diff --git a/cps-rest/src/main/java/org/onap/cps/rest/exceptions/CpsRestExceptionHandler.java b/cps-rest/src/main/java/org/onap/cps/rest/exceptions/CpsRestExceptionHandler.java
index 54f3db4..9d7f38a 100644
--- a/cps-rest/src/main/java/org/onap/cps/rest/exceptions/CpsRestExceptionHandler.java
+++ b/cps-rest/src/main/java/org/onap/cps/rest/exceptions/CpsRestExceptionHandler.java
@@ -20,7 +20,8 @@
 package org.onap.cps.rest.exceptions;
 
 import org.apache.commons.lang3.exception.ExceptionUtils;
-import org.onap.cps.rest.controller.CpsRestController;
+import org.onap.cps.rest.controller.AdminRestController;
+import org.onap.cps.rest.controller.DataRestController;
 import org.onap.cps.rest.model.ErrorMessage;
 import org.onap.cps.spi.exceptions.AnchorAlreadyDefinedException;
 import org.onap.cps.spi.exceptions.CpsAdminException;
@@ -34,7 +35,7 @@
 import org.springframework.web.bind.annotation.ExceptionHandler;
 import org.springframework.web.bind.annotation.RestControllerAdvice;
 
-@RestControllerAdvice(assignableTypes = {CpsRestController.class})
+@RestControllerAdvice(assignableTypes = {AdminRestController.class, DataRestController.class})
 public class CpsRestExceptionHandler {
 
     private CpsRestExceptionHandler() {
