diff --git a/jass/server.py b/jass/server.py
index 66aa31e32cc2ae71ba0aff71391790efa972d3a5..44ee25f3bc72dd096885f08dd1991b2669361f4f 100644
--- a/jass/server.py
+++ b/jass/server.py
@@ -52,6 +52,14 @@ async def read_index():
     return RedirectResponse(url="/webui/")
 
 
+@app.get("/api/tables", response_model=List[str])
+def inittable_list():
+    """List initTables"""
+    for filename in os.listdir( config["DATA_DIR"] ):
+        if filename.endswith(".hdf5") and "worktable" not in filename:
+            yield filename
+
+
 @app.post("/api/phenotypes", response_model=List[Phenotype])
 def phenotypes_list(init_table_name: InitTableNameModel):
     """List phenotypes"""
diff --git a/jass/test/test_server.py b/jass/test/test_server.py
index 7172207031416a0b0b873062b50d798b51ddb5e6..024202f4c4d35470b0a22118e7300871197b47e1 100644
--- a/jass/test/test_server.py
+++ b/jass/test/test_server.py
@@ -70,6 +70,12 @@ class TestDefaultController(JassWebClientTestCase):
         self.assertNotEqual(respT1, respMain)
         self.assertSetEqual(set(respMain.keys()), {'nb_phenotypes', 'nb_snps', 'name', 'desc'})
 
+    def test_get_tables(self):
+        response = self.testing_client.get("/api/tables")
+        self.assert200(response, "Response body is : " + response.content.decode("utf-8"))
+        resp = json.loads(response.content.decode("utf-8"))
+        self.assertSetEqual({"initTable.hdf5", "initTableTest1.hdf5"}, set(resp))
+
 
 if __name__ == "__main__":
     import unittest