diff --git a/proto/monitoring.proto b/proto/monitoring.proto
index 8b83afa47b49c130d37dcbcc1024f079ebc2a2fe..e90c67818f7d2db9c065a18f08195a6a8371af84 100644
--- a/proto/monitoring.proto
+++ b/proto/monitoring.proto
@@ -26,12 +26,12 @@ service MonitoringService {
   rpc IncludeKpi            (Kpi                ) returns (context.Empty       ) {}
   rpc MonitorKpi            (MonitorKpiRequest  ) returns (context.Empty       ) {}
   rpc QueryKpiData          (KpiQuery           ) returns (KpiList             ) {}
-  rpc SetKpiSubscription    (SubsDescriptor     ) returns (stream KpiList      ) {}
+  rpc SetKpiSubscription    (SubsDescriptor     ) returns (stream SubsResponse ) {}
   rpc GetSubsDescriptor     (SubscriptionID     ) returns (SubsDescriptor      ) {}
-  rpc GetSubscriptions      (context.Empty      ) returns (SubsIDList          ) {}
+  rpc GetSubscriptions      (context.Empty      ) returns (SubsList            ) {}
   rpc DeleteSubscription    (SubscriptionID     ) returns (context.Empty       ) {}
   rpc SetKpiAlarm           (AlarmDescriptor    ) returns (AlarmID             ) {}
-  rpc GetAlarms             (context.Empty      ) returns (AlarmIDList         ) {}
+  rpc GetAlarms             (context.Empty      ) returns (AlarmList           ) {}
   rpc GetAlarmDescriptor    (AlarmID            ) returns (AlarmDescriptor     ) {}
   rpc GetAlarmResponseStream(AlarmSubscription  ) returns (stream AlarmResponse) {}
   rpc DeleteAlarm           (AlarmID            ) returns (context.Empty       ) {}
@@ -125,8 +125,8 @@ message SubsResponse {
   repeated KpiList kpi_list = 2;
 }
 
-message SubsIDList {
-  repeated SubscriptionID subs_list = 1;
+message SubsList {
+  repeated SubsDescriptor subs_list = 1;
 }
 
 message AlarmDescriptor {
@@ -155,6 +155,6 @@ message AlarmResponse {
   context.Timestamp timestamp = 4;
 }
 
-message AlarmIDList {
-    repeated AlarmID alarm_list = 1;
+message AlarmList {
+    repeated AlarmDescriptor alarm_list = 1;
 }
diff --git a/src/monitoring/client/MonitoringClient.py b/src/monitoring/client/MonitoringClient.py
index 9b78d3d4f1cc724cca364320414d732a0058b55f..73607a081cd57e7c62b9c4e2c5e487868e72d189 100644
--- a/src/monitoring/client/MonitoringClient.py
+++ b/src/monitoring/client/MonitoringClient.py
@@ -21,8 +21,8 @@ from common.tools.client.RetryDecorator import retry, delay_exponential
 from common.tools.grpc.Tools import grpc_message_to_json_string
 from common.proto.context_pb2 import Empty
 from common.proto.monitoring_pb2 import Kpi, KpiDescriptor, KpiId, MonitorKpiRequest, \
-    KpiDescriptorList, KpiQuery, KpiList, SubsDescriptor, SubscriptionID, SubsIDList, \
-    AlarmDescriptor, AlarmID, AlarmIDList, AlarmResponse, AlarmSubscription
+    KpiDescriptorList, KpiQuery, KpiList, SubsDescriptor, SubscriptionID, SubsList, \
+    SubsResponse, AlarmDescriptor, AlarmID, AlarmList, AlarmResponse, AlarmSubscription
 from common.proto.monitoring_pb2_grpc import MonitoringServiceStub
 
 LOGGER = logging.getLogger(__name__)
@@ -100,7 +100,7 @@ class MonitoringClient:
         return response
 
     @RETRY_DECORATOR
-    def SetKpiSubscription(self, request : SubsDescriptor) -> Iterator[KpiList]:
+    def SetKpiSubscription(self, request : SubsDescriptor) -> Iterator[SubsResponse]:
         LOGGER.debug('SetKpiSubscription: {:s}'.format(grpc_message_to_json_string(request)))
         response = self.stub.SetKpiSubscription(request)
         LOGGER.debug('SetKpiSubscription result: {:s}'.format(grpc_message_to_json_string(response)))
@@ -114,7 +114,7 @@ class MonitoringClient:
         return response
 
     @RETRY_DECORATOR
-    def GetSubscriptions(self, request : Empty) -> SubsIDList:
+    def GetSubscriptions(self, request : Empty) -> SubsList:
         LOGGER.debug('GetSubscriptions: {:s}'.format(grpc_message_to_json_string(request)))
         response = self.stub.GetSubscriptions(request)
         LOGGER.debug('GetSubscriptions result: {:s}'.format(grpc_message_to_json_string(response)))
@@ -135,7 +135,7 @@ class MonitoringClient:
         return response
 
     @RETRY_DECORATOR
-    def GetAlarms(self, request : Empty) -> AlarmIDList:
+    def GetAlarms(self, request : Empty) -> AlarmList:
         LOGGER.debug('GetAlarms: {:s}'.format(grpc_message_to_json_string(request)))
         response = self.stub.GetAlarms(request)
         LOGGER.debug('GetAlarms result: {:s}'.format(grpc_message_to_json_string(response)))
diff --git a/src/monitoring/service/MonitoringServiceServicerImpl.py b/src/monitoring/service/MonitoringServiceServicerImpl.py
index 19b5e7e7437cfc4e28e8f8e58ac7e4dc6c8428ab..4a5d7e4baa0bef8b28259df13c625c9b96042932 100644
--- a/src/monitoring/service/MonitoringServiceServicerImpl.py
+++ b/src/monitoring/service/MonitoringServiceServicerImpl.py
@@ -23,9 +23,9 @@ from common.proto.context_pb2 import Empty
 from common.proto.device_pb2 import MonitoringSettings
 from common.proto.kpi_sample_types_pb2 import KpiSampleType
 from common.proto.monitoring_pb2_grpc import MonitoringServiceServicer
-from common.proto.monitoring_pb2 import AlarmResponse, AlarmDescriptor, AlarmIDList, SubsIDList, KpiId, \
+from common.proto.monitoring_pb2 import AlarmResponse, AlarmDescriptor, AlarmList, SubsList, KpiId, \
     KpiDescriptor, KpiList, KpiQuery, SubsDescriptor, SubscriptionID, AlarmID, KpiDescriptorList, \
-    MonitorKpiRequest, Kpi, AlarmSubscription
+    MonitorKpiRequest, Kpi, AlarmSubscription, SubsResponse
 from common.rpc_method_wrapper.ServiceExceptions import ServiceException
 
 from monitoring.service import ManagementDBTools, MetricsDBTools
@@ -217,12 +217,12 @@ class MonitoringServiceServicerImpl(MonitoringServiceServicer):
         except Exception as e:  # pragma: no cover
             LOGGER.exception('QueryKpiData exception')
 
-    def SetKpiSubscription ( self, request : SubsDescriptor, grpc_context : grpc.ServicerContext) -> KpiList:
+    def SetKpiSubscription ( self, request : SubsDescriptor, grpc_context : grpc.ServicerContext) -> SubsResponse:
 
         LOGGER.info('SubscribeKpi')
         try:
              # TBC
-            yield KpiList()
+            yield SubsResponse()
         except ServiceException as e:
             LOGGER.exception('SubscribeKpi exception')
             grpc_context.abort(e.code, e.details)
@@ -242,12 +242,12 @@ class MonitoringServiceServicerImpl(MonitoringServiceServicer):
         except Exception as e:  # pragma: no cover
             LOGGER.exception('GetSubsDescriptor exception')
 
-    def GetSubscriptions ( self, request : Empty, grpc_context : grpc.ServicerContext) -> SubsIDList:
+    def GetSubscriptions ( self, request : Empty, grpc_context : grpc.ServicerContext) -> SubsList:
 
         LOGGER.info('GetSubscriptions')
         try:
              # TBC
-            return SubsIDList()
+            return SubsList()
         except ServiceException as e:
             LOGGER.exception('GetSubscriptions exception')
             grpc_context.abort(e.code, e.details)
@@ -279,12 +279,12 @@ class MonitoringServiceServicerImpl(MonitoringServiceServicer):
             LOGGER.exception('SetKpiAlarm exception')
 
 
-    def GetAlarms ( self, request : Empty, grpc_context : grpc.ServicerContext) -> AlarmIDList:
+    def GetAlarms ( self, request : Empty, grpc_context : grpc.ServicerContext) -> AlarmList:
 
         LOGGER.info('GetAlarms')
         try:
              # TBC
-            return AlarmIDList()
+            return AlarmList()
         except ServiceException as e:
             LOGGER.exception('GetAlarms exception')
             grpc_context.abort(e.code, e.details)
diff --git a/src/monitoring/tests/test_unitary.py b/src/monitoring/tests/test_unitary.py
index 1ea85a5a2862eb4b1440332b0bbc146a74bd431d..ced71fa29bd22e1f7c8e2116e7d886e3dc05e032 100644
--- a/src/monitoring/tests/test_unitary.py
+++ b/src/monitoring/tests/test_unitary.py
@@ -27,8 +27,8 @@ from common.orm.Factory import get_database_backend, BackendEnum as DatabaseBack
 from common.message_broker.Factory import get_messagebroker_backend, BackendEnum as MessageBrokerBackendEnum
 from common.message_broker.MessageBroker import MessageBroker
 from common.proto import monitoring_pb2
-from common.proto.monitoring_pb2 import KpiId, KpiDescriptor, KpiList, SubsDescriptor, SubsIDList, AlarmID, \
-    AlarmDescriptor, AlarmIDList, Kpi, KpiDescriptorList
+from common.proto.monitoring_pb2 import KpiId, KpiDescriptor, KpiList, SubsDescriptor, SubsList, AlarmID, \
+    AlarmDescriptor, AlarmList, Kpi, KpiDescriptorList, SubsResponse
 
 from context.client.ContextClient import ContextClient
 from context.service.grpc_server.ContextService import ContextService
@@ -276,7 +276,7 @@ def test_get_subscriptions(monitoring_client):
     LOGGER.warning('test_get_subscriptions')
     response = monitoring_client.GetSubscriptions(Empty())
     LOGGER.debug(type(response))
-    assert isinstance(response, SubsIDList)
+    assert isinstance(response, SubsList)
 
 # Test case that makes use of client fixture to test server's DeleteSubscription method
 def test_delete_subscription(monitoring_client):
@@ -297,7 +297,7 @@ def test_get_alarms(monitoring_client):
     LOGGER.warning('test_get_alarms')
     response = monitoring_client.GetAlarms(Empty())
     LOGGER.debug(type(response))
-    assert isinstance(response, AlarmIDList)
+    assert isinstance(response, AlarmList)
 
 
 # Test case that makes use of client fixture to test server's GetAlarmDescriptor method