diff --git a/apps/openstacknode/app/src/main/java/org/onosproject/openstacknode/web/OpenstackNodeWebResource.java b/apps/openstacknode/app/src/main/java/org/onosproject/openstacknode/web/OpenstackNodeWebResource.java
index 591b1d1..e960d4b 100644
--- a/apps/openstacknode/app/src/main/java/org/onosproject/openstacknode/web/OpenstackNodeWebResource.java
+++ b/apps/openstacknode/app/src/main/java/org/onosproject/openstacknode/web/OpenstackNodeWebResource.java
@@ -44,6 +44,10 @@
 import static com.fasterxml.jackson.databind.SerializationFeature.INDENT_OUTPUT;
 import static javax.ws.rs.core.Response.created;
 
+/**
+ * Handles REST API call of openstack node config.
+ */
+
 @Path("configure")
 public class OpenstackNodeWebResource extends AbstractWebResource {
     private final Logger log = LoggerFactory.getLogger(getClass());
@@ -63,6 +67,14 @@
     @Context
     private UriInfo uriInfo;
 
+    /**
+     * Creates a set of openstack nodes' config from the JSON input stream.
+     *
+     * @param input openstack nodes JSON input stream
+     * @return 201 CREATED if the JSON is correct, 400 BAD_REQUEST if the JSON
+     * is malformed
+     * @onos.rsModel OpenstackNode
+     */
     @POST
     @Consumes(MediaType.APPLICATION_JSON)
     @Produces(MediaType.APPLICATION_JSON)
@@ -83,6 +95,14 @@
         return created(locationBuilder.build()).build();
     }
 
+    /**
+     * Creates a set of openstack nodes' config from the JSON input stream.
+     *
+     * @param input openstack nodes JSON input stream
+     * @return 200 OK with the updated openstack node's config, 400 BAD_REQUEST
+     * if the JSON is malformed
+     * @onos.rsModel OpenstackNode
+     */
     @PUT
     @Consumes(MediaType.APPLICATION_JSON)
     @Produces(MediaType.APPLICATION_JSON)
@@ -103,6 +123,13 @@
         return Response.ok().build();
     }
 
+    /**
+     * Removes a set of openstack nodes' config from the JSON input stream.
+     *
+     * @param input openstack nodes JSON input stream
+     * @return 204 NO_CONTENT, 400 BAD_REQUEST if the JSON is malformed
+     * @onos.rsModel OpenstackNode
+     */
     @DELETE
     @Consumes(MediaType.APPLICATION_JSON)
     @Produces(MediaType.APPLICATION_JSON)
diff --git a/apps/openstacknode/app/src/main/resources/definitions/OpenstackNode.json b/apps/openstacknode/app/src/main/resources/definitions/OpenstackNode.json
new file mode 100644
index 0000000..8ac64e3
--- /dev/null
+++ b/apps/openstacknode/app/src/main/resources/definitions/OpenstackNode.json
@@ -0,0 +1,45 @@
+{
+  "type": "array",
+  "items": {
+    "type": "object",
+    "required": [
+      "hostname",
+      "type",
+      "managementIp",
+      "dataIp",
+      "uplinkPort",
+      "integrationBridge",
+      "vlanPort"
+    ],
+    "properties": {
+      "hostname": {
+        "type": "string",
+        "example": "host1"
+      },
+      "type": {
+        "type": "string",
+        "example": "GATEWAY"
+      },
+      "managementIp": {
+        "type": "string",
+        "example": "10.10.10.1"
+      },
+      "dataIp": {
+        "type": "string",
+        "example": "20.20.20.2"
+      },
+      "uplinkPort": {
+        "type": "string",
+        "example": "2"
+      },
+      "integrationBridge": {
+        "type": "string",
+        "example": "of:0000000000000001"
+      },
+      "vlanPort": {
+        "type": "string",
+        "example": "1"
+      }
+    }
+  }
+}
\ No newline at end of file
