diff --git a/src/test/cord-api/Tests/targets/xosserviceupgradetest.xtarget b/src/test/cord-api/Tests/targets/xosserviceupgradetest.xtarget
new file mode 100644
index 0000000..f05b2a5
--- /dev/null
+++ b/src/test/cord-api/Tests/targets/xosserviceupgradetest.xtarget
@@ -0,0 +1,51 @@
+
+*** Settings ***
+Documentation     Test Suite for XOS Service APIs
+Suite Setup       ${SETUP_FLAG}
+Suite Teardown    Delete All Sessions
+Test Template     Verify API Functionality
+Library           Collections
+Library           String
+Library           OperatingSystem
+Library           XML
+Library           RequestsLibrary
+Library		      HttpLibrary.HTTP
+Library           ../Framework/utils/utils.py
+Library           ../Framework/restApi.py
+Resource          ${TESTLIBRARY}
+Variables         ../Properties/RestApiProperties.py
+
+*** Variables ***
+${xos_service}    core
+
+*** Test Cases ***    TYPE        API
+{% for m in proto.messages %}
+{%- if xproto_unquote(m.options.app_label) != "core" -%}
+{%- if m.name not in  ['XOSBase'] -%}
+{% autoescape false %}
+{% endautoescape %}
+Create {{ m.name }}    CREATE    /xosapi/v1/{{ xproto_unquote(m.options.app_label) }}/{{ xproto_pluralize(m) | lower }}    ${json_{{ m.name | lower}}_1}
+    [Tags]    create
+
+Get {{ m.name }}    /xosapi/v1/{{ xproto_unquote(m.options.app_label) }}/{{ xproto_pluralize(m) | lower }}    ${json_{{ m.name | lower}}_1}
+    [Template]    Verify Data Model
+    [Tags]    get
+
+{% endif -%}
+{% endif -%}
+{% endfor %}
+
+*** Keywords ***
+Setup
+    Setup Tests
+
+Verify Data Model
+    [Arguments]    ${endpoint}    ${data}
+    ${list1}=    Create List    ${data}
+    ${resp}=    Get Request    ${SERVER_IP}    ${endpoint}
+    Log    ${resp.content}
+    Should Be Equal As Strings    ${resp.status_code}    200
+    ${jsondata}=    To Json    ${resp.content}
+    Log    ${data}
+    ${test_result}=    utils.compare_list_of_dicts    ${list1}    ${jsondata['items']}
+    Should Be True    ${test_result}
\ No newline at end of file
