diff --git a/src/main/java/net/onrc/onos/api/flowmanager/FlowId.java b/src/main/java/net/onrc/onos/api/flowmanager/FlowId.java
new file mode 100644
index 0000000..b3c42d6
--- /dev/null
+++ b/src/main/java/net/onrc/onos/api/flowmanager/FlowId.java
@@ -0,0 +1,38 @@
+package net.onrc.onos.api.flowmanager;
+
+import net.onrc.onos.api.batchoperation.BatchOperationTargetId;
+
+/**
+ * Represents ID for IFlow objects.
+ */
+public class FlowId extends BatchOperationTargetId {
+    private final String value;
+
+    /**
+     * Creates new instance with string ID.
+     *
+     * @param id String representation of the ID.
+     */
+    public FlowId(String id) {
+        value = id;
+    }
+
+    @Override
+    public String toString() {
+        return value;
+    }
+
+    @Override
+    public int hashCode() {
+        return value.hashCode();
+    }
+
+    @Override
+    public boolean equals(Object obj) {
+        if (obj instanceof FlowId) {
+            FlowId other = (FlowId) obj;
+            return (this.value.equals(other.value));
+        }
+        return false;
+    }
+}
