diff --git a/inventory_provider/routes/ims_classifier.py b/inventory_provider/routes/ims_classifier.py
index 29b3b2e12f7f4098af2c1c3fad001e8e70b19969..c55a784ae3c7c7d285f0e7946434c921055d85ea 100644
--- a/inventory_provider/routes/ims_classifier.py
+++ b/inventory_provider/routes/ims_classifier.py
@@ -279,10 +279,13 @@ def get_interface_services_and_locs(ims_source_equipment, ims_interface, r):
                 r.pop('id', None)
 
     if not result.get('locations'):
-        result['locations'] = [
-            build_locations(
-                _location_from_equipment(ims_source_equipment, r))
-        ]
+        locations = build_locations(
+            _location_from_equipment(ims_source_equipment, r))
+        result['locations'] = [locations] if locations else []
+    if not result['services']:
+        result.pop('services', None)
+    if not result['related-services']:
+        result.pop('related-services', None)
 
     result['locations'] = _remove_duplicates_from_list(result['locations'])
     return result