diff --git a/internal/bbsim/api/uni_handler.go b/internal/bbsim/api/uni_handler.go
index 50b9911..89115aa 100644
--- a/internal/bbsim/api/uni_handler.go
+++ b/internal/bbsim/api/uni_handler.go
@@ -18,6 +18,7 @@
 
 import (
 	"context"
+
 	"github.com/opencord/bbsim/api/bbsim"
 	"github.com/opencord/bbsim/internal/bbsim/devices"
 )
@@ -31,6 +32,19 @@
 		PortNo:    int32(u.PortNo),
 		OperState: u.OperState.Current(),
 		Services:  convertBBsimServicesToProtoServices(u.Services),
+		Type:      bbsim.UniType_ETH,
+	}
+}
+
+func convertBBSimPotsPortToProtoUniPort(u *devices.PotsPort) *bbsim.UNI {
+	return &bbsim.UNI{
+		ID:        int32(u.ID),
+		OnuID:     int32(u.Onu.ID),
+		OnuSn:     u.Onu.Sn(),
+		MeID:      uint32(u.MeId.ToUint16()),
+		PortNo:    int32(u.PortNo),
+		OperState: u.OperState.Current(),
+		Type:      bbsim.UniType_POTS,
 	}
 }
 
@@ -43,6 +57,15 @@
 	return unis
 }
 
+func convertBBsimPotsPortsToProtoUniPorts(list []devices.PotsPortIf) []*bbsim.UNI {
+	unis := []*bbsim.UNI{}
+	for _, u := range list {
+		uni := u.(*devices.PotsPort)
+		unis = append(unis, convertBBSimPotsPortToProtoUniPort(uni))
+	}
+	return unis
+}
+
 func (s BBSimServer) GetOnuUnis(ctx context.Context, req *bbsim.ONURequest) (*bbsim.UNIs, error) {
 	onu, err := s.GetONU(ctx, req)
 
