diff --git a/core/api/src/main/java/org/onosproject/net/neighbour/NeighbourMessageActions.java b/core/api/src/main/java/org/onosproject/net/neighbour/NeighbourMessageActions.java
index 5bbfee2..e3b74d2 100644
--- a/core/api/src/main/java/org/onosproject/net/neighbour/NeighbourMessageActions.java
+++ b/core/api/src/main/java/org/onosproject/net/neighbour/NeighbourMessageActions.java
@@ -16,7 +16,6 @@
 
 package org.onosproject.net.neighbour;
 
-import com.google.common.annotations.Beta;
 import org.onlab.packet.MacAddress;
 import org.onosproject.net.intf.Interface;
 import org.onosproject.net.ConnectPoint;
@@ -24,7 +23,6 @@
 /**
  * Performs actions on a neighbour message contexts.
  */
-@Beta
 public interface NeighbourMessageActions {
 
     /**
diff --git a/core/api/src/main/java/org/onosproject/net/neighbour/NeighbourMessageContext.java b/core/api/src/main/java/org/onosproject/net/neighbour/NeighbourMessageContext.java
index aef37bb..65042c6 100644
--- a/core/api/src/main/java/org/onosproject/net/neighbour/NeighbourMessageContext.java
+++ b/core/api/src/main/java/org/onosproject/net/neighbour/NeighbourMessageContext.java
@@ -16,7 +16,6 @@
 
 package org.onosproject.net.neighbour;
 
-import com.google.common.annotations.Beta;
 import org.onlab.packet.Ethernet;
 import org.onlab.packet.IpAddress;
 import org.onlab.packet.MacAddress;
@@ -31,7 +30,6 @@
  * protocol-agnostic interface, as well as mechanisms to perform an action in
  * response to the incoming message.</p>
  */
-@Beta
 public interface NeighbourMessageContext {
     /**
      * Gets the port where the packet came in to the network.
diff --git a/core/api/src/main/java/org/onosproject/net/neighbour/NeighbourMessageHandler.java b/core/api/src/main/java/org/onosproject/net/neighbour/NeighbourMessageHandler.java
index 040f4b0..d5c3f10 100644
--- a/core/api/src/main/java/org/onosproject/net/neighbour/NeighbourMessageHandler.java
+++ b/core/api/src/main/java/org/onosproject/net/neighbour/NeighbourMessageHandler.java
@@ -16,7 +16,6 @@
 
 package org.onosproject.net.neighbour;
 
-import com.google.common.annotations.Beta;
 import org.onosproject.net.host.HostService;
 
 /**
@@ -25,7 +24,6 @@
  * <p>An application may implement this interface in order to provide their own
  * logic for handling particular neighbour messages.</p>
  */
-@Beta
 public interface NeighbourMessageHandler {
 
     /**
diff --git a/core/api/src/main/java/org/onosproject/net/neighbour/NeighbourMessageType.java b/core/api/src/main/java/org/onosproject/net/neighbour/NeighbourMessageType.java
index 63fd199..b4e1da2 100644
--- a/core/api/src/main/java/org/onosproject/net/neighbour/NeighbourMessageType.java
+++ b/core/api/src/main/java/org/onosproject/net/neighbour/NeighbourMessageType.java
@@ -16,12 +16,9 @@
 
 package org.onosproject.net.neighbour;
 
-import com.google.common.annotations.Beta;
-
 /**
  * Neighbour message type.
  */
-@Beta
 public enum NeighbourMessageType {
     /**
      * Request message.
diff --git a/core/api/src/main/java/org/onosproject/net/neighbour/NeighbourProtocol.java b/core/api/src/main/java/org/onosproject/net/neighbour/NeighbourProtocol.java
index ad00dd1..048fe3c 100644
--- a/core/api/src/main/java/org/onosproject/net/neighbour/NeighbourProtocol.java
+++ b/core/api/src/main/java/org/onosproject/net/neighbour/NeighbourProtocol.java
@@ -16,12 +16,9 @@
 
 package org.onosproject.net.neighbour;
 
-import com.google.common.annotations.Beta;
-
 /**
  * Enumerates protocols used for neighbour discover/address resolution.
  */
-@Beta
 public enum NeighbourProtocol {
 
     /**
diff --git a/core/api/src/main/java/org/onosproject/net/neighbour/NeighbourResolutionService.java b/core/api/src/main/java/org/onosproject/net/neighbour/NeighbourResolutionService.java
index d64cc5e..f0741ec 100644
--- a/core/api/src/main/java/org/onosproject/net/neighbour/NeighbourResolutionService.java
+++ b/core/api/src/main/java/org/onosproject/net/neighbour/NeighbourResolutionService.java
@@ -16,7 +16,6 @@
 
 package org.onosproject.net.neighbour;
 
-import com.google.common.annotations.Beta;
 import org.onosproject.core.ApplicationId;
 import org.onosproject.net.intf.Interface;
 import org.onosproject.net.ConnectPoint;
@@ -27,7 +26,6 @@
 /**
  * Provides a means of registering logic for handling neighbour messages.
  */
-@Beta
 public interface NeighbourResolutionService {
 
     /**
