diff --git a/src/main/java/net/onrc/onos/apps/segmentrouting/web/SegmentRouterPolicyInfo.java b/src/main/java/net/onrc/onos/apps/segmentrouting/web/SegmentRouterPolicyInfo.java
index 6b98dcd..3a27267 100644
--- a/src/main/java/net/onrc/onos/apps/segmentrouting/web/SegmentRouterPolicyInfo.java
+++ b/src/main/java/net/onrc/onos/apps/segmentrouting/web/SegmentRouterPolicyInfo.java
@@ -12,11 +12,13 @@
     private String policyId;
     private int policyType;
     private int priority;
+    private String tunnelId = null;
     private PacketMatch match;
     
-    public SegmentRouterPolicyInfo(String Id,int type, int ppriority,PacketMatch flowEntries){
+    public SegmentRouterPolicyInfo(String Id,int type,String tunnelUsed, int ppriority,PacketMatch flowEntries){
         this.policyId = Id;
         this.policyType = type;
+        this.tunnelId =tunnelUsed;
         this.priority = ppriority;
         this.match = flowEntries;
     }
@@ -26,6 +28,9 @@
     public int getPolicyType(){
         return this.policyType;
     }
+    public String getTunnelId(){
+        return this.tunnelId;
+    }
     public int getPriority(){
         return this.priority;
     }
diff --git a/src/main/java/net/onrc/onos/apps/segmentrouting/web/SegmentRouterPolicyResource.java b/src/main/java/net/onrc/onos/apps/segmentrouting/web/SegmentRouterPolicyResource.java
index fc38eaa..8106173 100644
--- a/src/main/java/net/onrc/onos/apps/segmentrouting/web/SegmentRouterPolicyResource.java
+++ b/src/main/java/net/onrc/onos/apps/segmentrouting/web/SegmentRouterPolicyResource.java
@@ -116,10 +116,12 @@
         while(piI.hasNext()){
             PolicyInfo policy = piI.next();
             String policyId = policy.getPolicyId();
+            String tunnelId = policy.getTunnelId();
             int priority = policy.getPriority();
             int policyType = policy.getType();
             PacketMatch flowEntries = policy.getMatch();
-            SegmentRouterPolicyInfo pInfo = new SegmentRouterPolicyInfo(policyId, policyType, priority, flowEntries);
+            SegmentRouterPolicyInfo pInfo = new SegmentRouterPolicyInfo(policyId, policyType, tunnelId,
+                    priority,  flowEntries);
             policyList.add(pInfo);
         }
         log.debug("getPolicy with params");
