From fc45a7fdf84ba576222229bbfb5085181ab0f655 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Andr=C3=A9=20Sterba?= <andre@sterba.dev>
Date: Mon, 14 Apr 2025 08:44:43 +0200
Subject: [PATCH] fix lint errors

---
 .../registration/registration.go              |  2 +-
 applications/arista-routing-engine/app.go     | 12 +--
 .../arista-routing-engine/network-element.go  | 18 ++---
 .../network-element.go                        |  2 +-
 applications/hostname-checker/app.go          |  6 +-
 .../venv-manager/venv-manager/venv-manager.go | 24 +++---
 cli/adapter/PndAdapter.go                     |  8 +-
 cli/cmd/list.go                               |  4 +-
 cli/cmd/login.go                              |  2 +-
 cli/cmd/logout.go                             |  2 +-
 cli/cmd/networkElementPathDelete.go           |  4 +-
 cli/cmd/networkElementPathGet.go              |  6 +-
 cli/cmd/networkElementPathGetIntended.go      |  6 +-
 cli/cmd/networkElementShow.go                 |  8 +-
 cli/cmd/pndGet.go                             |  8 +-
 cli/cmd/pndList.go                            |  2 +-
 cli/cmd/prompt.go                             |  8 +-
 cli/cmd/roleGetAll.go                         |  2 +-
 cli/cmd/subManagementGet.go                   |  8 +-
 cli/cmd/subManagementGetAll.go                |  2 +-
 cli/cmd/userGet.go                            |  4 +-
 cli/cmd/userGetAll.go                         |  6 +-
 cli/cmd/userUpdate.go                         |  2 +-
 controller/api/api_test.go                    |  2 +-
 controller/api/auth_test.go                   |  2 +-
 controller/api/grpc.go                        |  6 +-
 controller/api/managedNetworkElement.go       |  2 +-
 controller/api/plugin.go                      |  2 +-
 controller/api/role_test.go                   | 14 ++--
 controller/api/user_test.go                   | 10 +--
 controller/northbound/server/app.go           |  6 +-
 controller/northbound/server/auth.go          |  6 +-
 .../server/auth_interceptor_test.go           |  4 +-
 controller/northbound/server/auth_test.go     |  2 +-
 .../server/configurationmanagement.go         |  6 +-
 controller/northbound/server/csbi.go          |  8 +-
 .../northbound/server/networkElement.go       | 78 +++++++++----------
 controller/northbound/server/pnd.go           |  8 +-
 controller/northbound/server/pnd_test.go      | 10 +--
 controller/northbound/server/role.go          | 24 +++---
 controller/northbound/server/role_test.go     | 14 ++--
 controller/northbound/server/route.go         | 18 ++---
 controller/northbound/server/submanagement.go | 12 +--
 controller/northbound/server/topology.go      | 20 ++---
 controller/northbound/server/topology_test.go |  6 +-
 controller/northbound/server/user.go          | 28 +++----
 controller/northbound/server/user_test.go     | 10 +--
 controller/northbound/server/utils_test.go    |  6 +-
 controller/nucleus/gnmi_transport.go          | 34 ++++----
 controller/nucleus/gnmi_transport_test.go     | 10 +--
 controller/nucleus/networkElement.go          | 24 +++---
 controller/nucleus/networkElementWatcher.go   | 12 +--
 controller/nucleus/pluginService.go           |  2 +-
 controller/nucleus/transport.go               |  2 +-
 controller/nucleus/util/gnmi/notification.go  |  4 +-
 controller/nucleus/util/path/translate.go     |  4 +-
 controller/plugin/shared/client.go            |  4 +-
 controller/plugin/shared/server.go            |  2 +-
 .../integrationTestUtils.go                   | 24 +++---
 integration-tests/lab_tests/lab00_test.go     |  4 +-
 .../networkElement_test.go                    | 34 ++++----
 integration-tests/rbac_tests/rbac_test.go     | 24 +++---
 .../topology_tests/topology_test.go           | 46 +++++------
 plugin-registry/server.go                     |  4 +-
 64 files changed, 342 insertions(+), 342 deletions(-)

diff --git a/application-framework/registration/registration.go b/application-framework/registration/registration.go
index 2c3571b5e..abd240768 100644
--- a/application-framework/registration/registration.go
+++ b/application-framework/registration/registration.go
@@ -36,5 +36,5 @@ func Register(ctx context.Context, gosdnAddress, name, token string) (string, er
 		return "", err
 	}
 
-	return response.Queueconnection, nil
+	return response.GetQueueconnection(), nil
 }
diff --git a/applications/arista-routing-engine/app.go b/applications/arista-routing-engine/app.go
index 64aadaa1b..2142586ed 100644
--- a/applications/arista-routing-engine/app.go
+++ b/applications/arista-routing-engine/app.go
@@ -82,12 +82,12 @@ func (a *Application) LinksCallback(event *event.Event) {
 		return
 	}
 
-	links := getTopologyResponse.Toplogy.Links
+	links := getTopologyResponse.GetToplogy().GetLinks()
 
 	for _, link := range links {
 		fmt.Printf("[APP] Link: %+v", link)
-		adjustNodePortsToMatchConfiguration(networkElementServer, link.SourceNode, link.SourcePort)
-		adjustNodePortsToMatchConfiguration(networkElementServer, link.TargetNode, link.TargetPort)
+		adjustNodePortsToMatchConfiguration(networkElementServer, link.GetSourceNode(), link.GetSourcePort())
+		adjustNodePortsToMatchConfiguration(networkElementServer, link.GetTargetNode(), link.GetTargetPort())
 	}
 }
 
@@ -109,10 +109,10 @@ func (a *Application) RoutesCallback(event *event.Event) {
 		return
 	}
 
-	for _, node := range response.RoutingTables {
-		nodeID := node.NodeID
+	for _, node := range response.GetRoutingTables() {
+		nodeID := node.GetNodeID()
 
-		for _, nodeRoute := range node.Routes {
+		for _, nodeRoute := range node.GetRoutes() {
 			adjustNodeRoutesToMatchConfiguration(networkElementServer, nodeID, nodeRoute)
 		}
 	}
diff --git a/applications/arista-routing-engine/network-element.go b/applications/arista-routing-engine/network-element.go
index 79f6382ba..3453cb829 100644
--- a/applications/arista-routing-engine/network-element.go
+++ b/applications/arista-routing-engine/network-element.go
@@ -50,7 +50,7 @@ func NewNetworkElement(id uuid.UUID, name string, networkelementModel string) *N
 }
 
 func adjustNodePortsToMatchConfiguration(networkElementServer mnepb.NetworkElementServiceClient, node *topology.Node, port *topology.Port) {
-	nodeUUID := uuid.MustParse(node.Id)
+	nodeUUID := uuid.MustParse(node.GetId())
 
 	adjustInterfacesOfNetworkElement(
 		networkElementServer,
@@ -72,9 +72,9 @@ func adjustInterfacesOfNetworkElement(networkElementServer mnepb.NetworkElementS
 		return
 	}
 
-	fmt.Printf("[APP] ID: %v, NetworkElement: %+v \n", response.Mne.Id, response.Mne)
+	fmt.Printf("[APP] ID: %v, NetworkElement: %+v \n", response.GetMne().GetId(), response.GetMne())
 
-	mne := NewNetworkElement(uuid.MustParse(response.Mne.Id), response.Mne.Name, response.Mne.Model)
+	mne := NewNetworkElement(uuid.MustParse(response.GetMne().GetId()), response.GetMne().GetName(), response.GetMne().GetModel())
 
 	fmt.Printf("[APP] NetworkElement.Hostname %s \n", *mne.Model.System.Config.Hostname)
 
@@ -85,9 +85,9 @@ func adjustInterfacesOfNetworkElement(networkElementServer mnepb.NetworkElementS
 
 	setIPOnInterface(
 		&mne.Model,
-		portConfiguration.Name,
-		portConfiguration.Configuration.Ip,
-		int(portConfiguration.Configuration.PrefixLength),
+		portConfiguration.GetName(),
+		portConfiguration.GetConfiguration().GetIp(),
+		int(portConfiguration.GetConfiguration().GetPrefixLength()),
 	)
 
 	modelAsString, err := models.GetModelAsString(&mne.Model)
@@ -125,13 +125,13 @@ func adjustNodeRoutesToMatchConfiguration(networkElementServer mnepb.NetworkElem
 		return
 	}
 
-	fmt.Printf("[APP] ID: %v, NetworkElement: %+v \n", response.Mne.Id, response.Mne)
+	fmt.Printf("[APP] ID: %v, NetworkElement: %+v \n", response.GetMne().GetId(), response.GetMne())
 
-	mne := NewNetworkElement(uuid.MustParse(response.Mne.Id), response.Mne.Name, response.Mne.Model)
+	mne := NewNetworkElement(uuid.MustParse(response.GetMne().GetId()), response.GetMne().GetName(), response.GetMne().GetModel())
 
 	fmt.Printf("[APP] NetworkElement.Hostname %s \n", *mne.Model.System.Config.Hostname)
 
-	setRoutingTable(&mne.Model, route.TargetIPRange, route.NextHopIP)
+	setRoutingTable(&mne.Model, route.GetTargetIPRange(), route.GetNextHopIP())
 
 	modelAsString, err := models.GetModelAsString(&mne.Model)
 	if err != nil {
diff --git a/applications/basic-interface-monitoring/network-element.go b/applications/basic-interface-monitoring/network-element.go
index 9ac8662a0..5ae286deb 100644
--- a/applications/basic-interface-monitoring/network-element.go
+++ b/applications/basic-interface-monitoring/network-element.go
@@ -75,7 +75,7 @@ func checkIfOperationStateHasChanged(networkElementServer networkelement.Network
 		return nil, err
 	}
 
-	networkElement := NewNetworkElement(uuid.MustParse(resp.Mne.Id), resp.Mne.Name, resp.Mne.Model)
+	networkElement := NewNetworkElement(uuid.MustParse(resp.GetMne().GetId()), resp.GetMne().GetName(), resp.GetMne().GetModel())
 
 	storedInterfaces, ok := statusMap[networkElement.Name]
 	if !ok {
diff --git a/applications/hostname-checker/app.go b/applications/hostname-checker/app.go
index 441828a45..9daad5be8 100644
--- a/applications/hostname-checker/app.go
+++ b/applications/hostname-checker/app.go
@@ -74,9 +74,9 @@ func (a *Application) callback(event *event.Event) {
 		return
 	}
 
-	fmt.Printf("\n[APP] Device-ID: %v, NetworkElement-Name: %+v \n", response.Mne.Id, response.Mne.Name)
+	fmt.Printf("\n[APP] Device-ID: %v, NetworkElement-Name: %+v \n", response.GetMne().GetId(), response.GetMne().GetName())
 
-	d := NewDevice(uuid.MustParse(response.Mne.Id), response.Mne.Name)
+	d := NewDevice(uuid.MustParse(response.GetMne().GetId()), response.GetMne().GetName())
 
 	// Create 'root' path to be able to load the whole model from the store.
 	path, err := ygot.StringToPath("/", ygot.StructuredPath)
@@ -85,7 +85,7 @@ func (a *Application) callback(event *event.Event) {
 	}
 
 	// Use unmarshall from the devices SBI to unmarshall ygot json in go struct.
-	err = models.Unmarshal([]byte(response.Mne.Model), path, &d.Model)
+	err = models.Unmarshal([]byte(response.GetMne().GetModel()), path, &d.Model)
 	if err != nil {
 		panic(err)
 	}
diff --git a/applications/venv-manager/venv-manager/venv-manager.go b/applications/venv-manager/venv-manager/venv-manager.go
index c1d6f6510..3186be6e8 100644
--- a/applications/venv-manager/venv-manager/venv-manager.go
+++ b/applications/venv-manager/venv-manager/venv-manager.go
@@ -110,7 +110,7 @@ func (v *VenvManager) sendSDNConfigData(sdnConfigData *string) error {
 	}
 
 	// currently only support for default PND
-	v.pndID = pndRes.Pnd[0].Id
+	v.pndID = pndRes.GetPnd()[0].GetId()
 
 	configMgmtService := configMgmtPb.NewConfigurationManagementServiceClient(conn)
 
@@ -152,7 +152,7 @@ func (v *VenvManager) getSDNConfigData() (*string, error) {
 	if err != nil {
 		return nil, err
 	}
-	v.pndID = pndRes.Pnd[0].Id
+	v.pndID = pndRes.GetPnd()[0].GetId()
 
 	configMgmtService := configMgmtPb.NewConfigurationManagementServiceClient(conn)
 
@@ -228,8 +228,8 @@ func (v *VenvManager) getTopologyData() (*topologyPb.GetTopologyResponse, error)
 	if err != nil {
 		return nil, err
 	}
-	v.pndID = pndRes.Pnd[0].Id
-	v.pndName = pndRes.Pnd[0].Name
+	v.pndID = pndRes.GetPnd()[0].GetId()
+	v.pndName = pndRes.GetPnd()[0].GetName()
 
 	toplogyService := topologyPb.NewTopologyServiceClient(conn)
 	topologyResponse, err := toplogyService.GetTopology(ctx, &topologyPb.GetTopologyRequest{Timestamp: getTimestamp()})
@@ -247,11 +247,11 @@ func (v *VenvManager) parseTopologyDataIntoStructs(topologyData *topologyPb.GetT
 	nodes := []node.Node{}
 	ports := []port.Port{}
 
-	for _, unparsedLink := range topologyData.Toplogy.Links {
-		sourceNode := node.Node{ID: unparsedLink.SourceNode.Id, Name: unparsedLink.SourceNode.Name, Kind: "", Image: ""}
-		targetNode := node.Node{ID: unparsedLink.TargetNode.Id, Name: unparsedLink.TargetNode.Name, Kind: "", Image: ""}
-		sourcePort := port.Port{ID: unparsedLink.SourcePort.Id, Name: unparsedLink.SourcePort.Name}
-		targetPort := port.Port{ID: unparsedLink.TargetPort.Id, Name: unparsedLink.TargetPort.Name}
+	for _, unparsedLink := range topologyData.GetToplogy().GetLinks() {
+		sourceNode := node.Node{ID: unparsedLink.GetSourceNode().GetId(), Name: unparsedLink.GetSourceNode().GetName(), Kind: "", Image: ""}
+		targetNode := node.Node{ID: unparsedLink.GetTargetNode().GetId(), Name: unparsedLink.GetTargetNode().GetName(), Kind: "", Image: ""}
+		sourcePort := port.Port{ID: unparsedLink.GetSourcePort().GetId(), Name: unparsedLink.GetSourcePort().GetName()}
+		targetPort := port.Port{ID: unparsedLink.GetTargetPort().GetId(), Name: unparsedLink.GetTargetPort().GetName()}
 
 		index, err := getIndexOfElement(nodes, sourceNode.ID)
 		if err != nil {
@@ -281,7 +281,7 @@ func (v *VenvManager) parseTopologyDataIntoStructs(topologyData *topologyPb.GetT
 			targetPort = ports[index]
 		}
 
-		newLink := link.Link{ID: unparsedLink.Id, Name: unparsedLink.Name, SourceNode: &sourceNode, TargetNode: &targetNode, SourcePort: &sourcePort, TargetPort: &targetPort}
+		newLink := link.Link{ID: unparsedLink.GetId(), Name: unparsedLink.GetName(), SourceNode: &sourceNode, TargetNode: &targetNode, SourcePort: &sourcePort, TargetPort: &targetPort}
 		links = append(links, newLink)
 	}
 
@@ -342,12 +342,12 @@ func (v *VenvManager) getAndAddMoreData(topologyData *topology.GoSdnTopology) (*
 
 		var marshalledYangData openconfig.Device
 
-		err = yangparser.Unmarshal([]byte(getNetworkElementResponse.Mne.Model), ygotPath, &marshalledYangData)
+		err = yangparser.Unmarshal([]byte(getNetworkElementResponse.GetMne().GetModel()), ygotPath, &marshalledYangData)
 		if err != nil {
 			return nil, err
 		}
 
-		mgmntAddress := strings.Split(getNetworkElementResponse.Mne.TransportAddress, ":")
+		mgmntAddress := strings.Split(getNetworkElementResponse.GetMne().GetTransportAddress(), ":")
 		topologyData.Nodes[iterator].MgmtIpv4 = mgmntAddress[0]
 		topologyData.Nodes[iterator].YangData = marshalledYangData
 		topologyData.Nodes[iterator].FillAllFields(v.containerRegistryURL)
diff --git a/cli/adapter/PndAdapter.go b/cli/adapter/PndAdapter.go
index e1bd8936b..fd041d396 100644
--- a/cli/adapter/PndAdapter.go
+++ b/cli/adapter/PndAdapter.go
@@ -116,9 +116,9 @@ func (p *PndAdapter) RequestAll(ctx context.Context, path string) ([]proto.Messa
 	if err != nil {
 		return []proto.Message{}, err
 	}
-	reqResult := make([]proto.Message, len(resp.Mne))
+	reqResult := make([]proto.Message, len(resp.GetMne()))
 	g := new(errgroup.Group)
-	for i, mne := range resp.Mne {
+	for i, mne := range resp.GetMne() {
 		// TODO: probably the controller should do this; this would result in a
 		// single request from CLI side.
 		g.Go(func() error {
@@ -202,8 +202,8 @@ func (p *PndAdapter) Confirm(ctx context.Context, cuid uuid.UUID) (*mnepb.SetCha
 
 func filterChanges(state mnepb.ChangeState, resp *mnepb.GetChangeListResponse) []*mnepb.Change {
 	changes := make([]*mnepb.Change, 0)
-	for _, ch := range resp.Change {
-		if ch.State == state {
+	for _, ch := range resp.GetChange() {
+		if ch.GetState() == state {
 			changes = append(changes, ch)
 		}
 	}
diff --git a/cli/cmd/list.go b/cli/cmd/list.go
index 2e476d4e7..8628424d0 100644
--- a/cli/cmd/list.go
+++ b/cli/cmd/list.go
@@ -58,9 +58,9 @@ var listCmd = &cobra.Command{
 				pterm.Error.Println(err)
 				return
 			}
-			log.Infof("PND %v: name: %v, uuid: %v", i+1, pnd.Name, pnd.Id)
+			log.Infof("PND %v: name: %v, uuid: %v", i+1, pnd.GetName(), pnd.GetId())
 			for k, mne := range mneResp.GetMne() {
-				log.Infof("    MNE %v: name: %v, uuid: %v", k+1, mne.Name, mne.Id)
+				log.Infof("    MNE %v: name: %v, uuid: %v", k+1, mne.GetName(), mne.GetId())
 				log.Infof("    Plugin %v: uuid: %v", k+1, mne.GetPid())
 			}
 		}
diff --git a/cli/cmd/login.go b/cli/cmd/login.go
index babf01ee8..f5a71d5be 100644
--- a/cli/cmd/login.go
+++ b/cli/cmd/login.go
@@ -72,7 +72,7 @@ var loginCmd = &cobra.Command{
 
 		spinner.Success("Authentication for ", nbUserName, " was successful.")
 
-		userToken = resp.Token
+		userToken = resp.GetToken()
 
 		viper.Set("USER_TOKEN", userToken)
 
diff --git a/cli/cmd/logout.go b/cli/cmd/logout.go
index 68bc8a739..03f03fde3 100644
--- a/cli/cmd/logout.go
+++ b/cli/cmd/logout.go
@@ -64,7 +64,7 @@ var logoutCmd = &cobra.Command{
 			return
 		}
 
-		spinner.Success("User ", nbUserName, " successfully logged out at ", time.Unix((resp.Timestamp/1000000000), 0), ".")
+		spinner.Success("User ", nbUserName, " successfully logged out at ", time.Unix((resp.GetTimestamp()/1000000000), 0), ".")
 	},
 	PostRun: func(cmd *cobra.Command, args []string) {
 		// Necessary for prompt mode. The flag variables have to be resetted,
diff --git a/cli/cmd/networkElementPathDelete.go b/cli/cmd/networkElementPathDelete.go
index 8019b1c7e..46ee60ebd 100644
--- a/cli/cmd/networkElementPathDelete.go
+++ b/cli/cmd/networkElementPathDelete.go
@@ -72,14 +72,14 @@ The network element UUID and request path must be specified as a positional argu
 		if err != nil {
 			spinner.Fail(err)
 
-			for _, r := range resp.Responses {
+			for _, r := range resp.GetResponses() {
 				spinner.Fail("An error occurred while creating a path deletion request for network element with ID: ", r.GetId())
 			}
 
 			return
 		}
 
-		for _, r := range resp.Responses {
+		for _, r := range resp.GetResponses() {
 			spinner.Success("A change for path deletion for network element: ", mneid.String(), "has been created -> Change ID: ", r.GetId())
 		}
 	},
diff --git a/cli/cmd/networkElementPathGet.go b/cli/cmd/networkElementPathGet.go
index f7ab234e4..9c8d23e95 100644
--- a/cli/cmd/networkElementPathGet.go
+++ b/cli/cmd/networkElementPathGet.go
@@ -64,15 +64,15 @@ The network element UUID and request path must be specified as a positional argu
 			return
 		}
 
-		for _, n := range res.MneNotification {
+		for _, n := range res.GetMneNotification() {
 			var panel3 string
 			panel1 := pterm.DefaultBox.WithTitle("Timestamp:").Sprint(n.GetTimestamp())
 			panel2 := pterm.DefaultBox.WithTitle("Requested Path:").Sprint(args[1])
 
-			if len(n.Update) == 0 {
+			if len(n.GetUpdate()) == 0 {
 				panel3 = pterm.DefaultBox.WithTitle("Update:").Sprint("empty value")
 			} else {
-				val := n.Update[0].GetVal()
+				val := n.GetUpdate()[0].GetVal()
 				switch valTyped := val.GetValue().(type) {
 				case *gpb.TypedValue_JsonIetfVal:
 					panel3 = pterm.DefaultBox.WithTitle("Update:").Sprint(string(valTyped.JsonIetfVal))
diff --git a/cli/cmd/networkElementPathGetIntended.go b/cli/cmd/networkElementPathGetIntended.go
index ceb8f50ed..fbec15f7a 100644
--- a/cli/cmd/networkElementPathGetIntended.go
+++ b/cli/cmd/networkElementPathGetIntended.go
@@ -68,14 +68,14 @@ The network element UUID and request path must be specified as a positional argu
 
 		var stringVal = "Update: "
 		var panel3 string
-		for _, n := range res.MneNotification {
+		for _, n := range res.GetMneNotification() {
 			panel1 := pterm.DefaultBox.WithTitle("Timestamp:").Sprint(n.GetTimestamp())
 			panel2 := pterm.DefaultBox.WithTitle("Requested Path:").Sprint(args[1])
 
-			if len(n.Update) == 0 {
+			if len(n.GetUpdate()) == 0 {
 				panel3 = pterm.DefaultBox.WithTitle("Update:").Sprint("empty value")
 			} else {
-				val := n.Update[0].GetVal()
+				val := n.GetUpdate()[0].GetVal()
 				switch valTyped := val.GetValue().(type) {
 				case *gpb.TypedValue_JsonIetfVal:
 					// Note: This is supposed to be a temporary fix to prevent the CLI from blocking during the
diff --git a/cli/cmd/networkElementShow.go b/cli/cmd/networkElementShow.go
index d88365a7a..f154aec54 100644
--- a/cli/cmd/networkElementShow.go
+++ b/cli/cmd/networkElementShow.go
@@ -55,11 +55,11 @@ The actual network element is not queried directly.`,
 
 		mne := resp.GetMne()
 
-		panel1 := pterm.DefaultBox.WithTitle("UUID:").Sprint(mne.Id)
-		panel2 := pterm.DefaultBox.WithTitle("Name:").Sprint(mne.Name)
+		panel1 := pterm.DefaultBox.WithTitle("UUID:").Sprint(mne.GetId())
+		panel2 := pterm.DefaultBox.WithTitle("Name:").Sprint(mne.GetName())
 
-		panel3 := pterm.DefaultBox.WithTitle("Plugin-ID:").Sprint(mne.Plugin.Id)
-		panel4 := pterm.DefaultBox.WithTitle("Manifest:").Sprint(mne.Plugin.Manifest)
+		panel3 := pterm.DefaultBox.WithTitle("Plugin-ID:").Sprint(mne.GetPlugin().GetId())
+		panel4 := pterm.DefaultBox.WithTitle("Manifest:").Sprint(mne.GetPlugin().GetManifest())
 
 		panel5 := pterm.DefaultBox.WithTitle("Plugin:").Sprint(panel3, "\n", panel4)
 
diff --git a/cli/cmd/pndGet.go b/cli/cmd/pndGet.go
index 7fdabe07f..035a66dc0 100644
--- a/cli/cmd/pndGet.go
+++ b/cli/cmd/pndGet.go
@@ -52,10 +52,10 @@ var pndGetCmd = &cobra.Command{
 			return
 		}
 
-		pnd := resp.Pnd
-		panel1 := pterm.DefaultBox.WithTitle("UUID:").Sprint(pnd.Id)
-		panel2 := pterm.DefaultBox.WithTitle("Name:").Sprint(pnd.Name)
-		panel3 := pterm.DefaultBox.WithTitle("Description:").Sprint(pnd.Description)
+		pnd := resp.GetPnd()
+		panel1 := pterm.DefaultBox.WithTitle("UUID:").Sprint(pnd.GetId())
+		panel2 := pterm.DefaultBox.WithTitle("Name:").Sprint(pnd.GetName())
+		panel3 := pterm.DefaultBox.WithTitle("Description:").Sprint(pnd.GetDescription())
 
 		panels, _ := pterm.DefaultPanel.WithPanels(pterm.Panels{
 			{{Data: panel1}},
diff --git a/cli/cmd/pndList.go b/cli/cmd/pndList.go
index d0da1b0a8..ce54cf20d 100644
--- a/cli/cmd/pndList.go
+++ b/cli/cmd/pndList.go
@@ -54,7 +54,7 @@ var pndListCmd = &cobra.Command{
 		}
 
 		data := pterm.TableData{[]string{"UUID", "Name", "Description"}}
-		for _, pnd := range resp.Pnd {
+		for _, pnd := range resp.GetPnd() {
 			data = append(data, []string{pnd.GetId(), pnd.GetName(), pnd.GetDescription()})
 		}
 
diff --git a/cli/cmd/prompt.go b/cli/cmd/prompt.go
index f297fe392..b243b4712 100644
--- a/cli/cmd/prompt.go
+++ b/cli/cmd/prompt.go
@@ -318,7 +318,7 @@ func getNetworkElements() ([]prompt.Suggest, error) {
 	}
 
 	s := []prompt.Suggest{}
-	for _, mne := range resp.Mne {
+	for _, mne := range resp.GetMne() {
 		s = append(s, prompt.Suggest{Text: mne.GetId(), Description: mne.GetName()})
 	}
 	spinner.Success()
@@ -335,7 +335,7 @@ func getAvailablePlugins() ([]prompt.Suggest, error) {
 
 	s := []prompt.Suggest{}
 	for _, plugin := range resp.GetPlugins() {
-		s = append(s, prompt.Suggest{Text: plugin.GetId(), Description: plugin.Manifest.GetName()})
+		s = append(s, prompt.Suggest{Text: plugin.GetId(), Description: plugin.GetManifest().GetName()})
 	}
 	spinner.Success()
 	return completer.SortSuggestionByText(s), nil
@@ -398,7 +398,7 @@ func getPendingChanges() ([]prompt.Suggest, error) {
 
 	s := []prompt.Suggest{}
 	for _, change := range resp {
-		s = append(s, prompt.Suggest{Text: change.GetId(), Description: change.State.String()})
+		s = append(s, prompt.Suggest{Text: change.GetId(), Description: change.GetState().String()})
 	}
 	spinner.Success()
 	return completer.SortSuggestionByText(s), nil
@@ -419,7 +419,7 @@ func getCommittedChanges() ([]prompt.Suggest, error) {
 
 	s := []prompt.Suggest{}
 	for _, change := range resp {
-		s = append(s, prompt.Suggest{Text: change.GetId(), Description: change.State.String()})
+		s = append(s, prompt.Suggest{Text: change.GetId(), Description: change.GetState().String()})
 	}
 	spinner.Success()
 	return completer.SortSuggestionByText(s), nil
diff --git a/cli/cmd/roleGetAll.go b/cli/cmd/roleGetAll.go
index dad97638e..f02019d7c 100644
--- a/cli/cmd/roleGetAll.go
+++ b/cli/cmd/roleGetAll.go
@@ -55,7 +55,7 @@ var roleGetAllCmd = &cobra.Command{
 
 		data := pterm.TableData{[]string{"Name", "ID", "Description", "Permissions"}}
 		for _, role := range resp.GetRoles() {
-			data = append(data, []string{role.Name, role.Id, role.Description}, role.Permissions)
+			data = append(data, []string{role.GetName(), role.GetId(), role.GetDescription()}, role.GetPermissions())
 		}
 
 		spinner.Success()
diff --git a/cli/cmd/subManagementGet.go b/cli/cmd/subManagementGet.go
index 32910766c..d8ca2016c 100644
--- a/cli/cmd/subManagementGet.go
+++ b/cli/cmd/subManagementGet.go
@@ -56,7 +56,7 @@ var subGetCmd = &cobra.Command{
 		spinner.Success()
 
 		data1 := pterm.TableData{[]string{"SubUUID", "MneID", "MneName", "PndID"}}
-		data1 = append(data1, []string{resp.Subscriptions.Subid, resp.Subscriptions.Mneid, resp.Subscriptions.MneName, resp.Subscriptions.Pid})
+		data1 = append(data1, []string{resp.GetSubscriptions().GetSubid(), resp.GetSubscriptions().GetMneid(), resp.GetSubscriptions().GetMneName(), resp.GetSubscriptions().GetPid()})
 		err = pterm.DefaultTable.WithHasHeader().WithData(data1).Render()
 		if err != nil {
 			return
@@ -64,15 +64,15 @@ var subGetCmd = &cobra.Command{
 
 		pterm.Print(pterm.FgLightCyan.Sprintf("Subscribe Options\n"))
 		data2 := pterm.TableData{[]string{"GnmiMode", "GnmiStreamMode", "SampleInterval (ns)"}}
-		data2 = append(data2, []string{resp.Subscriptions.SubscribeOptions.GnmiMode, resp.Subscriptions.SubscribeOptions.GnmiStreamMode, fmt.Sprint(resp.Subscriptions.SubscribeOptions.SampleInterval)})
+		data2 = append(data2, []string{resp.GetSubscriptions().GetSubscribeOptions().GetGnmiMode(), resp.GetSubscriptions().GetSubscribeOptions().GetGnmiStreamMode(), fmt.Sprint(resp.GetSubscriptions().GetSubscribeOptions().GetSampleInterval())})
 		err = pterm.DefaultTable.WithHasHeader().WithData(data2).Render()
 		if err != nil {
 			return
 		}
 
 		data3 := pterm.TableData{[]string{"Paths"}}
-		for _, path := range resp.Subscriptions.Paths {
-			data3 = append(data3, path.Elem)
+		for _, path := range resp.GetSubscriptions().GetPaths() {
+			data3 = append(data3, path.GetElem())
 		}
 
 		err = pterm.DefaultTable.WithHasHeader().WithData(data3).Render()
diff --git a/cli/cmd/subManagementGetAll.go b/cli/cmd/subManagementGetAll.go
index cf844c00d..1558160dd 100644
--- a/cli/cmd/subManagementGetAll.go
+++ b/cli/cmd/subManagementGetAll.go
@@ -54,7 +54,7 @@ var subGetAllCmd = &cobra.Command{
 			return
 		}
 
-		for _, sub := range resp.Subscriptions {
+		for _, sub := range resp.GetSubscriptions() {
 			logrus.Println(sub)
 		}
 
diff --git a/cli/cmd/userGet.go b/cli/cmd/userGet.go
index fa38558ec..360132c7f 100644
--- a/cli/cmd/userGet.go
+++ b/cli/cmd/userGet.go
@@ -58,8 +58,8 @@ var userGetCmd = &cobra.Command{
 			return
 		}
 
-		log.Infof("ID: %v, Name: %v \n", resp.User.Id, resp.User.Name)
-		for key, elem := range resp.User.Roles {
+		log.Infof("ID: %v, Name: %v \n", resp.GetUser().GetId(), resp.GetUser().GetName())
+		for key, elem := range resp.GetUser().GetRoles() {
 			log.Infof("Role on PND: %v %v \n", key, elem)
 		}
 	},
diff --git a/cli/cmd/userGetAll.go b/cli/cmd/userGetAll.go
index f033708a9..c9dc448f1 100644
--- a/cli/cmd/userGetAll.go
+++ b/cli/cmd/userGetAll.go
@@ -52,9 +52,9 @@ var userListCmd = &cobra.Command{
 			return
 		}
 
-		for i, u := range resp.User {
-			log.Infof("User %v: ID: %v, Name: %v \n", i+1, u.Id, u.Name)
-			for key, elem := range u.Roles {
+		for i, u := range resp.GetUser() {
+			log.Infof("User %v: ID: %v, Name: %v \n", i+1, u.GetId(), u.GetName())
+			for key, elem := range u.GetRoles() {
 				log.Infof("Role on PND: %v %v \n", key, elem)
 			}
 		}
diff --git a/cli/cmd/userUpdate.go b/cli/cmd/userUpdate.go
index 8335070ca..42a75bc24 100644
--- a/cli/cmd/userUpdate.go
+++ b/cli/cmd/userUpdate.go
@@ -71,7 +71,7 @@ var userUpdateCmd = &cobra.Command{
 		users := []*apb.UpdateUser{
 			{
 				Id:       nbUserID,
-				Metadata: existingUser.User.Metadata,
+				Metadata: existingUser.GetUser().GetMetadata(),
 				Name:     nbUserName,
 				Password: nbUserPwd,
 				Roles:    roles,
diff --git a/controller/api/api_test.go b/controller/api/api_test.go
index 1ed6787c9..352446a9b 100644
--- a/controller/api/api_test.go
+++ b/controller/api/api_test.go
@@ -72,7 +72,7 @@ func Test_GetPnd(t *testing.T) {
 		t.Error(err)
 		return
 	}
-	got := resp.Pnd.Id
+	got := resp.GetPnd().GetId()
 	if got != pndID {
 		t.Errorf("PND ID is %v, expected %v", got, pndID)
 	}
diff --git a/controller/api/auth_test.go b/controller/api/auth_test.go
index 868ee4ba1..44c7d70b1 100644
--- a/controller/api/auth_test.go
+++ b/controller/api/auth_test.go
@@ -57,7 +57,7 @@ func TestLogin(t *testing.T) {
 			}
 
 			if got != nil {
-				if got.Token == "" {
+				if got.GetToken() == "" {
 					t.Errorf("Auth.Login() = %v, want non empty token", got)
 				}
 			}
diff --git a/controller/api/grpc.go b/controller/api/grpc.go
index 76ae474e0..e876e7233 100644
--- a/controller/api/grpc.go
+++ b/controller/api/grpc.go
@@ -28,8 +28,8 @@ func Init(ctx context.Context, addr string) error {
 		return err
 	}
 
-	if len(resp.Pnd) > 0 {
-		pid := resp.Pnd[0].Id
+	if len(resp.GetPnd()) > 0 {
+		pid := resp.GetPnd()[0].GetId()
 		viper.Set("CLI_PND", pid)
 		log.Infof("PND: %v", pid)
 	}
@@ -43,7 +43,7 @@ func GetIds(ctx context.Context, addr string) ([]*ppb.PrincipalNetworkDomain, er
 	if err != nil {
 		return nil, err
 	}
-	return resp.Pnd, nil
+	return resp.GetPnd(), nil
 }
 
 // GetAllPnds requests all PNDs.
diff --git a/controller/api/managedNetworkElement.go b/controller/api/managedNetworkElement.go
index 0cc5fdeca..0e4711653 100644
--- a/controller/api/managedNetworkElement.go
+++ b/controller/api/managedNetworkElement.go
@@ -37,7 +37,7 @@ func AddNetworkElement(ctx context.Context, addr, mneName, mneUUID string, opt *
 		},
 		Pid: pid.String(),
 	}
-	switch t := opt.Type; t {
+	switch t := opt.GetType(); t {
 	case spb.Type_TYPE_CONTAINERISED, spb.Type_TYPE_PLUGIN:
 		req.Mne[0].TransportOption.Type = t
 	default:
diff --git a/controller/api/plugin.go b/controller/api/plugin.go
index 8eed1aba0..97dd13957 100644
--- a/controller/api/plugin.go
+++ b/controller/api/plugin.go
@@ -68,7 +68,7 @@ func GetPluginSchemaTree(ctx context.Context, addr string, pluginID uuid.UUID) (
 
 			return map[string]*yang.Entry{}, err
 		}
-		sTreeBytes = append(sTreeBytes, payload.Chunk...)
+		sTreeBytes = append(sTreeBytes, payload.GetChunk()...)
 	}
 
 	sTreeMap, err := ygot.GzipToSchema(sTreeBytes)
diff --git a/controller/api/role_test.go b/controller/api/role_test.go
index 546fbc577..52c7e4407 100644
--- a/controller/api/role_test.go
+++ b/controller/api/role_test.go
@@ -101,7 +101,7 @@ func TestGetRole(t *testing.T) {
 			}
 
 			if got != nil {
-				if got.Role.Name != tt.want.Role.Name || got.Role.Description != tt.want.Role.Description {
+				if got.GetRole().GetName() != tt.want.GetRole().GetName() || got.GetRole().GetDescription() != tt.want.GetRole().GetDescription() {
 					t.Errorf("Role.GetRole() = %v, want %v", got, tt.want)
 				}
 			} else {
@@ -173,15 +173,15 @@ func TestGetRoles(t *testing.T) {
 			}
 
 			if got != nil {
-				if len(got.Roles) != 3 {
+				if len(got.GetRoles()) != 3 {
 					t.Errorf("Role.GetRoles() = %v, want %v", got, tt.want)
 				}
-				for _, gotR := range got.Roles {
+				for _, gotR := range got.GetRoles() {
 					containsExpected := false
-					for _, wantR := range tt.want.Roles {
-						gotPerm := gotR.Permissions
-						wantPerm := wantR.Permissions
-						if gotR.Description == wantR.Description && gotR.Name == wantR.Name &&
+					for _, wantR := range tt.want.GetRoles() {
+						gotPerm := gotR.GetPermissions()
+						wantPerm := wantR.GetPermissions()
+						if gotR.GetDescription() == wantR.GetDescription() && gotR.GetName() == wantR.GetName() &&
 							reflect.DeepEqual(gotPerm, wantPerm) {
 							containsExpected = true
 							break
diff --git a/controller/api/user_test.go b/controller/api/user_test.go
index a0a7e756b..a1af52c7a 100644
--- a/controller/api/user_test.go
+++ b/controller/api/user_test.go
@@ -109,7 +109,7 @@ func TestGetUser(t *testing.T) {
 			}
 
 			if got != nil {
-				if got.User.Name != tt.want.User.Name || got.User.Id != tt.want.User.Id {
+				if got.GetUser().GetName() != tt.want.GetUser().GetName() || got.GetUser().GetId() != tt.want.GetUser().GetId() {
 					t.Errorf("GetUser() = %v, want %v", got, tt.want)
 				}
 			} else {
@@ -164,14 +164,14 @@ func TestGetAllUsers(t *testing.T) {
 			}
 
 			if got != nil {
-				if len(got.User) != tt.wantLen {
+				if len(got.GetUser()) != tt.wantLen {
 					t.Errorf("User.GetUsers() = %v, want %v", got, tt.want)
 				}
 
-				for _, gotU := range got.User {
+				for _, gotU := range got.GetUser() {
 					containsExpected := false
-					for _, wantU := range tt.want.User {
-						if gotU.Name == wantU.Name {
+					for _, wantU := range tt.want.GetUser() {
+						if gotU.GetName() == wantU.GetName() {
 							containsExpected = true
 							break
 						}
diff --git a/controller/northbound/server/app.go b/controller/northbound/server/app.go
index a74c4d37e..7c6093b10 100644
--- a/controller/northbound/server/app.go
+++ b/controller/northbound/server/app.go
@@ -34,12 +34,12 @@ func (a *AppServer) Register(ctx context.Context, request *apb.AppRegisterReques
 		return nil, status.Errorf(codes.Aborted, "%v", err)
 	}
 
-	app, err := a.appService.Register(request.Appname, request.Token)
+	app, err := a.appService.Register(request.GetAppname(), request.GetToken())
 	if err != nil {
 		return nil, err
 	}
 
-	log.Infof("app %s registered", request.Appname)
+	log.Infof("app %s registered", request.GetAppname())
 
 	return &apb.AppRegisterResponse{
 		Timestamp:       time.Now().UnixNano(),
@@ -53,7 +53,7 @@ func (a *AppServer) Deregister(ctx context.Context, request *apb.AppDeregisterRe
 		return nil, status.Errorf(codes.Aborted, "%v", err)
 	}
 
-	err := a.appService.Deregister(request.Appname)
+	err := a.appService.Deregister(request.GetAppname())
 	if err != nil {
 		return nil, err
 	}
diff --git a/controller/northbound/server/auth.go b/controller/northbound/server/auth.go
index 5ef414023..70a9e434f 100644
--- a/controller/northbound/server/auth.go
+++ b/controller/northbound/server/auth.go
@@ -72,8 +72,8 @@ func (s AuthServer) Login(ctx context.Context, request *apb.LoginRequest) (*apb.
 	}
 
 	user := rbac.User{
-		UserName: request.Username,
-		Password: request.Pwd,
+		UserName: request.GetUsername(),
+		Password: request.GetPwd(),
 	}
 
 	// validation of credentials
@@ -120,7 +120,7 @@ func (s AuthServer) Logout(ctx context.Context, request *apb.LogoutRequest) (*ap
 		return nil, err
 	}
 
-	err = s.handleLogout(ctx, request.Username)
+	err = s.handleLogout(ctx, request.GetUsername())
 	if err != nil {
 		return nil, err
 	}
diff --git a/controller/northbound/server/auth_interceptor_test.go b/controller/northbound/server/auth_interceptor_test.go
index 5571d010f..128075a46 100644
--- a/controller/northbound/server/auth_interceptor_test.go
+++ b/controller/northbound/server/auth_interceptor_test.go
@@ -179,8 +179,8 @@ func TestAuthInterceptor_Unary(t *testing.T) {
 				// Todo: check why we don't hit this.
 				// fmt.Printf("Got.User %+v", got.User)
 
-				if got.User[0].Name == tt.want.Name {
-					t.Errorf("Got user = %s, want %v", got.User[0].Name, tt.want.Name)
+				if got.GetUser()[0].GetName() == tt.want.GetName() {
+					t.Errorf("Got user = %s, want %v", got.GetUser()[0].GetName(), tt.want.GetName())
 					return
 				}
 			}
diff --git a/controller/northbound/server/auth_test.go b/controller/northbound/server/auth_test.go
index 956ef2be1..07c0bacb9 100644
--- a/controller/northbound/server/auth_test.go
+++ b/controller/northbound/server/auth_test.go
@@ -116,7 +116,7 @@ func TestAuth_Login(t *testing.T) {
 			}
 
 			if resp != nil {
-				got := resp.Token
+				got := resp.GetToken()
 				if got == "" {
 					t.Errorf("Auth.Login() = %v, want non empty token", got)
 				}
diff --git a/controller/northbound/server/configurationmanagement.go b/controller/northbound/server/configurationmanagement.go
index 3b2aac5d3..fb3909274 100644
--- a/controller/northbound/server/configurationmanagement.go
+++ b/controller/northbound/server/configurationmanagement.go
@@ -86,7 +86,7 @@ func (c ConfigurationManagementServer) ExportSDNConfig(ctx context.Context, requ
 
 	var sdnConfig = sdnConfig{}
 	var err error
-	sdnConfig.PndID = request.Pid
+	sdnConfig.PndID = request.GetPid()
 
 	sdnConfig.NetworkElements, err = c.mneService.GetAll()
 	if err != nil {
@@ -125,9 +125,9 @@ func (c ConfigurationManagementServer) ImportSDNConfig(ctx context.Context, requ
 		return nil, status.Errorf(codes.Aborted, "%v", err)
 	}
 
-	pndUUID := uuid.MustParse(request.Pid)
+	pndUUID := uuid.MustParse(request.GetPid())
 	var sdnConfig = loadedSDNConfig{}
-	err := json.Unmarshal([]byte(request.SdnConfigData), &sdnConfig)
+	err := json.Unmarshal([]byte(request.GetSdnConfigData()), &sdnConfig)
 	if err != nil {
 		return nil, err
 	}
diff --git a/controller/northbound/server/csbi.go b/controller/northbound/server/csbi.go
index 14ba9a371..a3746ff17 100644
--- a/controller/northbound/server/csbi.go
+++ b/controller/northbound/server/csbi.go
@@ -45,7 +45,7 @@ func (s CsbiServer) Hello(ctx context.Context, syn *cpb.Syn) (*cpb.Ack, error) {
 		return nil, status.Errorf(codes.Aborted, "%v", err)
 	}
 
-	ch, err := s.pndStore.PendingChannels(store.FromString(syn.Id))
+	ch, err := s.pndStore.PendingChannels(store.FromString(syn.GetId()))
 	if err != nil {
 		return nil, handleRPCError(labels, err)
 	}
@@ -60,11 +60,11 @@ func (s CsbiServer) Hello(ctx context.Context, syn *cpb.Syn) (*cpb.Ack, error) {
 		return nil, status.Errorf(codes.Aborted, "%v", err)
 	}
 	ch <- networkelement.Details{
-		ID:      syn.Id,
-		Address: net.JoinHostPort(csbiAddress, syn.Address),
+		ID:      syn.GetId(),
+		Address: net.JoinHostPort(csbiAddress, syn.GetAddress()),
 	}
 	details := <-ch
-	log.Infof("ack to csbi %v", syn.Id)
+	log.Infof("ack to csbi %v", syn.GetId())
 	log.WithField("transport option", details.TransportOption).Debug("csbi ack transport options")
 	return &cpb.Ack{
 		Timestamp:       time.Now().UnixNano(),
diff --git a/controller/northbound/server/networkElement.go b/controller/northbound/server/networkElement.go
index 4a3db1c4f..2c60af4cf 100644
--- a/controller/northbound/server/networkElement.go
+++ b/controller/northbound/server/networkElement.go
@@ -73,12 +73,12 @@ func (n *NetworkElementServer) Update(ctx context.Context, request *mnepb.Update
 		return nil, status.Errorf(codes.Aborted, "%v", err)
 	}
 
-	mneID, err := uuid.Parse(request.NetworkElement.Id)
+	mneID, err := uuid.Parse(request.GetNetworkElement().GetId())
 	if err != nil {
 		return nil, err
 	}
 
-	err = n.mneService.UpdateModel(mneID, request.NetworkElement.Model)
+	err = n.mneService.UpdateModel(mneID, request.GetNetworkElement().GetModel())
 	if err != nil {
 		return nil, err
 	}
@@ -108,13 +108,13 @@ func (n *NetworkElementServer) Get(ctx context.Context, request *mnepb.GetReques
 	start := metrics.StartHook(labels, grpcRequestsTotal)
 	defer metrics.FinishHook(labels, start, grpcRequestDurationSecondsTotal, grpcRequestDurationSeconds)
 
-	pnd, err := n.getPnd(request.Pid)
+	pnd, err := n.getPnd(request.GetPid())
 	if err != nil {
 		log.Error(err)
 		return nil, status.Errorf(codes.Aborted, "%v", err)
 	}
 
-	networkElement, err := n.getMne(request.Mneid)
+	networkElement, err := n.getMne(request.GetMneid())
 	if err != nil {
 		log.Error(err)
 		return nil, status.Errorf(codes.Aborted, "%v", err)
@@ -165,7 +165,7 @@ func (n *NetworkElementServer) GetFlattened(ctx context.Context, request *mnepb.
 	start := metrics.StartHook(labels, grpcRequestsTotal)
 	defer metrics.FinishHook(labels, start, grpcRequestDurationSecondsTotal, grpcRequestDurationSeconds)
 
-	networkElement, err := n.getMne(request.Mneid)
+	networkElement, err := n.getMne(request.GetMneid())
 	if err != nil {
 		log.Error(err)
 		return nil, status.Errorf(codes.Aborted, "%v", err)
@@ -226,7 +226,7 @@ func (n *NetworkElementServer) GetAll(ctx context.Context, request *mnepb.GetAll
 	start := metrics.StartHook(labels, grpcRequestsTotal)
 	defer metrics.FinishHook(labels, start, grpcRequestDurationSecondsTotal, grpcRequestDurationSeconds)
 
-	pnd, err := n.getPnd(request.Pid)
+	pnd, err := n.getPnd(request.GetPid())
 	if err != nil {
 		log.Error(err)
 		return nil, status.Errorf(codes.Aborted, "%v", err)
@@ -280,7 +280,7 @@ func (n *NetworkElementServer) GetAllFlattened(ctx context.Context, request *mne
 	start := metrics.StartHook(labels, grpcRequestsTotal)
 	defer metrics.FinishHook(labels, start, grpcRequestDurationSecondsTotal, grpcRequestDurationSeconds)
 
-	pnd, err := n.getPnd(request.Pid)
+	pnd, err := n.getPnd(request.GetPid())
 	if err != nil {
 		log.Error(err)
 		return nil, status.Errorf(codes.Aborted, "%v", err)
@@ -359,20 +359,20 @@ func (n *NetworkElementServer) GetPath(ctx context.Context, request *mnepb.GetPa
 	start := metrics.StartHook(labels, grpcRequestsTotal)
 	defer metrics.FinishHook(labels, start, grpcRequestDurationSecondsTotal, grpcRequestDurationSeconds)
 
-	pnd, err := n.getPnd(request.Pid)
+	pnd, err := n.getPnd(request.GetPid())
 	if err != nil {
 		log.Error(err)
 		return nil, status.Errorf(codes.Aborted, "%v", err)
 	}
 
-	networkElement, err := n.getMne(request.Mneid)
+	networkElement, err := n.getMne(request.GetMneid())
 	if err != nil {
 		log.Error(err)
 		return nil, status.Errorf(codes.Aborted, "%v", err)
 	}
 
 	// In case we get the path from grpc-gateway we have to replace
-	path := strings.ReplaceAll(request.Path, "||", "/")
+	path := strings.ReplaceAll(request.GetPath(), "||", "/")
 
 	resp, err := n.getPath(ctx, networkElement, path)
 	if err != nil {
@@ -387,7 +387,7 @@ func (n *NetworkElementServer) GetPath(ctx context.Context, request *mnepb.GetPa
 			Name:        pnd.GetName(),
 			Description: pnd.GetDescription(),
 		},
-		MneNotification: resp.Notification,
+		MneNotification: resp.GetNotification(),
 	}, nil
 }
 
@@ -422,16 +422,16 @@ func (n *NetworkElementServer) GetIntendedPath(ctx context.Context, request *mne
 		return nil, status.Errorf(codes.Aborted, "%v", err)
 	}
 
-	pnd, err := n.getPnd(request.Pid)
+	pnd, err := n.getPnd(request.GetPid())
 	if err != nil {
 		log.Error(err)
 		return nil, status.Errorf(codes.Aborted, "%v", err)
 	}
 
 	// In case we get the path from grpc-gateway we have to replace
-	intendedPath := strings.ReplaceAll(request.IntendedPath, "||", "/")
+	intendedPath := strings.ReplaceAll(request.GetIntendedPath(), "||", "/")
 
-	networkElement, err := n.getMne(request.Mneid)
+	networkElement, err := n.getMne(request.GetMneid())
 	if err != nil {
 		log.Error(err)
 		return nil, status.Errorf(codes.Aborted, "%v", err)
@@ -451,7 +451,7 @@ func (n *NetworkElementServer) GetIntendedPath(ctx context.Context, request *mne
 			Name:        pnd.GetName(),
 			Description: pnd.GetDescription(),
 		},
-		MneNotification: mne.MneNotification,
+		MneNotification: mne.GetMneNotification(),
 	}, nil
 }
 
@@ -465,13 +465,13 @@ func (n *NetworkElementServer) GetChange(ctx context.Context, request *mnepb.Get
 	start := metrics.StartHook(labels, grpcRequestsTotal)
 	defer metrics.FinishHook(labels, start, grpcRequestDurationSecondsTotal, grpcRequestDurationSeconds)
 
-	pnd, err := n.getPnd(request.Pid)
+	pnd, err := n.getPnd(request.GetPid())
 	if err != nil {
 		log.Error(err)
 		return nil, status.Errorf(codes.Aborted, "%v", err)
 	}
 
-	changes, err := n.fillChanges(false, request.Cuid...)
+	changes, err := n.fillChanges(false, request.GetCuid()...)
 	if err != nil {
 		log.Error(err)
 		return nil, status.Errorf(codes.Aborted, "%v", err)
@@ -498,7 +498,7 @@ func (n *NetworkElementServer) GetChangeList(ctx context.Context, request *mnepb
 	start := metrics.StartHook(labels, grpcRequestsTotal)
 	defer metrics.FinishHook(labels, start, grpcRequestDurationSecondsTotal, grpcRequestDurationSeconds)
 
-	pnd, err := n.getPnd(request.Pid)
+	pnd, err := n.getPnd(request.GetPid())
 	if err != nil {
 		log.Error(err)
 		return nil, status.Errorf(codes.Aborted, "%v", err)
@@ -584,28 +584,28 @@ func (n *NetworkElementServer) AddList(ctx context.Context, request *mnepb.AddLi
 	start := metrics.StartHook(labels, grpcRequestsTotal)
 	defer metrics.FinishHook(labels, start, grpcRequestDurationSecondsTotal, grpcRequestDurationSeconds)
 
-	pndID, err := uuid.Parse(request.Pid)
+	pndID, err := uuid.Parse(request.GetPid())
 	if err != nil {
 		log.Error(err)
 		return nil, status.Errorf(codes.Aborted, "%v", err)
 	}
 
-	networkElementIDs := make([]uuid.UUID, 0, len(request.Mne))
-	for _, r := range request.Mne {
+	networkElementIDs := make([]uuid.UUID, 0, len(request.GetMne()))
+	for _, r := range request.GetMne() {
 		pluginId, err := uuid.Parse(r.GetPluginId())
 		if err != nil {
 			log.Error(err)
 			return nil, status.Errorf(codes.Aborted, "%v", err)
 		}
 
-		gNMISubscriptionPaths := n.get2dSlicePathsFrom1dPaths(r.GnmiSubscribePaths)
+		gNMISubscriptionPaths := n.get2dSlicePathsFrom1dPaths(r.GetGnmiSubscribePaths())
 
-		mneID, err := uuid.Parse(r.MneId)
+		mneID, err := uuid.Parse(r.GetMneId())
 		if err != nil {
-			log.Errorf("Error parsing UUID: %v. For: %v, ", r.MneId, r.MneName)
+			log.Errorf("Error parsing UUID: %v. For: %v, ", r.GetMneId(), r.GetMneName())
 		}
 
-		mneID, err = n.addMne(ctx, r.MneName, r.TransportOption, nil, pluginId, pndID, gNMISubscriptionPaths, mneID)
+		mneID, err = n.addMne(ctx, r.GetMneName(), r.GetTransportOption(), nil, pluginId, pndID, gNMISubscriptionPaths, mneID)
 		if err != nil {
 			log.Error(err)
 			return nil, status.Errorf(codes.Aborted, "%v", err)
@@ -715,15 +715,15 @@ func (n *NetworkElementServer) SetChangeList(ctx context.Context, request *mnepb
 		return nil, status.Errorf(codes.Aborted, "%v", err)
 	}
 
-	responses := make([]*mnepb.SetResponse, len(request.Change))
+	responses := make([]*mnepb.SetResponse, len(request.GetChange()))
 
-	for i, r := range request.Change {
-		cuid, err := uuid.Parse(r.Cuid)
+	for i, r := range request.GetChange() {
+		cuid, err := uuid.Parse(r.GetCuid())
 		if err != nil {
 			log.Error(err)
 			return nil, status.Errorf(codes.Aborted, "%v", err)
 		}
-		switch r.Op {
+		switch r.GetOp() {
 		case mnepb.Operation_OPERATION_COMMIT:
 			if err := n.Commit(cuid); err != nil {
 				log.Error(err)
@@ -736,7 +736,7 @@ func (n *NetworkElementServer) SetChangeList(ctx context.Context, request *mnepb
 			}
 		default:
 			return nil, &customerrs.InvalidParametersError{
-				Param: r.Op,
+				Param: r.GetOp(),
 			}
 		}
 
@@ -804,13 +804,13 @@ func (n *NetworkElementServer) SetPathList(ctx context.Context, request *mnepb.S
 		return nil, status.Errorf(codes.Aborted, "%v", err)
 	}
 
-	responses := make([]*mnepb.SetResponse, len(request.ChangeRequest))
+	responses := make([]*mnepb.SetResponse, len(request.GetChangeRequest()))
 
-	for i, r := range request.ChangeRequest {
+	for i, r := range request.GetChangeRequest() {
 		var cid uuid.UUID
 		var err error
 
-		mneID, err := uuid.Parse(r.Mneid)
+		mneID, err := uuid.Parse(r.GetMneid())
 		if err != nil {
 			log.Error(err)
 			return nil, status.Errorf(codes.Aborted, "%v", err)
@@ -818,7 +818,7 @@ func (n *NetworkElementServer) SetPathList(ctx context.Context, request *mnepb.S
 
 		// NOTE: Could be useful to split method into two, one for
 		// update/replace and on for delete.
-		cid, err = n.ChangeMNE(mneID, r.ApiOp, r.Path, r.Value)
+		cid, err = n.ChangeMNE(mneID, r.GetApiOp(), r.GetPath(), r.GetValue())
 		if err != nil {
 			log.Error(err)
 			return nil, status.Errorf(codes.Aborted, "%v", err)
@@ -891,7 +891,7 @@ func (n *NetworkElementServer) Delete(ctx context.Context, request *mnepb.Delete
 		return nil, status.Errorf(codes.Aborted, "%v", err)
 	}
 
-	mneID, err := uuid.Parse(request.Mneid)
+	mneID, err := uuid.Parse(request.GetMneid())
 	if err != nil {
 		log.Error(err)
 		return nil, status.Errorf(codes.Aborted, "%v", err)
@@ -931,13 +931,13 @@ func (n *NetworkElementServer) deleteMne(id uuid.UUID) error {
 
 // SubscribePath subscribes to specifc paths of an mne.
 func (n *NetworkElementServer) SubscribePath(request *mnepb.SubscribePathRequest, stream mnepb.NetworkElementService_SubscribePathServer) error {
-	networkElement, err := n.getMne(request.Mneid)
+	networkElement, err := n.getMne(request.GetMneid())
 	if err != nil {
 		log.Error(err)
 		return status.Errorf(codes.Aborted, "%v", err)
 	}
 
-	if err := n.subscribePath(networkElement, request.Sublist); err != nil {
+	if err := n.subscribePath(networkElement, request.GetSublist()); err != nil {
 		return err
 	}
 
@@ -950,7 +950,7 @@ func (n *NetworkElementServer) subscribePath(networkElement networkelement.Netwo
 		return err
 	}
 
-	for _, sub := range subList.Subscription {
+	for _, sub := range subList.GetSubscription() {
 		streamMode, err := n.mapStreamModeToAristaFork(sub.GetStreamMode())
 		if err != nil {
 			return err
@@ -960,7 +960,7 @@ func (n *NetworkElementServer) subscribePath(networkElement networkelement.Netwo
 			Mode:           mode,
 			StreamMode:     streamMode,
 			Paths:          [][]string{n.splitStringPath(sub.GetPath())},
-			SampleInterval: sub.SampleInterval,
+			SampleInterval: sub.GetSampleInterval(),
 		}
 
 		ctx := context.Background()
diff --git a/controller/northbound/server/pnd.go b/controller/northbound/server/pnd.go
index 9933264d2..4ac93310a 100644
--- a/controller/northbound/server/pnd.go
+++ b/controller/northbound/server/pnd.go
@@ -57,7 +57,7 @@ func (s PndServer) GetPnd(ctx context.Context, request *ppb.GetPndRequest) (*ppb
 		return nil, status.Errorf(codes.Aborted, "%v", err)
 	}
 
-	pndID, err := uuid.Parse(request.Pid)
+	pndID, err := uuid.Parse(request.GetPid())
 	if err != nil {
 		return nil, handleRPCError(labels, err)
 	}
@@ -118,8 +118,8 @@ func (s PndServer) CreatePndList(ctx context.Context, request *ppb.CreatePndList
 		return nil, status.Errorf(codes.Aborted, "%v", err)
 	}
 
-	for _, r := range request.Pnd {
-		pnd := nucleus.NewPND(uuid.New(), r.Name, r.Description)
+	for _, r := range request.GetPnd() {
+		pnd := nucleus.NewPND(uuid.New(), r.GetName(), r.GetDescription())
 
 		if err := s.pndService.Add(pnd); err != nil {
 			return nil, handleRPCError(labels, err)
@@ -140,7 +140,7 @@ func (s PndServer) DeletePnd(ctx context.Context, request *ppb.DeletePndRequest)
 		return nil, status.Errorf(codes.Aborted, "%v", err)
 	}
 
-	pndID, err := uuid.Parse(request.Pid)
+	pndID, err := uuid.Parse(request.GetPid())
 	if err != nil {
 		return nil, handleRPCError(labels, err)
 	}
diff --git a/controller/northbound/server/pnd_test.go b/controller/northbound/server/pnd_test.go
index bc42ffce0..225c4cfed 100644
--- a/controller/northbound/server/pnd_test.go
+++ b/controller/northbound/server/pnd_test.go
@@ -143,7 +143,7 @@ func Test_Pnd_Set(t *testing.T) {
 				t.Errorf("pnd.Set() error = %v, wantErr %v", err, tt.wantErr)
 				return
 			}
-			tt.want.Timestamp = got.Timestamp
+			tt.want.Timestamp = got.GetTimestamp()
 			if !reflect.DeepEqual(got, tt.want) {
 				t.Errorf("pnd.Set() = %v, want %v", got, tt.want)
 			}
@@ -189,9 +189,9 @@ func Test_Pnd_GetPnd(t *testing.T) {
 
 			if tt.name == "default" {
 				got := []string{
-					resp.Pnd.Id,
-					resp.Pnd.Name,
-					resp.Pnd.Description,
+					resp.GetPnd().GetId(),
+					resp.GetPnd().GetName(),
+					resp.GetPnd().GetDescription(),
 				}
 				if !reflect.DeepEqual(got, tt.want) {
 					t.Errorf("pnd.GetPnd() = %v, want %v", got, tt.want)
@@ -232,7 +232,7 @@ func Test_Pnd_GetPndList(t *testing.T) {
 				t.Errorf("pnd.GetPndList() error = %v, wantErr %v", err, tt.wantErr)
 				return
 			}
-			length := len(resp.Pnd)
+			length := len(resp.GetPnd())
 			if tt.length != length {
 				t.Errorf("pnd.GetPndList() = %v, want %v", length, tt.length)
 			}
diff --git a/controller/northbound/server/role.go b/controller/northbound/server/role.go
index 2d3de09de..581f7d18e 100644
--- a/controller/northbound/server/role.go
+++ b/controller/northbound/server/role.go
@@ -70,13 +70,13 @@ func (r RoleServer) CreateRoles(ctx context.Context, request *apb.CreateRolesReq
 		return nil, err
 	}
 
-	for _, rrole := range request.Roles {
-		roleID, err := uuid.Parse(rrole.Id)
+	for _, rrole := range request.GetRoles() {
+		roleID, err := uuid.Parse(rrole.GetId())
 		if err != nil {
 			roleID = uuid.New()
 		}
 
-		role := rbac.NewRole(roleID, rrole.Name, rrole.Description, rrole.Permissions)
+		role := rbac.NewRole(roleID, rrole.GetName(), rrole.GetDescription(), rrole.GetPermissions())
 
 		err = r.roleService.Add(role)
 		if err != nil {
@@ -101,12 +101,12 @@ func (r RoleServer) GetRole(ctx context.Context, request *apb.GetRoleRequest) (*
 		return nil, err
 	}
 
-	roleID, err := uuid.Parse(request.Id)
+	roleID, err := uuid.Parse(request.GetId())
 	if err != nil {
 		return nil, fmt.Errorf("could not parse role uuid")
 	}
 
-	roleData, err := r.roleService.Get(store.Query{Name: request.RoleName, ID: roleID})
+	roleData, err := r.roleService.Get(store.Query{Name: request.GetRoleName(), ID: roleID})
 	if err != nil {
 		return nil, err
 	}
@@ -167,8 +167,8 @@ func (r RoleServer) UpdateRoles(ctx context.Context, request *apb.UpdateRolesReq
 		return nil, err
 	}
 
-	for _, role := range request.Roles {
-		rid, err := uuid.Parse(role.Id)
+	for _, role := range request.GetRoles() {
+		rid, err := uuid.Parse(role.GetId())
 		if err != nil {
 			return nil, handleRPCError(labels, err)
 		}
@@ -177,7 +177,7 @@ func (r RoleServer) UpdateRoles(ctx context.Context, request *apb.UpdateRolesReq
 			return nil, status.Errorf(codes.Canceled, "role not found %v", err)
 		}
 
-		roleToUpdate := rbac.NewRole(rid, role.Name, role.Description, role.Permissions)
+		roleToUpdate := rbac.NewRole(rid, role.GetName(), role.GetDescription(), role.GetPermissions())
 		err = r.roleService.Update(roleToUpdate)
 		if err != nil {
 			return nil, status.Errorf(codes.Aborted, "could not update role %v", err)
@@ -200,7 +200,7 @@ func (r RoleServer) DeletePermissionsForRole(ctx context.Context, request *apb.D
 		return nil, err
 	}
 
-	roleToUpdate, err := r.roleService.Get(store.Query{Name: request.RoleName})
+	roleToUpdate, err := r.roleService.Get(store.Query{Name: request.GetRoleName()})
 	if err != nil {
 		return nil, status.Errorf(codes.Canceled, "role not found %v", err)
 	}
@@ -209,7 +209,7 @@ func (r RoleServer) DeletePermissionsForRole(ctx context.Context, request *apb.D
 	// in the provided set of permissions to delete
 	nonFound := true
 	for _, perm := range roleToUpdate.GetPermissions() {
-		for _, permToDelete := range request.PermissionsToDelete {
+		for _, permToDelete := range request.GetPermissionsToDelete() {
 			if perm == permToDelete {
 				nonFound = false
 				break
@@ -224,7 +224,7 @@ func (r RoleServer) DeletePermissionsForRole(ctx context.Context, request *apb.D
 	}
 
 	// updates the existing role with the trimmed set of permissions
-	roleToUpdate.RemovePermissionsFromRole(request.PermissionsToDelete)
+	roleToUpdate.RemovePermissionsFromRole(request.GetPermissionsToDelete())
 	err = r.roleService.Update(roleToUpdate)
 	if err != nil {
 		return nil, status.Errorf(codes.Aborted, "could not update role %v", err)
@@ -246,7 +246,7 @@ func (r RoleServer) DeleteRoles(ctx context.Context, request *apb.DeleteRolesReq
 		return nil, err
 	}
 
-	for _, role := range request.RoleName {
+	for _, role := range request.GetRoleName() {
 		roleToDelete, err := r.roleService.Get(store.Query{Name: role})
 		if err != nil {
 			return nil, status.Errorf(codes.Canceled, "role not found")
diff --git a/controller/northbound/server/role_test.go b/controller/northbound/server/role_test.go
index 2d75e0678..731d0e94d 100644
--- a/controller/northbound/server/role_test.go
+++ b/controller/northbound/server/role_test.go
@@ -223,7 +223,7 @@ func TestRole_GetRole(t *testing.T) {
 			}
 
 			if got != nil {
-				if got.Role.Name != tt.want.Role.Name || got.Role.Description != tt.want.Role.Description {
+				if got.GetRole().GetName() != tt.want.GetRole().GetName() || got.GetRole().GetDescription() != tt.want.GetRole().GetDescription() {
 					t.Errorf("Role.GetRole() = %v, want %v", got, tt.want)
 				}
 			} else {
@@ -293,15 +293,15 @@ func TestRole_GetRoles(t *testing.T) {
 			}
 
 			if got != nil {
-				if len(got.Roles) != tt.wantLen {
+				if len(got.GetRoles()) != tt.wantLen {
 					t.Errorf("Role.GetRoles() = %v, want %v", got, tt.want)
 				}
-				for _, gotR := range got.Roles {
+				for _, gotR := range got.GetRoles() {
 					containsExpected := false
-					for _, wantR := range tt.want.Roles {
-						gotPerm := gotR.Permissions
-						wantPerm := wantR.Permissions
-						if gotR.Description == wantR.Description && gotR.Name == wantR.Name &&
+					for _, wantR := range tt.want.GetRoles() {
+						gotPerm := gotR.GetPermissions()
+						wantPerm := wantR.GetPermissions()
+						if gotR.GetDescription() == wantR.GetDescription() && gotR.GetName() == wantR.GetName() &&
 							reflect.DeepEqual(gotPerm, wantPerm) {
 							containsExpected = true
 							break
diff --git a/controller/northbound/server/route.go b/controller/northbound/server/route.go
index eff0d4a9e..fdac8412b 100644
--- a/controller/northbound/server/route.go
+++ b/controller/northbound/server/route.go
@@ -51,19 +51,19 @@ func (t *RoutingTableServiceServer) AddRoutingTable(
 
 	routes := []routingtables.Route{}
 
-	for _, incomingRoute := range request.RoutingTable.Routes {
+	for _, incomingRoute := range request.GetRoutingTable().GetRoutes() {
 		routes = append(routes, routingtables.Route{
-			ID:            getExistingOrCreateNilUUIDFromString(incomingRoute.Id),
-			TargetIPRange: incomingRoute.TargetIPRange,
-			NextHopIP:     incomingRoute.NextHopIP,
-			Metric:        incomingRoute.Metric,
-			PortID:        getExistingOrCreateNilUUIDFromString(incomingRoute.PortID),
+			ID:            getExistingOrCreateNilUUIDFromString(incomingRoute.GetId()),
+			TargetIPRange: incomingRoute.GetTargetIPRange(),
+			NextHopIP:     incomingRoute.GetNextHopIP(),
+			Metric:        incomingRoute.GetMetric(),
+			PortID:        getExistingOrCreateNilUUIDFromString(incomingRoute.GetPortID()),
 		})
 	}
 
 	routeingTable := routingtables.RoutingTable{
-		ID:     getExistingOrCreateNilUUIDFromString(request.RoutingTable.NodeID),
-		NodeID: getExistingOrCreateNilUUIDFromString(request.RoutingTable.NodeID),
+		ID:     getExistingOrCreateNilUUIDFromString(request.GetRoutingTable().GetNodeID()),
+		NodeID: getExistingOrCreateNilUUIDFromString(request.GetRoutingTable().GetNodeID()),
 		Routes: routes,
 	}
 	_, err := t.routeService.EnsureExists(routeingTable)
@@ -122,7 +122,7 @@ func (t *RoutingTableServiceServer) DeleteRoute(
 		return nil, status.Errorf(codes.Aborted, "%v", err)
 	}
 
-	routeID, err := uuid.Parse(request.Id)
+	routeID, err := uuid.Parse(request.GetId())
 	if err != nil {
 		return nil, err
 	}
diff --git a/controller/northbound/server/submanagement.go b/controller/northbound/server/submanagement.go
index 762fffe8c..8d36f2d09 100644
--- a/controller/northbound/server/submanagement.go
+++ b/controller/northbound/server/submanagement.go
@@ -139,19 +139,19 @@ func (s *SubManagementServer) Add(ctx context.Context, request *subpb.AddRequest
 	}
 
 	var gNMISubScribeOptions *gnmi.SubscribeOptions
-	if request.Subscription != nil {
+	if request.GetSubscription() != nil {
 		var paths [][]string
-		for _, path := range request.Subscription.Paths {
+		for _, path := range request.GetSubscription().GetPaths() {
 			var elems []string
-			for _, elem := range path.Elem {
+			for _, elem := range path.GetElem() {
 				elems = append(elems, elem)
 			}
 			paths = append(paths, elems)
 		}
 		gNMISubScribeOptions = &gnmi.SubscribeOptions{
-			Mode:           request.Subscription.SubscribeOptions.GnmiMode,
-			StreamMode:     request.Subscription.SubscribeOptions.GnmiStreamMode,
-			SampleInterval: request.Subscription.SubscribeOptions.SampleInterval,
+			Mode:           request.GetSubscription().GetSubscribeOptions().GetGnmiMode(),
+			StreamMode:     request.GetSubscription().GetSubscribeOptions().GetGnmiStreamMode(),
+			SampleInterval: request.GetSubscription().GetSubscribeOptions().GetSampleInterval(),
 			Paths:          paths,
 		}
 	}
diff --git a/controller/northbound/server/topology.go b/controller/northbound/server/topology.go
index 27e7dd361..860774c6a 100644
--- a/controller/northbound/server/topology.go
+++ b/controller/northbound/server/topology.go
@@ -68,19 +68,19 @@ func (t *TopologyServer) AddLink(ctx context.Context, request *topopb.AddLinkReq
 		return nil, err
 	}
 
-	sourceNode, sourcePort, err := t.ensureNodeAndPortExists(request.Link.SourceNode, request.Link.SourcePort)
+	sourceNode, sourcePort, err := t.ensureNodeAndPortExists(request.GetLink().GetSourceNode(), request.GetLink().GetSourcePort())
 	if err != nil {
 		return nil, status.Errorf(codes.Aborted, "%v", err)
 	}
 
-	targetNode, targetPort, err := t.ensureNodeAndPortExists(request.Link.TargetNode, request.Link.TargetPort)
+	targetNode, targetPort, err := t.ensureNodeAndPortExists(request.GetLink().GetTargetNode(), request.GetLink().GetTargetPort())
 	if err != nil {
 		return nil, status.Errorf(codes.Aborted, "%v", err)
 	}
 
 	// check if UUID is set
 	var id uuid.UUID
-	if requestId := request.Link.Id; requestId != "" {
+	if requestId := request.GetLink().GetId(); requestId != "" {
 		id, err = uuid.Parse(requestId)
 		if err != nil {
 			return nil, err
@@ -91,7 +91,7 @@ func (t *TopologyServer) AddLink(ctx context.Context, request *topopb.AddLinkReq
 
 	link := links.Link{
 		ID:         id,
-		Name:       request.Link.Name,
+		Name:       request.GetLink().GetName(),
 		SourceNode: sourceNode,
 		SourcePort: sourcePort,
 		TargetNode: targetNode,
@@ -165,7 +165,7 @@ func (t *TopologyServer) DeleteLink(ctx context.Context, request *topopb.DeleteL
 		return nil, err
 	}
 
-	linkID, err := uuid.Parse(request.Id)
+	linkID, err := uuid.Parse(request.GetId())
 	if err != nil {
 		return nil, err
 	}
@@ -188,22 +188,22 @@ func (t *TopologyServer) DeleteLink(ctx context.Context, request *topopb.DeleteL
 func (t *TopologyServer) ensureNodeAndPortExists(incomingNode *topopb.Node, incomingPort *topopb.Port) (nodes.Node, ports.Port, error) {
 	node, err := t.nodeService.EnsureExists(
 		nodes.Node{
-			ID:   getExistingOrCreateNilUUIDFromString(incomingNode.Id),
-			Name: incomingNode.Name,
+			ID:   getExistingOrCreateNilUUIDFromString(incomingNode.GetId()),
+			Name: incomingNode.GetName(),
 		},
 	)
 	if err != nil {
 		return node, ports.Port{}, status.Errorf(codes.Aborted, "%v", err)
 	}
 
-	portConf, err := configuration.New(incomingPort.Configuration.Ip, incomingPort.Configuration.PrefixLength)
+	portConf, err := configuration.New(incomingPort.GetConfiguration().GetIp(), incomingPort.GetConfiguration().GetPrefixLength())
 	if err != nil {
 		return node, ports.Port{}, status.Errorf(codes.Aborted, "%v", err)
 	}
 	port, err := t.portService.EnsureExists(
 		ports.Port{
-			ID:            getExistingOrCreateNilUUIDFromString(incomingPort.Id),
-			Name:          incomingPort.Name,
+			ID:            getExistingOrCreateNilUUIDFromString(incomingPort.GetId()),
+			Name:          incomingPort.GetName(),
 			Configuration: portConf,
 		},
 	)
diff --git a/controller/northbound/server/topology_test.go b/controller/northbound/server/topology_test.go
index dea560a45..1596348dd 100644
--- a/controller/northbound/server/topology_test.go
+++ b/controller/northbound/server/topology_test.go
@@ -448,8 +448,8 @@ func TestTopology_GetTopology(t *testing.T) {
 				t.Errorf("Topology.GetTopology() error = %v, wantErr %v", err, tt.wantErr)
 				return
 			}
-			if !reflect.DeepEqual(got.Toplogy, tt.want.Toplogy) {
-				t.Errorf("Topology.GetTopology() = %v, want %v", got.Toplogy, tt.want.Toplogy)
+			if !reflect.DeepEqual(got.GetToplogy(), tt.want.GetToplogy()) {
+				t.Errorf("Topology.GetTopology() = %v, want %v", got.GetToplogy(), tt.want.GetToplogy())
 			}
 		})
 	}
@@ -539,7 +539,7 @@ func TestTopology_DeleteLink(t *testing.T) {
 				return
 			}
 
-			if !reflect.DeepEqual(gotAfterDelete.Toplogy, &apb.Topology{}) {
+			if !reflect.DeepEqual(gotAfterDelete.GetToplogy(), &apb.Topology{}) {
 				t.Errorf("Topology.GetTopology() = %v, want %v", got, tt.want)
 			}
 		})
diff --git a/controller/northbound/server/user.go b/controller/northbound/server/user.go
index 000058d9c..1478bb6d4 100644
--- a/controller/northbound/server/user.go
+++ b/controller/northbound/server/user.go
@@ -72,9 +72,9 @@ func (u UserServer) CreateUsers(ctx context.Context, request *apb.CreateUsersReq
 		return nil, err
 	}
 
-	for _, user := range request.User {
+	for _, user := range request.GetUser() {
 		roles := map[string]string{}
-		for key, elem := range user.Roles {
+		for key, elem := range user.GetRoles() {
 			_, err := uuid.Parse(key)
 			if err != nil {
 				return nil, handleRPCError(labels, err)
@@ -90,14 +90,14 @@ func (u UserServer) CreateUsers(ctx context.Context, request *apb.CreateUsersReq
 			return nil, status.Errorf(codes.Aborted, "%v", err)
 		}
 
-		hashedPassword := base64.RawStdEncoding.EncodeToString(argon2.IDKey([]byte(user.Password), []byte(salt), 1, 64*1024, 4, 32))
+		hashedPassword := base64.RawStdEncoding.EncodeToString(argon2.IDKey([]byte(user.GetPassword()), []byte(salt), 1, 64*1024, 4, 32))
 
-		userID, err := uuid.Parse(user.Id)
+		userID, err := uuid.Parse(user.GetId())
 		if err != nil {
 			userID = uuid.New()
 		}
 
-		user := rbac.NewUser(userID, user.Name, roles, string(hashedPassword), []string{}, salt, conflict.Metadata{ResourceVersion: 0})
+		user := rbac.NewUser(userID, user.GetName(), roles, string(hashedPassword), []string{}, salt, conflict.Metadata{ResourceVersion: 0})
 		err = u.userService.Add(user)
 		if err != nil {
 			log.Error(err)
@@ -121,12 +121,12 @@ func (u UserServer) GetUser(ctx context.Context, request *apb.GetUserRequest) (*
 		return nil, err
 	}
 
-	userID, err := uuid.Parse(request.Id)
+	userID, err := uuid.Parse(request.GetId())
 	if err != nil {
 		return nil, fmt.Errorf("could not parse user uuid")
 	}
 
-	userData, err := u.userService.Get(store.Query{Name: request.Name, ID: userID})
+	userData, err := u.userService.Get(store.Query{Name: request.GetName(), ID: userID})
 	if err != nil {
 		return nil, err
 	}
@@ -191,8 +191,8 @@ func (u UserServer) UpdateUsers(ctx context.Context, request *apb.UpdateUsersReq
 		return nil, err
 	}
 
-	for _, user := range request.User {
-		uid, err := uuid.Parse(user.Id)
+	for _, user := range request.GetUser() {
+		uid, err := uuid.Parse(user.GetId())
 		if err != nil {
 			return nil, handleRPCError(labels, err)
 		}
@@ -202,13 +202,13 @@ func (u UserServer) UpdateUsers(ctx context.Context, request *apb.UpdateUsersReq
 			return nil, status.Errorf(codes.Canceled, "user not found %v", err)
 		}
 
-		hashedPassword := base64.RawStdEncoding.EncodeToString(argon2.IDKey([]byte(user.Password), []byte(storedUser.GetSalt()), 1, 64*1024, 4, 32))
+		hashedPassword := base64.RawStdEncoding.EncodeToString(argon2.IDKey([]byte(user.GetPassword()), []byte(storedUser.GetSalt()), 1, 64*1024, 4, 32))
 
-		userToUpdate := rbac.NewUser(uid, user.Name, user.Roles, string(hashedPassword), []string{}, storedUser.GetSalt(), conflict.Metadata{
-			ResourceVersion: int(user.Metadata.ResourceVersion)})
+		userToUpdate := rbac.NewUser(uid, user.GetName(), user.GetRoles(), string(hashedPassword), []string{}, storedUser.GetSalt(), conflict.Metadata{
+			ResourceVersion: int(user.GetMetadata().GetResourceVersion())})
 
 		usr, _ := userToUpdate.(*rbac.User)
-		usr.Metadata.ResourceVersion = int(user.Metadata.ResourceVersion)
+		usr.Metadata.ResourceVersion = int(user.GetMetadata().GetResourceVersion())
 
 		err = u.userService.Update(usr)
 		if err != nil {
@@ -232,7 +232,7 @@ func (u UserServer) DeleteUsers(ctx context.Context, request *apb.DeleteUsersReq
 		return nil, err
 	}
 
-	for _, user := range request.Username {
+	for _, user := range request.GetUsername() {
 		userToDelete, err := u.userService.Get(store.Query{Name: user})
 		if err != nil {
 			return nil, status.Errorf(codes.Canceled, "user not found %v", err)
diff --git a/controller/northbound/server/user_test.go b/controller/northbound/server/user_test.go
index 9fcdf4d61..e9c49dcd7 100644
--- a/controller/northbound/server/user_test.go
+++ b/controller/northbound/server/user_test.go
@@ -234,7 +234,7 @@ func TestUser_GetUser(t *testing.T) {
 			}
 
 			if got != nil {
-				if got.User.Name != tt.want.User.Name || got.User.Id != tt.want.User.Id {
+				if got.GetUser().GetName() != tt.want.GetUser().GetName() || got.GetUser().GetId() != tt.want.GetUser().GetId() {
 					t.Errorf("User.GetUser() = %v, want %v", got, tt.want)
 				}
 			} else {
@@ -285,14 +285,14 @@ func TestUser_GetUsers(t *testing.T) {
 			}
 
 			if got != nil {
-				if len(got.User) != tt.wantLen {
+				if len(got.GetUser()) != tt.wantLen {
 					t.Errorf("User.GetUsers() = %v, want %v", got, tt.want)
 				}
 
-				for _, gotU := range got.User {
+				for _, gotU := range got.GetUser() {
 					containsExpected := false
-					for _, wantU := range tt.want.User {
-						if gotU.Name == wantU.Name {
+					for _, wantU := range tt.want.GetUser() {
+						if gotU.GetName() == wantU.GetName() {
 							containsExpected = true
 							break
 						}
diff --git a/controller/northbound/server/utils_test.go b/controller/northbound/server/utils_test.go
index dd95d8f2e..65b9f0fd1 100644
--- a/controller/northbound/server/utils_test.go
+++ b/controller/northbound/server/utils_test.go
@@ -9,7 +9,7 @@ import (
 
 func contains(array []*validate.Violation, err *validate.Violation) bool {
 	for _, v := range array {
-		if isEqualFieldPaths(v.Field, err.Field) && *v.ConstraintId == *err.ConstraintId && *v.Message == *err.Message {
+		if isEqualFieldPaths(v.GetField(), err.GetField()) && v.GetConstraintId() == err.GetConstraintId() && v.GetMessage() == err.GetMessage() {
 			return true
 		}
 	}
@@ -24,7 +24,7 @@ func isEqualFieldPaths(violationFieldPath, errFieldPath *validate.FieldPath) boo
 
 	for i, elem := range violationFieldPath.GetElements() {
 		errElem := errFieldPath.GetElements()[i]
-		if *elem.FieldName != *errElem.FieldName {
+		if elem.GetFieldName() != errElem.GetFieldName() {
 			return false
 		}
 	}
@@ -39,7 +39,7 @@ func assertValidationErrors(t *testing.T, err error, expectedValidationErrors []
 	for _, detail := range errDetails {
 		switch errorType := detail.(type) {
 		case *validate.Violations:
-			for _, violation := range errorType.Violations {
+			for _, violation := range errorType.GetViolations() {
 				ok := contains(expectedValidationErrors, violation)
 				if !ok {
 					t.Errorf("Received unexptected validation error: %v, expected %v", violation, expectedValidationErrors)
diff --git a/controller/nucleus/gnmi_transport.go b/controller/nucleus/gnmi_transport.go
index f25f8c009..a99207f8b 100644
--- a/controller/nucleus/gnmi_transport.go
+++ b/controller/nucleus/gnmi_transport.go
@@ -51,15 +51,15 @@ func newGnmiTransport(opts *tpb.TransportOption, model shared.DeviceModel) (*Gnm
 	}
 
 	gnmiConfig := &gnmi.Config{
-		Addr:        opts.Address,
-		Password:    opts.Password,
-		Username:    opts.Username,
-		TLS:         opts.Tls,
+		Addr:        opts.GetAddress(),
+		Password:    opts.GetPassword(),
+		Username:    opts.GetUsername(),
+		TLS:         opts.GetTls(),
 		Encoding:    gpb.Encoding_JSON_IETF,
 		Compression: opts.GetGnmiTransportOption().GetCompression(),
 	}
 
-	if opts.Tls {
+	if opts.GetTls() {
 		if err := enableTLSInGnmiConfig(gnmiConfig); err != nil {
 			log.Error(err)
 			return nil, err
@@ -77,8 +77,8 @@ func newGnmiTransport(opts *tpb.TransportOption, model shared.DeviceModel) (*Gnm
 	}
 
 	log.WithFields(log.Fields{
-		"target": opts.Address,
-		"tls":    opts.Tls,
+		"target": opts.GetAddress(),
+		"tls":    opts.GetTls(),
 	}).Info("building new gNMI transport")
 
 	return &Gnmi{
@@ -167,9 +167,9 @@ func (g *Gnmi) ProcessResponse(resp interface{}) error {
 			Type:  &gpb.GetResponse{},
 		}
 	}
-	rn := r.Notification
+	rn := r.GetNotification()
 	for _, msg := range rn {
-		if err := g.processResponseUpdates(msg.Update); err != nil {
+		if err := g.processResponseUpdates(msg.GetUpdate()); err != nil {
 			return err
 		}
 	}
@@ -181,14 +181,14 @@ func (g *Gnmi) ProcessResponse(resp interface{}) error {
 func (g *Gnmi) ProcessControlPlaneSubscribeResponse(resp *gpb.SubscribeResponse_Update) error {
 	notification := resp.Update
 
-	if len(notification.Update) > 0 {
-		if err := g.processResponseUpdates(notification.Update); err != nil {
+	if len(notification.GetUpdate()) > 0 {
+		if err := g.processResponseUpdates(notification.GetUpdate()); err != nil {
 			return err
 		}
 	}
 
-	if len(notification.Delete) > 0 {
-		if err := g.processResponseDeletes(notification.Delete); err != nil {
+	if len(notification.GetDelete()) > 0 {
+		if err := g.processResponseDeletes(notification.GetDelete()); err != nil {
 			return err
 		}
 	}
@@ -200,7 +200,7 @@ func (g *Gnmi) processResponseUpdates(updates []*gpb.Update) error {
 	errs := make([]error, 0)
 
 	for _, update := range updates {
-		if err := g.SetNode(update.Path, update.Val); err != nil {
+		if err := g.SetNode(update.GetPath(), update.GetVal()); err != nil {
 			errs = append(errs, err)
 		}
 	}
@@ -237,7 +237,7 @@ func (g *Gnmi) processResponseDeletes(deletes []*gpb.Path) error {
 // Capabilities calls GNMI capabilities.
 func (g *Gnmi) Capabilities(ctx context.Context) (interface{}, error) {
 	log.WithFields(log.Fields{
-		"target": g.Options.Address,
+		"target": g.Options.GetAddress(),
 	}).Info("sending gNMI capabilities request")
 	ctx = gnmi.NewContext(ctx, g.config)
 	ctx = context.WithValue(ctx, types.CtxKeyConfig, g.config) //nolint
@@ -265,8 +265,8 @@ func (g *Gnmi) getWithRequest(ctx context.Context, req *gpb.GetRequest) (interfa
 		return nil, &customerrs.NilError{}
 	}
 	log.WithFields(log.Fields{
-		"target": g.Options.Address,
-		"path":   req.Path,
+		"target": g.Options.GetAddress(),
+		"path":   req.GetPath(),
 	}).Info("sending gNMI get request")
 
 	resp, err := g.client.Get(ctx, req)
diff --git a/controller/nucleus/gnmi_transport_test.go b/controller/nucleus/gnmi_transport_test.go
index d8aaf9e59..88d2398cf 100644
--- a/controller/nucleus/gnmi_transport_test.go
+++ b/controller/nucleus/gnmi_transport_test.go
@@ -290,14 +290,14 @@ func TestGnmi_Set(t *testing.T) {
 			fields: fields{
 				transport: mockTransport(t),
 				mockArgumentMatcher: mock.MatchedBy(func(input *gpb.SetRequest) bool {
-					if len(input.Update) == 0 {
+					if len(input.GetUpdate()) == 0 {
 						return false
 					}
-					path, err := ygot.PathToString(input.Update[0].Path)
+					path, err := ygot.PathToString(input.GetUpdate()[0].GetPath())
 					if err != nil {
 						return false
 					}
-					value := input.Update[0].Val.GetStringVal()
+					value := input.GetUpdate()[0].GetVal().GetStringVal()
 
 					valCheck := value == "newName"
 					pathCheck := path == "/system/config/hostname"
@@ -332,10 +332,10 @@ func TestGnmi_Set(t *testing.T) {
 			fields: fields{
 				transport: mockTransport(t),
 				mockArgumentMatcher: mock.MatchedBy(func(input *gpb.SetRequest) bool {
-					if len(input.Delete) == 0 {
+					if len(input.GetDelete()) == 0 {
 						return false
 					}
-					test, _ := ygot.PathToString(input.Delete[0])
+					test, _ := ygot.PathToString(input.GetDelete()[0])
 					return test == "/system/config/hostname"
 				}),
 			},
diff --git a/controller/nucleus/networkElement.go b/controller/nucleus/networkElement.go
index 7eb5fa6e8..668ec99cc 100644
--- a/controller/nucleus/networkElement.go
+++ b/controller/nucleus/networkElement.go
@@ -39,7 +39,7 @@ func NewNetworkElement(
 		name = namesgenerator.GetRandomName(0)
 	}
 
-	if opt.Type == spb.Type_TYPE_CONTAINERISED {
+	if opt.GetType() == spb.Type_TYPE_CONTAINERISED {
 		return &CsbiNetworkElement{
 			CommonNetworkElement: CommonNetworkElement{
 				UUID:                  uuidInput,
@@ -121,7 +121,7 @@ func (d *CommonNetworkElement) GetPlugin() plugin.Plugin {
 
 // TransportAddress returns the TransportAddress of the network element.
 func (n *CommonNetworkElement) TransportAddress() string {
-	return n.transportOptions.Address
+	return n.transportOptions.GetAddress()
 }
 
 // Name returns the name of the network element.
@@ -146,7 +146,7 @@ func (d *CommonNetworkElement) ProcessResponse(resp proto.Message) error {
 
 // IsTransportValid returns a boolean if the transport of a network element is valid.
 func (n *CommonNetworkElement) IsTransportValid() bool {
-	if n.transportOptions != nil && n.transportOptions.Address != "" {
+	if n.transportOptions != nil && n.transportOptions.GetAddress() != "" {
 		return true
 	}
 
@@ -227,7 +227,7 @@ func (d *CsbiNetworkElement) ProcessResponse(resp proto.Message) error {
 
 // IsTransportValid returns a boolean if the transport of a network element is valid.
 func (n *CsbiNetworkElement) IsTransportValid() bool {
-	if n.transportOptions != nil && n.transportOptions.Address != "" {
+	if n.transportOptions != nil && n.transportOptions.GetAddress() != "" {
 		return true
 	}
 
@@ -253,10 +253,10 @@ func (n *CommonNetworkElement) MarshalJSON() ([]byte, error) {
 		transportTLS = false
 	} else {
 		transportType = n.transport.Type()
-		transportAddress = n.transportOptions.Address
-		transportUsername = n.transportOptions.Username
-		transportPassword = n.transportOptions.Password
-		transportTLS = n.transportOptions.Tls
+		transportAddress = n.transportOptions.GetAddress()
+		transportUsername = n.transportOptions.GetUsername()
+		transportPassword = n.transportOptions.GetPassword()
+		transportTLS = n.transportOptions.GetTls()
 	}
 
 	pluginUUID := n.Plugin.ID()
@@ -320,10 +320,10 @@ func (n *CommonNetworkElement) MarshalBSON() ([]byte, error) {
 		transportTLS = false
 	} else {
 		transportType = n.transport.Type()
-		transportAddress = n.transportOptions.Address
-		transportUsername = n.transportOptions.Username
-		transportPassword = n.transportOptions.Password
-		transportTLS = n.transportOptions.Tls
+		transportAddress = n.transportOptions.GetAddress()
+		transportUsername = n.transportOptions.GetUsername()
+		transportPassword = n.transportOptions.GetPassword()
+		transportTLS = n.transportOptions.GetTls()
 	}
 
 	pluginUUID := n.Plugin.ID()
diff --git a/controller/nucleus/networkElementWatcher.go b/controller/nucleus/networkElementWatcher.go
index 9aec23185..96137e6b2 100644
--- a/controller/nucleus/networkElementWatcher.go
+++ b/controller/nucleus/networkElementWatcher.go
@@ -207,7 +207,7 @@ func (n *NetworkElementWatcher) handleSubscribeResponse(subscriptionInfo *transp
 		// if the target that was subscribed to is not reachable anymore.
 		// log.Error("Error: subresponse == nil")
 	} else {
-		switch resp := subscriptionInfo.SubResponse.Response.(type) {
+		switch resp := subscriptionInfo.SubResponse.GetResponse().(type) {
 		case *gpb.SubscribeResponse_Error:
 			log.Error(&customerrs.SubscribeResponseError{
 				PndID:              subscriptionInfo.PndID,
@@ -232,15 +232,15 @@ func (n *NetworkElementWatcher) handleSubscribeResponse(subscriptionInfo *transp
 }
 
 func (n *NetworkElementWatcher) handleSubscribeResponseUpdate(resp *gpb.SubscribeResponse_Update, subscriptionInfo *transport.SubscriptionInformation) {
-	pathsAndValues := make(map[string]string, len(resp.Update.Update))
+	pathsAndValues := make(map[string]string, len(resp.Update.GetUpdate()))
 
-	if resp.Update == nil || len(resp.Update.Update) == 0 {
-		log.Debugf("handleSubscribeResponseUpdate empty update or updates; Update: %v, InnerUpdates: %v", resp.Update, resp.Update.Update)
+	if resp.Update == nil || len(resp.Update.GetUpdate()) == 0 {
+		log.Debugf("handleSubscribeResponseUpdate empty update or updates; Update: %v, InnerUpdates: %v", resp.Update, resp.Update.GetUpdate())
 		return
 	}
 
-	for _, update := range resp.Update.Update {
-		pathString, err := ygot.PathToString(update.Path)
+	for _, update := range resp.Update.GetUpdate() {
+		pathString, err := ygot.PathToString(update.GetPath())
 		if err != nil {
 			log.Errorf("Error trying to create a string from path: %v", err)
 		}
diff --git a/controller/nucleus/pluginService.go b/controller/nucleus/pluginService.go
index f95d47f10..8263130c5 100644
--- a/controller/nucleus/pluginService.go
+++ b/controller/nucleus/pluginService.go
@@ -230,7 +230,7 @@ func saveStreamToFile(sc StreamClient, filename string, id uuid.UUID) (err error
 
 			return err
 		}
-		n, err := f.Write(payload.Chunk)
+		n, err := f.Write(payload.GetChunk())
 		if err != nil {
 			closeErr := sc.CloseSend()
 			if closeErr != nil {
diff --git a/controller/nucleus/transport.go b/controller/nucleus/transport.go
index 1f4a6c3f3..bfdf2d058 100644
--- a/controller/nucleus/transport.go
+++ b/controller/nucleus/transport.go
@@ -24,7 +24,7 @@ func NewTransport(opts *tpb.TransportOption, model shared.DeviceModel) (transpor
 	if !validTransportOptions(opts) {
 		return nil, &customerrs.InvalidTransportOptionsError{Opt: opts}
 	}
-	switch o := opts.TransportOption.(type) {
+	switch o := opts.GetTransportOption().(type) {
 	case *tpb.TransportOption_GnmiTransportOption:
 		return newGnmiTransport(opts, model)
 	default:
diff --git a/controller/nucleus/util/gnmi/notification.go b/controller/nucleus/util/gnmi/notification.go
index 407faf3b1..2b6e32da5 100644
--- a/controller/nucleus/util/gnmi/notification.go
+++ b/controller/nucleus/util/gnmi/notification.go
@@ -5,8 +5,8 @@ import "github.com/openconfig/gnmi/proto/gnmi"
 // IsGNMINotificationEmpty checks if the given gnmi.Notification does not
 // contain any updates or deletes.
 func IsGNMINotificationEmpty(n *gnmi.Notification) bool {
-	if n.Update == nil || len(n.Update) == 0 {
-		if n.Delete == nil || len(n.Delete) == 0 {
+	if n.Update == nil || len(n.GetUpdate()) == 0 {
+		if n.Delete == nil || len(n.GetDelete()) == 0 {
 			return true
 		}
 	}
diff --git a/controller/nucleus/util/path/translate.go b/controller/nucleus/util/path/translate.go
index 6d6ab7f27..286f812ba 100644
--- a/controller/nucleus/util/path/translate.go
+++ b/controller/nucleus/util/path/translate.go
@@ -8,8 +8,8 @@ import (
 
 // ToStrings translates a gNMI path to a slice of strings.
 func ToStrings(path *gpb.Path) []string {
-	elems := make([]string, len(path.Elem))
-	for i, e := range path.Elem {
+	elems := make([]string, len(path.GetElem()))
+	for i, e := range path.GetElem() {
 		//nolint
 		elems[i] = strings.Title(e.Name)
 	}
diff --git a/controller/plugin/shared/client.go b/controller/plugin/shared/client.go
index a44a983a7..1690cb7b9 100644
--- a/controller/plugin/shared/client.go
+++ b/controller/plugin/shared/client.go
@@ -82,7 +82,7 @@ func (m *DeviceModelClient) Model(filterReadOnly bool) ([]byte, error) {
 		return nil, err
 	}
 
-	return resp.Json, nil
+	return resp.GetJson(), nil
 }
 
 // Diff calls the Diff method of the DeviceModelClients client. A request is
@@ -157,7 +157,7 @@ func (m *DeviceModelClient) SchemaTreeGzip() ([]byte, error) {
 
 			return nil, err
 		}
-		sTreeBytes = append(sTreeBytes, payload.Chunk...)
+		sTreeBytes = append(sTreeBytes, payload.GetChunk()...)
 	}
 
 	return sTreeBytes, nil
diff --git a/controller/plugin/shared/server.go b/controller/plugin/shared/server.go
index b49c0558b..b48db622a 100644
--- a/controller/plugin/shared/server.go
+++ b/controller/plugin/shared/server.go
@@ -47,7 +47,7 @@ func (m *DeviceModelServer) SetNode(
 func (m *DeviceModelServer) GetNode(
 	ctx context.Context,
 	req *pb.GetNodeRequest) (*pb.GetNodeResponse, error) {
-	nodes, err := m.Impl.GetNode(req.GetPath(), req.RequestForIntendedState)
+	nodes, err := m.Impl.GetNode(req.GetPath(), req.GetRequestForIntendedState())
 	return &pb.GetNodeResponse{Nodes: nodes}, err
 }
 
diff --git a/integration-tests/integrationTestUtils/integrationTestUtils.go b/integration-tests/integrationTestUtils/integrationTestUtils.go
index b3e6442e8..b59e2ef2a 100644
--- a/integration-tests/integrationTestUtils/integrationTestUtils.go
+++ b/integration-tests/integrationTestUtils/integrationTestUtils.go
@@ -29,7 +29,7 @@ const DefaultTargetUsername = "admin"
 const DefaultTargetPassword = "admin"
 
 func CreateContextWithAuthorization(loginResponse *rbac.LoginResponse) context.Context {
-	md := metadata.Pairs("authorize", loginResponse.Token)
+	md := metadata.Pairs("authorize", loginResponse.GetToken())
 	return metadata.NewOutgoingContext(context.Background(), md)
 }
 
@@ -82,7 +82,7 @@ func ExportCurrentSDNConfig(conn *grpc.ClientConn, ctx context.Context) (string,
 	if err != nil {
 		return "", err
 	}
-	pndID := pndRes.Pnd[0].Id
+	pndID := pndRes.GetPnd()[0].GetId()
 
 	configMgmtService := configMgmtPb.NewConfigurationManagementServiceClient(conn)
 
@@ -91,7 +91,7 @@ func ExportCurrentSDNConfig(conn *grpc.ClientConn, ctx context.Context) (string,
 		return "", err
 	}
 
-	return sdnConfigResponse.SdnConfigData, nil
+	return sdnConfigResponse.GetSdnConfigData(), nil
 }
 
 // ApplySDNConfig can be used to apply a given SDN config as a string to set the testing environment as desired.
@@ -103,7 +103,7 @@ func ApplySDNConfig(conn *grpc.ClientConn, ctx context.Context, sdnConfig string
 	}
 
 	// currently only support for default PND
-	pndID := pndRes.Pnd[0].Id
+	pndID := pndRes.GetPnd()[0].GetId()
 
 	configMgmtService := configMgmtPb.NewConfigurationManagementServiceClient(conn)
 
@@ -148,18 +148,18 @@ func CleanUserAndRolesExceptAdmin(conn *grpc.ClientConn, ctx context.Context) {
 
 func cleanUsersExceptAdmin(resp *apb.GetUsersResponse, userService apb.UserServiceClient, ctx context.Context) error {
 	// no need to delete if only admin available
-	if len(resp.User) == 1 {
+	if len(resp.GetUser()) == 1 {
 		return nil
 	}
 
 	var names []string
 
-	for _, u := range resp.User {
-		if u.Name == admin {
+	for _, u := range resp.GetUser() {
+		if u.GetName() == admin {
 			continue
 		}
 
-		names = append(names, u.Name)
+		names = append(names, u.GetName())
 	}
 
 	_, err := userService.DeleteUsers(ctx, &apb.DeleteUsersRequest{
@@ -175,18 +175,18 @@ func cleanUsersExceptAdmin(resp *apb.GetUsersResponse, userService apb.UserServi
 
 func cleanRolesExceptAdmin(resp *apb.GetRolesResponse, roleService apb.RoleServiceClient, ctx context.Context) error {
 	// no need to delete if only admin available
-	if len(resp.Roles) == 1 {
+	if len(resp.GetRoles()) == 1 {
 		return nil
 	}
 
 	var names []string
 
-	for _, role := range resp.Roles {
-		if role.Name == admin {
+	for _, role := range resp.GetRoles() {
+		if role.GetName() == admin {
 			continue
 		}
 
-		names = append(names, role.Name)
+		names = append(names, role.GetName())
 	}
 
 	_, err := roleService.DeleteRoles(ctx, &apb.DeleteRolesRequest{
diff --git a/integration-tests/lab_tests/lab00_test.go b/integration-tests/lab_tests/lab00_test.go
index a2c5be701..a4791ff92 100644
--- a/integration-tests/lab_tests/lab00_test.go
+++ b/integration-tests/lab_tests/lab00_test.go
@@ -109,7 +109,7 @@ func TestLab00(t *testing.T) {
 		}
 
 		assert.Equal(t, 1, len(resp.GetMneNotification()), "The hostname for the managed network element has been requested. Therefore exactly one response is expected.")
-		assert.NotEmpty(t, resp.MneNotification[0].GetUpdate()[0].GetVal().GetStringVal(), "It is expected, that the hostname of the managed network element is not empty.")
+		assert.NotEmpty(t, resp.GetMneNotification()[0].GetUpdate()[0].GetVal().GetStringVal(), "It is expected, that the hostname of the managed network element is not empty.")
 	}
 
 	// Change the hostname of both managed network elements.
@@ -152,6 +152,6 @@ func TestLab00(t *testing.T) {
 		}
 
 		assert.Equal(t, 1, len(resp.GetMneNotification()), "The hostname for the managed network element has been requested. Therefore exactly one response is expected.")
-		assert.Equal(t, mne.newHostname, resp.MneNotification[0].GetUpdate()[0].GetVal().GetStringVal(), "Exptected the new changed hostname.")
+		assert.Equal(t, mne.newHostname, resp.GetMneNotification()[0].GetUpdate()[0].GetVal().GetStringVal(), "Exptected the new changed hostname.")
 	}
 }
diff --git a/integration-tests/networkElement_tests/networkElement_test.go b/integration-tests/networkElement_tests/networkElement_test.go
index 3765a25b0..c412c6b6e 100644
--- a/integration-tests/networkElement_tests/networkElement_test.go
+++ b/integration-tests/networkElement_tests/networkElement_test.go
@@ -152,15 +152,15 @@ func TestChangeHostnameViaController(t *testing.T) {
 	}
 
 	// change hostname
-	setPathListRequest.ChangeRequest[0].Mneid = addListResponse.Responses[0].GetId()
+	setPathListRequest.ChangeRequest[0].Mneid = addListResponse.GetResponses()[0].GetId()
 
 	setPathListResponse, err := mneService.SetPathList(ctx, setPathListRequest)
 	if err != nil {
 		t.Error(err)
 	}
 
-	changeCommit.Change[0].Cuid = setPathListResponse.Responses[0].GetId()  // set change ID
-	changeConfirm.Change[0].Cuid = setPathListResponse.Responses[0].GetId() // set change ID
+	changeCommit.Change[0].Cuid = setPathListResponse.GetResponses()[0].GetId()  // set change ID
+	changeConfirm.Change[0].Cuid = setPathListResponse.GetResponses()[0].GetId() // set change ID
 
 	_, err = mneService.SetChangeList(ctx, changeCommit)
 	if err != nil {
@@ -178,7 +178,7 @@ func TestChangeHostnameViaController(t *testing.T) {
 		t.Error(err)
 	}
 
-	getMneRequest.Mneid = getAllResponse.Mne[0].Id
+	getMneRequest.Mneid = getAllResponse.GetMne()[0].GetId()
 	getMneResponse, err := mneService.Get(ctx, getMneRequest)
 	if err != nil {
 		t.Error(err)
@@ -191,7 +191,7 @@ func TestChangeHostnameViaController(t *testing.T) {
 		t.Error(err)
 	}
 
-	err = Unmarshal([]byte(getMneResponse.Mne.Model), path, mne.Model)
+	err = Unmarshal([]byte(getMneResponse.GetMne().GetModel()), path, mne.Model)
 	if err != nil {
 		t.Error(err)
 		t.FailNow()
@@ -267,10 +267,10 @@ func TestAddMultipleAndDeleteMne(t *testing.T) {
 		t.Error(err)
 	}
 
-	assert.Equal(t, expectedAmountBeforeDeletion, len(getAllResponse.Mne))
+	assert.Equal(t, expectedAmountBeforeDeletion, len(getAllResponse.GetMne()))
 
 	// delete second device
-	deleteSecondTargetRequest.Mneid = getAllResponse.Mne[1].Id
+	deleteSecondTargetRequest.Mneid = getAllResponse.GetMne()[1].GetId()
 	_, err = mneService.Delete(ctx, deleteSecondTargetRequest)
 	if err != nil {
 		t.Error(err)
@@ -282,9 +282,9 @@ func TestAddMultipleAndDeleteMne(t *testing.T) {
 		t.Error(err)
 	}
 
-	assert.Equal(t, expectedAmountAfterDeletion, len(getAllResponse.Mne))
+	assert.Equal(t, expectedAmountAfterDeletion, len(getAllResponse.GetMne()))
 
-	assert.Equal(t, expectedNameForRemainingTarget, getAllResponse.Mne[0].Name)
+	assert.Equal(t, expectedNameForRemainingTarget, getAllResponse.GetMne()[0].GetName())
 }
 
 // Note: This testcase is also covered by TestChangeHostname at the moment.
@@ -336,13 +336,13 @@ func TestGetMneById(t *testing.T) {
 	}
 
 	// get by ID and compare
-	getByIdRequest.Mneid = addListResponse.Responses[0].Id
+	getByIdRequest.Mneid = addListResponse.GetResponses()[0].GetId()
 	getByIdResponse, err := mneService.Get(ctx, getByIdRequest)
 	if err != nil {
 		t.Error(err)
 	}
 
-	assert.Equal(t, mneName, getByIdResponse.Mne.Name)
+	assert.Equal(t, mneName, getByIdResponse.GetMne().GetName())
 }
 
 func TestGetRootPathAndPushToMne(t *testing.T) {
@@ -408,18 +408,18 @@ func TestGetRootPathAndPushToMne(t *testing.T) {
 	}
 
 	// get root path
-	getRootPathRequest.Mneid = addListResponse.Responses[0].Id
+	getRootPathRequest.Mneid = addListResponse.GetResponses()[0].GetId()
 	getPathResponse, err := mneService.GetPath(ctx, getRootPathRequest)
 	if err != nil {
 		t.Error(err)
 	}
 
-	setPathListRequest.ChangeRequest[0].Mneid = addListResponse.Responses[0].GetId()
+	setPathListRequest.ChangeRequest[0].Mneid = addListResponse.GetResponses()[0].GetId()
 
 	// TODO: JsonIetfValue needs fixing
 	setPathListRequest.ChangeRequest[0].Value = &gnmi.TypedValue{
 		Value: &gnmi.TypedValue_JsonIetfVal{
-			JsonIetfVal: []byte(getPathResponse.GetMneNotification()[0].GetUpdate()[0].Val.String()),
+			JsonIetfVal: []byte(getPathResponse.GetMneNotification()[0].GetUpdate()[0].GetVal().String()),
 		},
 	}
 
@@ -480,7 +480,7 @@ func TestGetPathAndGetIntendedPathWithExternalChange(t *testing.T) {
 		t.FailNow()
 	}
 
-	mneID := addResponse.Responses[0].Id
+	mneID := addResponse.GetResponses()[0].GetId()
 	getPathRequest.Mneid = mneID
 	getIntendedPathRequest.Mneid = mneID
 
@@ -497,7 +497,7 @@ func TestGetPathAndGetIntendedPathWithExternalChange(t *testing.T) {
 		t.FailNow()
 	}
 
-	assert.Equal(t, getPathResponse.MneNotification[0].Update[0].Val.Value, getIntendedPathResponse.MneNotification[0].Update[0].Val.Value)
+	assert.Equal(t, getPathResponse.GetMneNotification()[0].GetUpdate()[0].GetVal().GetValue(), getIntendedPathResponse.GetMneNotification()[0].GetUpdate()[0].GetVal().GetValue())
 
 	// change hostname via gnmic
 	args := []string{"-a", targetA,
@@ -535,5 +535,5 @@ func TestGetPathAndGetIntendedPathWithExternalChange(t *testing.T) {
 		t.FailNow()
 	}
 
-	assert.NotEqual(t, getPathResponse.MneNotification[0].Update[0].Val.Value, getIntendedPathResponse.MneNotification[0].Update[0].Val.Value)
+	assert.NotEqual(t, getPathResponse.GetMneNotification()[0].GetUpdate()[0].GetVal().GetValue(), getIntendedPathResponse.GetMneNotification()[0].GetUpdate()[0].GetVal().GetValue())
 }
diff --git a/integration-tests/rbac_tests/rbac_test.go b/integration-tests/rbac_tests/rbac_test.go
index 44cbc4fc1..49b40429a 100644
--- a/integration-tests/rbac_tests/rbac_test.go
+++ b/integration-tests/rbac_tests/rbac_test.go
@@ -118,15 +118,15 @@ func TestUserCreationAndModification(t *testing.T) {
 		t.FailNow()
 	}
 
-	assert.Equal(t, expectedAmountOfUsers, len(getAllResponse.User))
+	assert.Equal(t, expectedAmountOfUsers, len(getAllResponse.GetUser()))
 
-	assert.NotEqual(t, getAllResponse.User[1].Name, getAllResponse.User[2].Name)
+	assert.NotEqual(t, getAllResponse.GetUser()[1].GetName(), getAllResponse.GetUser()[2].GetName())
 
-	assert.NotEqual(t, getAllResponse.User[1].Roles[pndID], getAllResponse.User[2].Roles[pndID])
+	assert.NotEqual(t, getAllResponse.GetUser()[1].GetRoles()[pndID], getAllResponse.GetUser()[2].GetRoles()[pndID])
 
 	// change name of user1
-	updateUserRequest.User[0].Roles = getAllResponse.User[1].Roles
-	updateUserRequest.User[0].Metadata.ResourceVersion = getAllResponse.User[1].Metadata.ResourceVersion
+	updateUserRequest.User[0].Roles = getAllResponse.GetUser()[1].GetRoles()
+	updateUserRequest.User[0].Metadata.ResourceVersion = getAllResponse.GetUser()[1].GetMetadata().GetResourceVersion()
 
 	_, err = userService.UpdateUsers(ctx, updateUserRequest)
 	if err != nil {
@@ -140,7 +140,7 @@ func TestUserCreationAndModification(t *testing.T) {
 		t.FailNow()
 	}
 
-	assert.Equal(t, expectedNameAfterChange, getUserResponse.User.Name)
+	assert.Equal(t, expectedNameAfterChange, getUserResponse.GetUser().GetName())
 }
 
 func TestRoleCreationAndModification(t *testing.T) {
@@ -230,11 +230,11 @@ func TestRoleCreationAndModification(t *testing.T) {
 		t.FailNow()
 	}
 
-	assert.Equal(t, expectedAmountOfRoles, len(getAllRoleResponse.Roles))
+	assert.Equal(t, expectedAmountOfRoles, len(getAllRoleResponse.GetRoles()))
 
-	assert.Equal(t, multiplePermissionRole, getAllRoleResponse.Roles[1].Name)
+	assert.Equal(t, multiplePermissionRole, getAllRoleResponse.GetRoles()[1].GetName())
 
-	assert.Equal(t, expectedAmountOfPermissions, len(getAllRoleResponse.Roles[1].Permissions))
+	assert.Equal(t, expectedAmountOfPermissions, len(getAllRoleResponse.GetRoles()[1].GetPermissions()))
 
 	// delete role and compare amount
 	_, err = roleService.DeleteRoles(ctx, deleteRoleRequest)
@@ -249,7 +249,7 @@ func TestRoleCreationAndModification(t *testing.T) {
 		t.FailNow()
 	}
 
-	assert.Equal(t, expectedAmountOfRolesAfterDeletion, len(getAllRoleResponse.Roles))
+	assert.Equal(t, expectedAmountOfRolesAfterDeletion, len(getAllRoleResponse.GetRoles()))
 
 	// delete one permission then get role to compare
 	_, err = roleService.DeletePermissionsForRole(ctx, removePermissionRequest)
@@ -264,7 +264,7 @@ func TestRoleCreationAndModification(t *testing.T) {
 		t.FailNow()
 	}
 
-	assert.Equal(t, expectedAmountOfPermissionsAfterDeletion, len(getAllRoleResponse.Roles[1].Permissions))
+	assert.Equal(t, expectedAmountOfPermissionsAfterDeletion, len(getAllRoleResponse.GetRoles()[1].GetPermissions()))
 
 	// change role name and compare
 	_, err = roleService.UpdateRoles(ctx, updateRoleRequest)
@@ -279,7 +279,7 @@ func TestRoleCreationAndModification(t *testing.T) {
 		t.FailNow()
 	}
 
-	assert.Equal(t, multiplePermissionRoleNameAfterChange, getRoleResponse.Role.Name)
+	assert.Equal(t, multiplePermissionRoleNameAfterChange, getRoleResponse.GetRole().GetName())
 }
 
 func TestUserWithoutPermission(t *testing.T) {
diff --git a/integration-tests/topology_tests/topology_test.go b/integration-tests/topology_tests/topology_test.go
index 54c625541..50bb8c561 100644
--- a/integration-tests/topology_tests/topology_test.go
+++ b/integration-tests/topology_tests/topology_test.go
@@ -66,16 +66,16 @@ func TestCreateTopologyAndGetIt(t *testing.T) {
 		t.Errorf("Error while getting topology: %v", err)
 	}
 
-	assert.Equal(t, 1, len(getTopolgyResponse.Toplogy.Links))
-	assert.Equal(t, "Link1", getTopolgyResponse.Toplogy.Links[0].Name)
-	assert.Equal(t, "Node1", getTopolgyResponse.Toplogy.Links[0].SourceNode.Name)
-	assert.Equal(t, "Node2", getTopolgyResponse.Toplogy.Links[0].TargetNode.Name)
-	assert.Equal(t, "Port1", getTopolgyResponse.Toplogy.Links[0].SourcePort.Name)
-	assert.Equal(t, "10.0.0.1", getTopolgyResponse.Toplogy.Links[0].SourcePort.Configuration.Ip)
-	assert.Equal(t, int64(24), getTopolgyResponse.Toplogy.Links[0].SourcePort.Configuration.PrefixLength)
-	assert.Equal(t, "Port2", getTopolgyResponse.Toplogy.Links[0].TargetPort.Name)
-	assert.Equal(t, "10.0.0.2", getTopolgyResponse.Toplogy.Links[0].TargetPort.Configuration.Ip)
-	assert.Equal(t, int64(24), getTopolgyResponse.Toplogy.Links[0].TargetPort.Configuration.PrefixLength)
+	assert.Equal(t, 1, len(getTopolgyResponse.GetToplogy().GetLinks()))
+	assert.Equal(t, "Link1", getTopolgyResponse.GetToplogy().GetLinks()[0].GetName())
+	assert.Equal(t, "Node1", getTopolgyResponse.GetToplogy().GetLinks()[0].GetSourceNode().GetName())
+	assert.Equal(t, "Node2", getTopolgyResponse.GetToplogy().GetLinks()[0].GetTargetNode().GetName())
+	assert.Equal(t, "Port1", getTopolgyResponse.GetToplogy().GetLinks()[0].GetSourcePort().GetName())
+	assert.Equal(t, "10.0.0.1", getTopolgyResponse.GetToplogy().GetLinks()[0].GetSourcePort().GetConfiguration().GetIp())
+	assert.Equal(t, int64(24), getTopolgyResponse.GetToplogy().GetLinks()[0].GetSourcePort().GetConfiguration().GetPrefixLength())
+	assert.Equal(t, "Port2", getTopolgyResponse.GetToplogy().GetLinks()[0].GetTargetPort().GetName())
+	assert.Equal(t, "10.0.0.2", getTopolgyResponse.GetToplogy().GetLinks()[0].GetTargetPort().GetConfiguration().GetIp())
+	assert.Equal(t, int64(24), getTopolgyResponse.GetToplogy().GetLinks()[0].GetTargetPort().GetConfiguration().GetPrefixLength())
 }
 
 func TestCreateTopologyFailsValidation(t *testing.T) {
@@ -129,18 +129,18 @@ func TestCreateThenDeleteTopologyAndGetEmptyTopologies(t *testing.T) {
 		t.Errorf("Error while getting topology: %v", err)
 	}
 
-	assert.Equal(t, 1, len(getTopolgyResponse.Toplogy.Links))
-	assert.Equal(t, "Link1", getTopolgyResponse.Toplogy.Links[0].Name)
-	assert.Equal(t, "Node1", getTopolgyResponse.Toplogy.Links[0].SourceNode.Name)
-	assert.Equal(t, "Node2", getTopolgyResponse.Toplogy.Links[0].TargetNode.Name)
-	assert.Equal(t, "Port1", getTopolgyResponse.Toplogy.Links[0].SourcePort.Name)
-	assert.Equal(t, "10.0.0.1", getTopolgyResponse.Toplogy.Links[0].SourcePort.Configuration.Ip)
-	assert.Equal(t, int64(24), getTopolgyResponse.Toplogy.Links[0].SourcePort.Configuration.PrefixLength)
-	assert.Equal(t, "Port2", getTopolgyResponse.Toplogy.Links[0].TargetPort.Name)
-	assert.Equal(t, "10.0.0.2", getTopolgyResponse.Toplogy.Links[0].TargetPort.Configuration.Ip)
-	assert.Equal(t, int64(24), getTopolgyResponse.Toplogy.Links[0].TargetPort.Configuration.PrefixLength)
-
-	deleteLinkRequest := topologyPb.DeleteLinkRequest{Id: getTopolgyResponse.Toplogy.Links[0].Id}
+	assert.Equal(t, 1, len(getTopolgyResponse.GetToplogy().GetLinks()))
+	assert.Equal(t, "Link1", getTopolgyResponse.GetToplogy().GetLinks()[0].GetName())
+	assert.Equal(t, "Node1", getTopolgyResponse.GetToplogy().GetLinks()[0].GetSourceNode().GetName())
+	assert.Equal(t, "Node2", getTopolgyResponse.GetToplogy().GetLinks()[0].GetTargetNode().GetName())
+	assert.Equal(t, "Port1", getTopolgyResponse.GetToplogy().GetLinks()[0].GetSourcePort().GetName())
+	assert.Equal(t, "10.0.0.1", getTopolgyResponse.GetToplogy().GetLinks()[0].GetSourcePort().GetConfiguration().GetIp())
+	assert.Equal(t, int64(24), getTopolgyResponse.GetToplogy().GetLinks()[0].GetSourcePort().GetConfiguration().GetPrefixLength())
+	assert.Equal(t, "Port2", getTopolgyResponse.GetToplogy().GetLinks()[0].GetTargetPort().GetName())
+	assert.Equal(t, "10.0.0.2", getTopolgyResponse.GetToplogy().GetLinks()[0].GetTargetPort().GetConfiguration().GetIp())
+	assert.Equal(t, int64(24), getTopolgyResponse.GetToplogy().GetLinks()[0].GetTargetPort().GetConfiguration().GetPrefixLength())
+
+	deleteLinkRequest := topologyPb.DeleteLinkRequest{Id: getTopolgyResponse.GetToplogy().GetLinks()[0].GetId()}
 	_, err = topologyService.DeleteLink(ctx, &deleteLinkRequest)
 	if err != nil {
 		t.Errorf("Error while deleting link: %v", err)
@@ -151,5 +151,5 @@ func TestCreateThenDeleteTopologyAndGetEmptyTopologies(t *testing.T) {
 		t.Errorf("Error while getting topologies: %v", err)
 	}
 
-	assert.Equal(t, 0, len(getTopologyResponse.Toplogy.Links))
+	assert.Equal(t, 0, len(getTopologyResponse.GetToplogy().GetLinks()))
 }
diff --git a/plugin-registry/server.go b/plugin-registry/server.go
index 9ab9bdeab..d938659f9 100644
--- a/plugin-registry/server.go
+++ b/plugin-registry/server.go
@@ -29,11 +29,11 @@ func NewServer(registry *PluginRegistry) *Server {
 func (s *Server) Get(ctx context.Context, req *pb.GetRequest) (*pb.GetResponse, error) {
 	pluginResultSlice := make([]*pb.Plugin, 0)
 
-	for _, query := range req.Query {
+	for _, query := range req.GetQuery() {
 		var plugin *Plugin
 		var err error
 
-		switch x := query.Identifier.(type) {
+		switch x := query.GetIdentifier().(type) {
 		case *pb.Query_Id:
 			id, err := uuid.Parse(x.Id)
 			if err != nil {
-- 
GitLab