diff --git a/openpower/ext_interfaces/test_client_identifier.robot b/openpower/ext_interfaces/test_client_identifier.robot
index d9592dd..8cfa771 100644
--- a/openpower/ext_interfaces/test_client_identifier.robot
+++ b/openpower/ext_interfaces/test_client_identifier.robot
@@ -182,13 +182,12 @@
 
     FOR  ${client}  ${session}  IN ZIP  ${client_ids}  ${session_ids}
       ${resp}=  Redfish Get Request  /redfish/v1/SessionService/Sessions/${session["Id"]}
-      ${sessions}=     To Json    ${resp.content}
-      Rprint Vars  sessions
-      @{words} =  Split String  ${sessions["ClientOriginIPAddress"]}  :
+      Rprint Vars  resp.json()
+      @{words} =  Split String  ${resp.json()["ClientOriginIPAddress"]}  :
       ${ip_address}=  Get Running System IP
       Set Test Variable  ${temp_ipaddr}  ${words}[-1]
-      Valid Value  client  ['${sessions["Oem"]["OpenBMC"]["ClientID"]}']
-      Valid Value  session["Id"]  ['${sessions["Id"]}']
+      Valid Value  client  ['${resp.json()["Oem"]["OpenBMC"]["ClientID"]}']
+      Valid Value  session["Id"]  ['${resp.json()["Id"]}']
       Valid Value  temp_ipaddr  ${ip_address}
     END
 
diff --git a/openpower/ext_interfaces/test_lock_management.robot b/openpower/ext_interfaces/test_lock_management.robot
index 4ca37e5..16f6e8b 100644
--- a/openpower/ext_interfaces/test_lock_management.robot
+++ b/openpower/ext_interfaces/test_lock_management.robot
@@ -8,6 +8,7 @@
 Resource                ../../lib/external_intf/management_console_utils.robot
 Resource                ../../lib/rest_response_code.robot
 Library                 ../../lib/bmc_network_utils.py
+Library                 JSONLibrary
 
 Suite Setup              Run Keyword And Ignore Error  Delete All Redfish Sessions
 Suite Teardown           Run Keyword And Ignore Error  Delete All Redfish Sessions
@@ -454,8 +455,10 @@
     # status_code    HTTP status code.
 
     ${lock_dict_param}=  Form Data To Acquire Lock  ${lock_type}
+    ${lock_dict_param}=  Convert JSON To String  ${lock_dict_param}
     ${resp}=  Redfish Post Request
     ...  /ibm/v1/HMC/LockService/Actions/LockService.AcquireLock  data=${lock_dict_param}
+    ...  expected_status=any
     Should Be Equal As Strings  ${resp.status_code}  ${status_code}
 
     Run Keyword If  ${status_code} == ${HTTP_BAD_REQUEST}
@@ -475,8 +478,10 @@
     # status_code    HTTP status code.
 
     ${lock_dict_param}=  Create Data To Acquire List Of Lock  ${lock_type}
+    ${lock_dict_param}=  Convert JSON To String  ${lock_dict_param}
     ${resp}=  Redfish Post Request
     ...  /ibm/v1/HMC/LockService/Actions/LockService.AcquireLock  data=${lock_dict_param}
+    ...   expected_status=any
     Should Be Equal As Strings  ${resp.status_code}  ${status_code}
 
     Run Keyword If  ${status_code} == ${HTTP_CONFLICT}
@@ -497,6 +502,7 @@
     # status_code    HTTP status code.
 
     ${lock_dict_param}=  Form Data To Acquire Invalid Lock  ${lock_type}
+    ${lock_dict_param}=  Convert JSON To String  ${lock_dict_param}
     ${resp}=  Redfish Post Request
     ...  /ibm/v1/HMC/LockService/Actions/LockService.AcquireLock  data=${lock_dict_param}
     Should Be Equal As Strings  ${resp.status_code}  ${status_code}
@@ -516,6 +522,7 @@
 
     ${lock_dict_param}=
     ...  Form Data To Acquire Invalid Lock With Invalid Data Type Of Resource ID  ${lock_type}
+    ${lock_dict_param}=  Convert JSON To String  ${lock_dict_param}
     ${resp}=  Redfish Post Request
     ...  /ibm/v1/HMC/LockService/Actions/LockService.AcquireLock  data=${lock_dict_param}
     Should Be Equal As Strings  ${resp.status_code}  ${status_code}
@@ -1236,7 +1243,7 @@
     # exp_status_code    Expected HTTP status code.
 
     ${resp}=  Redfish Post Request  /ibm/v1/HMC/LockService/Actions/LockService.GetLockList
-    ...  data={"SessionIDs": ${session_id_list}}
+    ...  data={"SessionIDs":${session_id_list}}  expected_status=any
     Should Be Equal As Strings  ${resp.status_code}  ${exp_status_code}
     ${locks}=  Evaluate  json.loads('''${resp.text}''')  json
 
diff --git a/openpower/ext_interfaces/test_savearea_management.robot b/openpower/ext_interfaces/test_savearea_management.robot
index ed0a123..6c122d1 100644
--- a/openpower/ext_interfaces/test_savearea_management.robot
+++ b/openpower/ext_interfaces/test_savearea_management.robot
@@ -366,7 +366,8 @@
       ${headers}=  Create Dictionary  X-Auth-Token=${XAUTH_TOKEN}
       Set To Dictionary  ${data}  headers  ${headers}
 
-      ${resp}=  Delete Request  openbmc  /ibm/v1/Host/ConfigFiles/${conf_file}  &{data}
+      ${resp}=  DELETE On Session  openbmc  /ibm/v1/Host/ConfigFiles/${conf_file}  &{data}
+      ...  expected_status=any
       Should Be Equal As Strings  ${resp.status_code}  ${status_code}
 
       ${description}=  Return Description Of Response  ${resp.text}
@@ -386,7 +387,8 @@
     ${headers}=  Create Dictionary  X-Auth-Token=${XAUTH_TOKEN}
     Set To Dictionary  ${data}  headers  ${headers}
 
-    ${resp}=  Post Request  openbmc  /ibm/v1/Host/ConfigFiles/Actions/IBMConfigFiles.DeleteAll  &{data}
+    ${resp}=  POST On Session  openbmc  /ibm/v1/Host/ConfigFiles/Actions/IBMConfigFiles.DeleteAll  &{data}
+    ...  expected_status=any
     Should Be Equal As Strings  ${resp.status_code}  ${status_code}
 
 
@@ -428,7 +430,8 @@
 
       ${kwargs}=  Create Dictionary  data=${image_data}
       Set To Dictionary  ${kwargs}  headers  ${headers}
-      ${resp}=  Put Request  openbmc  /ibm/v1/Host/ConfigFiles/${conf_file}  &{kwargs}  timeout=10
+      ${resp}=  PUT On Session  openbmc  /ibm/v1/Host/ConfigFiles/${conf_file}  &{kwargs}  timeout=10
+      ...  expected_status=any
       Should Be Equal As Strings  ${resp.status_code}  ${status_code}
 
       ${description}=  Return Description Of Response  ${resp.text}
@@ -592,7 +595,8 @@
     # status_code     HTTPS status code.
 
     FOR  ${conf_file}  IN  @{file_name}
-      ${resp}=  Get Request  openbmc  /ibm/v1/Host/ConfigFiles/${conf_file}
+      ${resp}=  GET On Session  openbmc  /ibm/v1/Host/ConfigFiles/${conf_file}
+      ...  expected_status=any
       Should Be Equal As Strings  ${resp.status_code}  ${status_code}
 
       ${Partition_file_data}=  Remove String  ${resp.text}  \\n
diff --git a/openpower/ext_interfaces/test_vmicert_management.robot b/openpower/ext_interfaces/test_vmicert_management.robot
index 02b0e3a..9eeb34b 100644
--- a/openpower/ext_interfaces/test_vmicert_management.robot
+++ b/openpower/ext_interfaces/test_vmicert_management.robot
@@ -614,7 +614,8 @@
     ${csr_data}=  Create Dictionary  CsrString  ${csr}
     Set To Dictionary  ${data}  data  ${csr_data}
 
-    ${resp}=  Post Request  openbmc  ${cert_uri}  &{data}  headers=${headers}  timeout=${read_timeout}
+    ${resp}=  POST On Session  openbmc  ${cert_uri}  &{data}  headers=${headers}
+    ...  timeout=${read_timeout}  expected_status=any
     Log to console  ${resp.content}
 
     [Return]  ${resp}
@@ -643,7 +644,8 @@
 
     ${cert_uri}=  Set Variable  ${VMI_BASE_URI}Host/Certificate/root
 
-    ${resp}=  Get Request  openbmc  ${cert_uri}  &{data}  headers=${headers}
+    ${resp}=  GET On Session  openbmc  ${cert_uri}  &{data}  headers=${headers}
+    ...  expected_status=any
 
     Should Be Equal As Strings  ${resp.status_code}  ${valid_status_code}
     Return From Keyword If  ${resp.status_code} != ${HTTP_OK}
diff --git a/openpower/test_inband_bmc_auth_reset.robot b/openpower/test_inband_bmc_auth_reset.robot
index 5b9f1fa..e6f9237 100644
--- a/openpower/test_inband_bmc_auth_reset.robot
+++ b/openpower/test_inband_bmc_auth_reset.robot
@@ -23,7 +23,8 @@
     ${headers}=  Create Dictionary  Content-Type=application/json
     @{credentials}=  Create List  ${OPENBMC_USERNAME}  ${OPENBMC_PASSWORD}
     ${data}=  create dictionary   data=@{credentials}
-    ${resp}=  Post Request  openbmc  /login  data=${data}  headers=${headers}
+    ${resp}=  POST On Session  openbmc  /login  data=${data}  headers=${headers}
+    ...  expected_status=any
     Should Be Equal As Strings  ${resp.status_code}  ${HTTP_UNAUTHORIZED}
 
     # Call reset method.
