diff --git a/lib/bmc_ldap_utils.robot b/lib/bmc_ldap_utils.robot
index 248eac7..44002f2 100644
--- a/lib/bmc_ldap_utils.robot
+++ b/lib/bmc_ldap_utils.robot
@@ -85,4 +85,5 @@
     ...           {'BaseDistinguishedNames': ['${ldap_base_dn}']}}}}
 
     Redfish.Patch  ${REDFISH_BASE_URI}AccountService  body=${body}
+    ...  valid_status_codes=[${HTTP_OK},${HTTP_NO_CONTENT}]
     Sleep  15s
diff --git a/redfish/account_service/test_ldap_configuration.robot b/redfish/account_service/test_ldap_configuration.robot
index 3f18f38..074dc17 100644
--- a/redfish/account_service/test_ldap_configuration.robot
+++ b/redfish/account_service/test_ldap_configuration.robot
@@ -42,6 +42,7 @@
 
     Redfish.Patch  ${REDFISH_BASE_URI}AccountService
     ...  body={'${LDAP_TYPE}': {'ServiceEnabled': ${False}}}
+    ...  valid_status_codes=[${HTTP_OK},${HTTP_NO_CONTENT}]
     Sleep  15s
     ${resp}=  Run Keyword And Return Status  Redfish.Login  ${LDAP_USER}
     ...  ${LDAP_USER_PASSWORD}
@@ -52,6 +53,7 @@
     # Enabling LDAP so that LDAP user works.
     Redfish.Patch  ${REDFISH_BASE_URI}AccountService
     ...  body={'${LDAP_TYPE}': {'ServiceEnabled': ${True}}}
+    ...  valid_status_codes=[${HTTP_OK},${HTTP_NO_CONTENT}]
     Redfish.Logout
 
 
@@ -63,6 +65,7 @@
     # Actual service enablement.
     Redfish.Patch  ${REDFISH_BASE_URI}AccountService
     ...  body={'${LDAP_TYPE}': {'ServiceEnabled': ${True}}}
+    ...  valid_status_codes=[${HTTP_OK},${HTTP_NO_CONTENT}]
     Sleep  15s
     # After update, LDAP login.
     Redfish.Login  ${LDAP_USER}  ${LDAP_USER_PASSWORD}
@@ -75,6 +78,7 @@
 
     Redfish.Patch  ${REDFISH_BASE_URI}AccountService
     ...  body={'${ldap_type}': {'Authentication': {'AuthenticationType':'UsernameAndPassword'}}}
+    ...  valid_status_codes=[${HTTP_OK},${HTTP_NO_CONTENT}]
     Sleep  15s
     # After update, LDAP login.
     Redfish.Login  ${LDAP_USER}  ${LDAP_USER_PASSWORD}
@@ -168,6 +172,7 @@
     # Verify that the LDAP user with operator privilege is able to power the system off.
     Redfish.Post  ${REDFISH_POWER_URI}
     ...  body={'ResetType': 'ForceOff'}   valid_status_codes=[200]
+    ...  valid_status_codes=[${HTTP_OK},${HTTP_NO_CONTENT}]
     Redfish.Logout
     Redfish.Login
 
@@ -196,8 +201,10 @@
     # Set Account Lockout attributes using LDAP user.
     Redfish.Patch  ${REDFISH_BASE_URI}AccountService
     ...  body=[('AccountLockoutDuration', 0)]
+    ...  valid_status_codes=[${HTTP_OK},${HTTP_NO_CONTENT}]
     Redfish.Patch  ${REDFISH_BASE_URI}AccountService
     ...  body=[('AccountLockoutThreshold', 0)]
+    ...  valid_status_codes=[${HTTP_OK},${HTTP_NO_CONTENT}]
 
 
 Verify LDAP User With Read Privilege Able To Check Inventory
@@ -245,6 +252,7 @@
     ${body}=  Catenate  {'${LDAP_TYPE}': { 'LDAPService': {'SearchSettings':
     ...   {'BaseDistinguishedNames': ['${LDAP_BASE_DN}']}}}}
     Redfish.Patch  ${REDFISH_BASE_URI}AccountService  body=${body}
+    ...  valid_status_codes=[${HTTP_OK},${HTTP_NO_CONTENT}]
     Sleep  15s
     Redfish Verify LDAP Login
 
@@ -258,6 +266,7 @@
     ...   {'AuthenticationType':'UsernameAndPassword', 'Username':
     ...  '${LDAP_BIND_DN}'}}}
     Redfish.Patch  ${REDFISH_BASE_URI}AccountService  body=${body}
+    ...  valid_status_codes=[${HTTP_OK},${HTTP_NO_CONTENT}]
     Sleep  15s
     Redfish Verify LDAP Login
 
@@ -272,6 +281,7 @@
     ...   {'AuthenticationType':'UsernameAndPassword', 'Password':
     ...  '${LDAP_BIND_DN_PASSWORD}'}}}
     Redfish.Patch  ${REDFISH_BASE_URI}AccountService  body=${body}
+    ...  valid_status_codes=[${HTTP_OK},${HTTP_NO_CONTENT}]
     Sleep  15s
     Redfish Verify LDAP Login
 
@@ -284,6 +294,7 @@
     Disable Other LDAP
     Redfish.Patch  ${REDFISH_BASE_URI}AccountService
     ...  body={'${LDAP_TYPE}': {'ServiceEnabled': ${True}}}
+    ...  valid_status_codes=[${HTTP_OK},${HTTP_NO_CONTENT}]
     Sleep  15s
     Redfish Verify LDAP Login
 
@@ -516,6 +527,7 @@
     # Disable the LDAP Type from OpenLDAP to ActiveDirectory or vice-versa
     Redfish.Patch  ${REDFISH_BASE_URI}AccountService
     ...  body={'${LDAP_TYPE}': {'ServiceEnabled': ${False}}}
+    ...  valid_status_codes=[${HTTP_OK},${HTTP_NO_CONTENT}]
 
     # Enable the inverse LDAP type
     Disable Other LDAP  ${True}
@@ -584,6 +596,7 @@
     ${inverse_ldap_type}=  Set Variable If  '${LDAP_TYPE}' == 'LDAP'  ActiveDirectory  LDAP
     Redfish.Patch  ${REDFISH_BASE_URI}AccountService
     ...  body={'${inverse_ldap_type}': {'ServiceEnabled': ${service_state}}}
+    ...  valid_status_codes=[${HTTP_OK},${HTTP_NO_CONTENT}]
     Sleep  15s
 
 
@@ -596,6 +609,7 @@
 
     Redfish.Patch  ${REDFISH_BASE_URI}AccountService
     ...  body={'${ldap_type}': {'ServiceAddresses': ['${ldap_server_uri}']}}
+    ...  valid_status_codes=[${HTTP_OK},${HTTP_NO_CONTENT}]
     Sleep  15s
     # After update, LDAP login.
     ${status}=  Run Keyword And Return Status  Redfish.Login  ${LDAP_USER}  ${LDAP_USER_PASSWORD}
@@ -611,6 +625,7 @@
     # Restoring the working LDAP server uri.
     Redfish.Patch  ${REDFISH_BASE_URI}AccountService
     ...  body={'${ldap_type}': {'ServiceAddresses': ['${LDAP_SERVER_URI}']}}
+    ...  valid_status_codes=[${HTTP_OK},${HTTP_NO_CONTENT}]
     Sleep  15s
 
 
@@ -620,9 +635,10 @@
     Return From Keyword If  &{old_account_service} == &{EMPTY}
     Redfish.Patch  ${REDFISH_BASE_URI}AccountService
     ...  body=[('AccountLockoutDuration', ${old_account_service['AccountLockoutDuration']})]
+    ...  valid_status_codes=[${HTTP_OK},${HTTP_NO_CONTENT}]
     Redfish.Patch  ${REDFISH_BASE_URI}AccountService
     ...  body=[('AccountLockoutThreshold', ${old_account_service['AccountLockoutThreshold']})]
-
+    ...  valid_status_codes=[${HTTP_OK},${HTTP_NO_CONTENT}]
 
 Suite Setup Execution
     [Documentation]  Do suite setup tasks.
@@ -714,6 +730,7 @@
     ${ldap_data}=  Create Dictionary  RemoteRoleMapping=${remote_role_mapping}
     ${payload}=  Create Dictionary  ${ldap_type}=${ldap_data}
     Redfish.Patch  ${REDFISH_BASE_URI}AccountService  body=&{payload}
+    ...  valid_status_codes=[${HTTP_OK},${HTTP_NO_CONTENT}]
     # Provide adequate time for LDAP daemon to restart after the update.
     Sleep  15s
 
