diff --git a/src/test/cord-api/Framework/restApi.py b/src/test/cord-api/Framework/restApi.py
index 789bb6f..1889f21 100644
--- a/src/test/cord-api/Framework/restApi.py
+++ b/src/test/cord-api/Framework/restApi.py
@@ -154,8 +154,8 @@
 #jsonGetData = test.ApiGet(key)
 print "========="
 #print jsonGetData
-#jsonEdit = test.ApiPut(key,{"c_tag" : "666","s_tag" : "123"},"7")
-jsonO = test.ApiDelete(key,"36")
+jsonEdit = test.ApiPut(key,{"c_tag" : "666","s_tag" : "123"},"30")
+#jsonO = test.ApiDelete(key,"36")
 #jsonResponse = test.ApiPut(key,{"identity":{"name":"My House 22"}},"71")
 #jsonResponse = test.ApiPost(key,{"name":"test-2"})
 #jsonResponse = test.ApiPut(key,{"name":"test1-changed"},"9")
diff --git a/src/test/cord-api/Framework/utils/utils.py b/src/test/cord-api/Framework/utils/utils.py
index 04c94f9..7bedeff 100644
--- a/src/test/cord-api/Framework/utils/utils.py
+++ b/src/test/cord-api/Framework/utils/utils.py
@@ -139,16 +139,13 @@
     @Returns: Returns the value of the Key that was provided
     '''
     def getFieldValueFromDict(self,search_dict, field):
-        print "search_dict", search_dict, "field...", field
         results = ''
         found = False
         input_keys = search_dict.keys()
         for key in input_keys:
             print "key...", key
             if key == field:
-               print "entered if..."
                results = search_dict[key]
-               print "results...", results
                if not results:
                   found = True
                   break
@@ -174,6 +171,29 @@
         input_dict[field]=field_value
         return input_dict
 
+    '''
+    @method getAllFieldValues
+    @params : getJsonDataDictList - List of dictionaries to be searched
+             fieldName - Key to be searched for (ex: instance_id)
+    @Returns: Returns the unique value of the Key that was provided
+    '''   
+
+    def getAllFieldValues(self, getJsonDataDictList, fieldName):
+        value_list = []
+        uniqValue = ''
+        uniq_list = []
+        for data in getJsonDataDictList:
+            fieldValue = ''
+            fieldValue = self.getFieldValueFromDict(data, fieldName)
+            value_list.append(fieldValue)
+        uniq_list = sorted(set(value_list))
+        if len(uniq_list) == 1:
+           uniqValue = uniq_list[0]
+        else:
+           print "list of values found for ", fieldName, ";", uniq_list
+        return fieldValue
+        
+        
 '''
 #Test
 dict_list = {
@@ -203,6 +223,7 @@
 #result = test.getDictFromListOfDict(dict_list,"email",21)
 #result = test.getFieldValueFromDict(dict_list,"id")
 #result = test.getDictFromListOfDict(dict_list,"account_num",21)
-result = test.setFieldValueInDict(input_dict,"subscriber",new_value)
+#result = test.setFieldValueInDict(input_dict,"subscriber",new_value)
+result = test.getAllFieldValues(list1,"instance_name")
 print "finalllllll result....", result
 '''
diff --git a/src/test/cord-api/Properties/RestApiProperties.py b/src/test/cord-api/Properties/RestApiProperties.py
index 9cc30be..25eebe0 100644
--- a/src/test/cord-api/Properties/RestApiProperties.py
+++ b/src/test/cord-api/Properties/RestApiProperties.py
@@ -9,3 +9,4 @@
 UTILS_LOGIN = '/api/utility/login/'
 CORE_USERS = '/api/core/users/'
 CORE_SERVICES = '/api/core/services/'
+CORE_INSTANCES = '/api/core/instances/'
diff --git a/src/test/cord-api/README.md b/src/test/cord-api/README.md
new file mode 100644
index 0000000..ae94ada
--- /dev/null
+++ b/src/test/cord-api/README.md
@@ -0,0 +1,29 @@
+## CORD API TESTS
+
+This module contains tests using XOS APIs.
+Testcases are written in RobotFramework utilizing some automated python library framework.  
+
+## Prerequisites:
+ 
+  * Robot Framework
+
+## Install Robot Framework:
+```bash
+     $ sudo pip install robotframework
+     $ sudo pip install pygments
+     $ sudo apt-get install python-wxgtk2.8
+     $ sudo pip install robotframework-ride
+```
+   - To bring up IDE for the robot framework
+```bash
+   $ ride.py
+```
+## Execute testcases:
+   * Testcases can be run using ride.py IDE
+   * Or From the command line
+```bash
+     $ cd cord-tester/src/test/cord-api/Tests
+     $ pybot <testcase.txt>
+```
+## Input Files for the testcases
+* Input files for the testcases are present in the "Tests/data" directory, a set of input files to run the testcases
diff --git a/src/test/cord-api/Tests/SingleInstanceTest.txt b/src/test/cord-api/Tests/SingleInstanceTest.txt
new file mode 100644
index 0000000..209f09c
--- /dev/null
+++ b/src/test/cord-api/Tests/SingleInstanceTest.txt
@@ -0,0 +1,88 @@
+*** Settings ***
+Documentation     Test suite for Instance creation for multiple subscribers with same "s_tag"
+Suite Setup       Read InputFile
+Test Template     Verify Instance Functionality
+Library           Collections
+Library           String
+Library           OperatingSystem
+Library           XML
+Library           RequestsLibrary
+Library           ../Framework/utils/utils.py
+Library           ../Framework/restApi.py
+
+*** Variables ***
+${USER}           admin
+${PASSWORD}       admin
+${PATHFILE}       ${CURDIR}/data/Subscriber.json
+${PATHFILE2}      ${CURDIR}/data/SingleInstance_VoltTenant.json
+
+*** Test Cases ***    TYPE                 LISTINDEX
+Test Create Instance-1
+                      SUBSCRIBER_CREATE    0
+
+Test Create Subscriber-2
+                      SUBSCRIBER_CREATE    1
+
+Test Create Subscriber-3
+                      SUBSCRIBER_CREATE    2
+
+Test Create Tenant-1
+                      TENANT_CREATE        0
+
+Test Create Tenant-2
+                      TENANT_CREATE        1
+
+Test Create Tenant-3
+                      TENANT_CREATE        2
+
+Test Instance creation validation
+                      INSTANCE_VALIDATE    0
+
+*** Keywords ***
+Read InputFile
+    ${subscriberList} =    utils.jsonToList    ${PATHFILE}    SubscriberInfo
+    Set Suite Variable    ${slist}    ${subscriberList}
+    ${voltList}=    utils.jsonToList    ${PATHFILE2}    voltSubscriberInfo
+    Set Suite Variable    ${vlist}    ${voltList}
+
+Verify Instance functionality
+    [Arguments]    ${type}    ${listIndex}
+    Run Keyword If    "${type}" == "SUBSCRIBER_CREATE"    Test Post Subscriber Create    ${listIndex}
+    Run Keyword If    "${type}" == "TENANT_CREATE"    Test Post volt Tenant Create    ${listIndex}
+    Run Keyword If    "${type}" == "INSTANCE_VALIDATE"    Test Instance Validation    ${listIndex}
+
+Test Post Subscriber Create
+    [Arguments]    ${listIndex}
+    ${subscriberList} =    Get Variable Value    ${slist}
+    ${subscriberDict}=    utils.listToDict    ${subscriberList}    ${listIndex}
+    ${api_result}=    restApi.ApiPost    TENANT_SUBSCRIBER    ${subscriberDict}
+    Should Be True    ${api_result}
+
+Test Post volt Tenant Create
+    [Arguments]    ${listIndex}
+    ${voltTenantList} =    Get Variable Value    ${vlist}
+    ${voltTenantDict}=    utils.listToDict    ${voltTenantList}    ${listIndex}
+    ${voltDict}=    Get From Dictionary    ${voltTenantDict}    voltTenant
+    ${account_num}=    Get From Dictionary    ${voltTenantDict}    account_num
+    ${get_result}=    restApi.ApiGet    TENANT_SUBSCRIBER
+    ${subscriberDict}=    utils.getDictFromListofDict    ${get_result}    account_num    ${account_num}
+    ${subscriberID}=    utils.getFieldValueFromDict    ${subscriberDict}    id
+    ${updatedVoltDict}=    utils.setFieldValueInDict    ${voltDict}    subscriber    ${subscriberID}
+    ${api_result}=    restApi.ApiPost    TENANT_VOLT    ${updatedVoltDict}
+    Should Be True    ${api_result}
+    # Verifying Get operation after POST
+    ${getVolt_result}=    restApi.ApiGet    TENANT_VOLT
+    ${getJsonDict}=    utils.getDictFromListOfDict    ${getVolt_result}    subscriber    ${subscriberID}
+    ${test_result}=    utils.compare_dict    ${voltDict}    ${getJsonDict}
+    Should Be True    ${test_result}
+
+Test Instance Validation
+    [Arguments]    ${listIndex}
+    ${get_result}=    restApi.ApiGet    TENANT_SUBSCRIBER
+    ${instance_id_fromvolt}=    utils.getAllFieldValues    ${get_result}    instance_id
+    ${instance_name}=    utils.getAllFieldValues    ${get_result}    instance_name
+    ${instance_id_name}=    Catenate    SEPARATOR=-    ${instance_name}    ${instance_id_fromvolt}
+    ${get_instanceresult}=    restApi.ApiGet    CORE_INSTANCES
+    ${instanceDict}=    utils.getDictFromListofDict    ${get_instanceresult}    instance_name    ${instance_id_name}
+    ${instance_id_fromCore}=    utils.getFieldValueFromDict    ${instanceDict}    id
+    Should Be Equal As Strings    ${instance_id_fromvolt}    ${instance_id_fromCore}
diff --git a/src/test/cord-api/Tests/data/SingleInstance_VoltTenant.json b/src/test/cord-api/Tests/data/SingleInstance_VoltTenant.json
new file mode 100644
index 0000000..7bf5b73
--- /dev/null
+++ b/src/test/cord-api/Tests/data/SingleInstance_VoltTenant.json
@@ -0,0 +1,31 @@
+{
+    "voltSubscriberInfo" : [
+    {
+      "voltTenant" : 
+       {
+         "s_tag" : "111",
+         "c_tag" : "222",
+         "subscriber" : ""
+       },
+       "account_num" : 20
+    },
+    {
+     "voltTenant" : 
+      {
+        "s_tag" : "111",
+        "c_tag" : "333",
+        "subscriber" : ""
+      },
+      "account_num" : 21
+    },
+    {
+     "voltTenant" :
+      {
+        "s_tag" : "111",
+        "c_tag" : "444",
+        "subscriber" : ""
+      },
+     "account_num" : 22
+    }
+ ]
+} 
