diff --git a/src/nbi/service/rest_server/nbi_plugins/etsi_bwm/Resources.py b/src/nbi/service/rest_server/nbi_plugins/etsi_bwm/Resources.py
index 4c6ad47bc210316908ed3e3676abbda6757cf615..7f9360e00f5891b6cac0ae5020bd4fbc5ab7d9c1 100644
--- a/src/nbi/service/rest_server/nbi_plugins/etsi_bwm/Resources.py
+++ b/src/nbi/service/rest_server/nbi_plugins/etsi_bwm/Resources.py
@@ -13,12 +13,15 @@
 # limitations under the License.
 
 import copy, deepmerge, json, logging
+from typing import Dict
+from flask_restful import Resource, request
+from werkzeug.exceptions import UnsupportedMediaType
 from common.Constants import DEFAULT_CONTEXT_NAME
 from context.client.ContextClient import ContextClient
-from flask_restful import Resource, request
 from service.client.ServiceClient import ServiceClient
 from .Tools import (
-    format_grpc_to_json, grpc_context_id, grpc_service_id, bwInfo_2_service, service_2_bwInfo)
+    format_grpc_to_json, grpc_context_id, grpc_service_id, bwInfo_2_service, service_2_bwInfo
+)
 
 LOGGER = logging.getLogger(__name__)
 
@@ -37,15 +40,20 @@ class BwInfo(_Resource):
         return bw_allocations
 
     def post(self):
-        bwinfo = request.get_json()
-        service = bwInfo_2_service(self.client, bwinfo)
+        if not request.is_json:
+            raise UnsupportedMediaType('JSON payload is required')
+        request_data: Dict = request.get_json()
+        service = bwInfo_2_service(self.client, request_data)
         stripped_service = copy.deepcopy(service)
         stripped_service.ClearField('service_endpoint_ids')
         stripped_service.ClearField('service_constraints')
         stripped_service.ClearField('service_config')
 
-        response = format_grpc_to_json(self.service_client.CreateService(stripped_service))
-        response = format_grpc_to_json(self.service_client.UpdateService(service))
+        try:
+            response = format_grpc_to_json(self.service_client.CreateService(stripped_service))
+            response = format_grpc_to_json(self.service_client.UpdateService(service))
+        except Exception as e: # pylint: disable=broad-except
+            return e
 
         return response
 
diff --git a/src/nbi/service/rest_server/nbi_plugins/etsi_bwm/Tools.py b/src/nbi/service/rest_server/nbi_plugins/etsi_bwm/Tools.py
index 0a9a77e36261e7f019810124547e11fb67298213..55efa48b12b61cb44c23fc2995679afe38351368 100644
--- a/src/nbi/service/rest_server/nbi_plugins/etsi_bwm/Tools.py
+++ b/src/nbi/service/rest_server/nbi_plugins/etsi_bwm/Tools.py
@@ -20,10 +20,10 @@ from common.proto.context_pb2 import (
     Service, Constraint, Constraint_SLA_Capacity, ConfigRule, ConfigRule_Custom,
     ConfigActionEnum
 )
+from common.tools.grpc.ConfigRules import update_config_rule_custom
 from common.tools.grpc.Tools import grpc_message_to_json
 from common.tools.object_factory.Context import json_context_id
 from common.tools.object_factory.Service import json_service_id
-from common.tools.grpc.ConfigRules import update_config_rule_custom
 
 LOGGER = logging.getLogger(__name__)