diff --git a/incubator/protobuf/models/src/main/proto/net/flow/FlowRuleEnumsProto.proto b/incubator/protobuf/models/src/main/proto/net/flow/FlowRuleEnumsProto.proto
new file mode 100644
index 0000000..269f429
--- /dev/null
+++ b/incubator/protobuf/models/src/main/proto/net/flow/FlowRuleEnumsProto.proto
@@ -0,0 +1,30 @@
+/*
+ * Copyright 2017-present Open Networking Foundation
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+syntax = "proto3";
+option java_package = "org.onosproject.grpc.net.flow.models";
+
+package net.flow;
+
+// Corresponds to org.onosproject.net.flow.FlowRule enums.
+enum FlowRemoveReasonProto {
+    IDLE_TIMEOUT = 0;
+    HARD_TIMEOUT = 1;
+    DELETE = 2;
+    GROUP_DELETE = 3;
+    METER_DELETE = 4;
+    EVICTION = 5;
+    NO_REASON = 6;
+}
\ No newline at end of file
diff --git a/incubator/protobuf/models/src/main/proto/net/flow/FlowRuleProto.proto b/incubator/protobuf/models/src/main/proto/net/flow/FlowRuleProto.proto
new file mode 100644
index 0000000..9bf615d
--- /dev/null
+++ b/incubator/protobuf/models/src/main/proto/net/flow/FlowRuleProto.proto
@@ -0,0 +1,39 @@
+/*
+ * Copyright 2017-present Open Networking Foundation
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+syntax = "proto3";
+option java_package = "org.onosproject.grpc.net.flow.models";
+
+package net.flow;
+
+import "net/flow/TrafficSelectorProto.proto";
+import "net/flow/TrafficTreatmentProto.proto";
+import "net/flow/FlowRuleEnumsProto.proto";
+
+// Corresponds to org.onosproject.net.flow.DefaultFlowRule.
+message FlowRuleProto {
+    int32 priority = 1;
+    int32 app_id = 2;
+    string device_id = 3;
+    int64 flow_id = 4;
+    int32 timeout = 5;
+    bool permanent = 6;
+    int32 table_id = 7;
+    string table_name = 8;
+
+    net.flow.TrafficSelectorProto selector = 9;
+    net.flow.TrafficTreatmentProto treatment = 10;
+    net.flow.FlowRemoveReasonProto reason = 11;
+}
\ No newline at end of file
