diff --git a/src/Tree/Controllers/TreeController.cs b/src/Tree/Controllers/TreeController.cs
index eeaee8777e08775320d1da0ab340ae29ade8efa9..2d0d7a063852b0b2f79c3e61674b14807e73c6fc 100644
--- a/src/Tree/Controllers/TreeController.cs
+++ b/src/Tree/Controllers/TreeController.cs
@@ -152,7 +152,16 @@ namespace Coscine.Api.Tree.Controllers
                 string metadataCompleteness = null;
                 try
                 {
-                    var metadata = jObject.SelectToken("data").SelectToken("metadataStorage").First.First.First;
+                    JToken metadata;
+                    if (jObject.SelectToken("data").SelectToken("metadataStorage").Count() > 0)
+                    {
+                        metadata = jObject.SelectToken("data").SelectToken("metadataStorage").First.First.First;
+                    }
+                    else
+                    {
+                        metadata = jObject.SelectToken("data").SelectToken("metadataStorage");
+                    }
+
                     var shapesGraph = (Graph)_rdfStoreConnector.GetGraph(resource.ApplicationProfile);
                     metadataCompleteness = GetMetadataCompleteness(metadata, shapesGraph);
                 }