diff --git a/web/api/src/main/java/org/onosproject/rest/resources/FlowsWebResource.java b/web/api/src/main/java/org/onosproject/rest/resources/FlowsWebResource.java
index e026662..fa5c3c7 100644
--- a/web/api/src/main/java/org/onosproject/rest/resources/FlowsWebResource.java
+++ b/web/api/src/main/java/org/onosproject/rest/resources/FlowsWebResource.java
@@ -50,6 +50,7 @@
 import java.util.List;
 import java.util.stream.StreamSupport;
 
+import static org.onlab.util.Tools.nullIsIllegal;
 import static org.onlab.util.Tools.nullIsNotFound;
 
 /**
@@ -65,6 +66,7 @@
     private static final String DEVICE_NOT_FOUND = "Device is not found";
     private static final String FLOW_NOT_FOUND = "Flow is not found";
     private static final String APP_ID_NOT_FOUND = "Application Id is not found";
+    private static final String FLOW_ARRAY_REQUIRED = "Flows array was not specified";
     private static final String FLOWS = "flows";
     private static final String DEVICE_ID = "deviceId";
     private static final String FLOW_ID = "flowId";
@@ -115,13 +117,15 @@
     public Response createFlows(@QueryParam("appId") String appId, InputStream stream) {
         try {
             ObjectNode jsonTree = (ObjectNode) mapper().readTree(stream);
-            ArrayNode flowsArray = (ArrayNode) jsonTree.get(FLOWS);
+            ArrayNode flowsArray = nullIsIllegal((ArrayNode) jsonTree.get(FLOWS),
+                                                 FLOW_ARRAY_REQUIRED);
 
             if (appId != null) {
                 flowsArray.forEach(flowJson -> ((ObjectNode) flowJson).put("appId", appId));
             }
 
             List<FlowRule> rules = codec(FlowRule.class).decode(flowsArray, this);
+
             service.applyFlowRules(rules.toArray(new FlowRule[rules.size()]));
             rules.forEach(flowRule -> {
                 ObjectNode flowNode = mapper().createObjectNode();
