diff --git a/inventory_provider/routes/data.py b/inventory_provider/routes/data.py
index b515bf443de6842d004aa35901b3d92bbeb19772..d882cc4b309d228e0a294722fa6413cb7f763a2b 100644
--- a/inventory_provider/routes/data.py
+++ b/inventory_provider/routes/data.py
@@ -50,3 +50,36 @@ def routers():
     return Response(
         json.dumps(list([k.decode("utf-8") for k in r.keys("*")])),
         mimetype="application/json")
+
+
+@routes.route("/interfaces/<hostname>", methods=['GET', 'POST'])
+@require_accepts_json
+def router_interfaces(hostname):
+    redis_config = current_app.config["INVENTORY_PROVIDER_CONFIG"]["redis"]
+    r = redis.StrictRedis(
+        host=redis_config["hostname"],
+        port=redis_config["port"])
+    ifc_data_string = r.hget(hostname, 'interfaces')
+    if not ifc_data_string:
+        return Response(
+            response="no available info for '%s'" % hostname,
+            status=404,
+            mimetype="text/html")
+
+    def _interfaces(s):
+        for ifc in json.loads(s):
+            if 'v4InterfaceName' in ifc:
+                yield ifc['v4InterfaceName']
+            if 'v6InterfaceName' in ifc:
+                yield ifc['v6InterfaceName']
+
+    interfaces = list(_interfaces(ifc_data_string.decode('utf-8')))
+    if not interfaces:
+        return Response(
+            response="no interfaces found for '%s'" % hostname,
+            status=404,
+            mimetype="text/html")
+
+    return Response(
+        json.dumps(interfaces),
+        mimetype="application/json")