diff --git a/scripts/clmc-service/graph-pipeline.sh b/scripts/clmc-service/graph-pipeline.sh
index 2b8700cc6984400e1221ca0f995d136e69a79537..c59987bb2601a712b2a2e71b5df941257baa4491 100644
--- a/scripts/clmc-service/graph-pipeline.sh
+++ b/scripts/clmc-service/graph-pipeline.sh
@@ -61,34 +61,39 @@ do
 
     echo "Received request uuid ${graph_uuid}"
     echo "Timestamp to use for measurement ${timestamp}"
-    echo "Received endpoints: ${endpoints[@]}"
 
-    for endpoint in ${endpoints[@]}; do
-        for ue in ${ues[@]}; do
+    # check the count of the received endpoints, otherwise an empty array will be considered as an unset variable
+    if [[ ${#endpoints[@]} -eq 0 ]]; then
+        echo "The list of endpoints returned by the build request is empty"
+    else
+        echo "Received endpoints: ${endpoints[@]}"
+        for endpoint in ${endpoints[@]}; do
+            for ue in ${ues[@]}; do
 
-            echo "Querying for round-trip time..."
-            response=$(curl -s -X GET "http://${CLMC_IP}/clmc-service/graph/temporal/${graph_uuid}/round-trip-time?startpoint=${ue}&endpoint=${endpoint}")
+                echo "Querying for round-trip time..."
+                response=$(curl -s -X GET "http://${CLMC_IP}/clmc-service/graph/temporal/${graph_uuid}/round-trip-time?startpoint=${ue}&endpoint=${endpoint}")
 
-            global_tags=$(echo ${response} | jq -r '.global_tags | to_entries | map("\(.key)=\(.value|tostring)") | join(",")')
-            echo "Global tags: ${global_tags}"
+                global_tags=$(echo ${response} | jq -r '.global_tags | to_entries | map("\(.key)=\(.value|tostring)") | join(",")')
+                echo "Global tags: ${global_tags}"
 
-            local_tags=$(echo ${response} | jq -r '.local_tags | to_entries | map("\(.key)=\(.value|tostring)") | join (",")')
-            echo "Local tags: ${local_tags}"
+                local_tags=$(echo ${response} | jq -r '.local_tags | to_entries | map("\(.key)=\(.value|tostring)") | join (",")')
+                echo "Local tags: ${local_tags}"
 
-            fields=$(echo ${response} | jq -r '. | "\(.round_trip_time) \(.response_time) \(.total_forward_latency)"')
-            read rtt service_delay network_delay <<< ${fields}
+                fields=$(echo ${response} | jq -r '. | "\(.round_trip_time) \(.response_time) \(.total_forward_latency)"')
+                read rtt service_delay network_delay <<< ${fields}
 
-            echo "Round-trip-time: ${rtt}"
-            echo "Service delay: ${service_delay}"
-            echo "Network latency ${network_delay}"
+                echo "Round-trip-time: ${rtt}"
+                echo "Service delay: ${service_delay}"
+                echo "Network latency ${network_delay}"
 
-            measurement_line="${results_measurement},${global_tags},${local_tags} round_trip_time=${rtt},service_delay=${service_delay},network_delay=${network_delay} ${timestamp}"
-            echo "Measurement line: ${measurement_line}"
-            response=$(curl -si -X POST "http://${CLMC_IP}/influxdb/write?db=${db_name}" --data-binary "${measurement_line}")
-            echo "InfluxDB response: ${response}"
+                measurement_line="${results_measurement},${global_tags},${local_tags} round_trip_time=${rtt},service_delay=${service_delay},network_delay=${network_delay} ${timestamp}"
+                echo "Measurement line: ${measurement_line}"
+                response=$(curl -si -X POST "http://${CLMC_IP}/influxdb/write?db=${db_name}" --data-binary "${measurement_line}")
+                echo "InfluxDB response: ${response}"
 
+            done
         done
-    done
+    fi
 
     echo "Deleting temporal graph..."
     response=$(curl -s -X DELETE "http://${CLMC_IP}/clmc-service/graph/temporal/${graph_uuid}")