diff --git a/src/Dependencies.py b/src/Dependencies.py
index da430ca3144e4a03ed981793f41a6f0d91871c7d..0fe8160b864378bbb93232ad93a31727976c4542 100644
--- a/src/Dependencies.py
+++ b/src/Dependencies.py
@@ -4,6 +4,7 @@ from fastapi import Security, HTTPException
 from fastapi.security import APIKeyHeader
 from starlette.status import HTTP_403_FORBIDDEN
 
+from Settings import SETTINGS
 from logic.databaseNew.Database import SessionLocal
 
 
@@ -19,6 +20,6 @@ API_KEY_HEADER = APIKeyHeader(name='apiKey')
 
 
 async def check_api_key(apiKey: str = Security(API_KEY_HEADER)):
-    from main import API_KEY
-    if not secrets.compare_digest(API_KEY, apiKey):
+    expectedApiKey = SETTINGS['api']['key']
+    if not secrets.compare_digest(expectedApiKey, apiKey):
         raise HTTPException(status_code=HTTP_403_FORBIDDEN, detail='apiKey invalid')
diff --git a/src/Settings.py b/src/Settings.py
new file mode 100644
index 0000000000000000000000000000000000000000..5b76c1dcc2728bd41226c56fc4620b254350310f
--- /dev/null
+++ b/src/Settings.py
@@ -0,0 +1,4 @@
+import json
+
+with open('../settings.json', 'r', encoding='UTF-8') as f:
+    SETTINGS = json.load(f)
diff --git a/src/logic/databaseNew/Database.py b/src/logic/databaseNew/Database.py
index 72be7a8b49ce842371fc3d9b79c7eeda05e9a536..bec3c8d08e6956376e06fd1bdb1845d2627ffa99 100644
--- a/src/logic/databaseNew/Database.py
+++ b/src/logic/databaseNew/Database.py
@@ -2,10 +2,13 @@ from sqlalchemy import create_engine
 from sqlalchemy.ext.declarative import declarative_base
 from sqlalchemy.orm import sessionmaker
 
-SQLALCHEMY_DATABASE_URL = 'sqlite:///../../storageLeaf_new.db'
+from Settings import SETTINGS
+
+databasePath = SETTINGS['database']['databasePath']
+databaseUrl = f'sqlite:///{databasePath}'
 
 engine = create_engine(
-    SQLALCHEMY_DATABASE_URL, connect_args={'check_same_thread': False}
+    databaseUrl, connect_args={'check_same_thread': False}
 )
 
 SessionLocal = sessionmaker(autocommit=False, autoflush=False, bind=engine)
diff --git a/src/main.py b/src/main.py
index 612933a939e0855ab4c62170430759ba13e594d5..726f3b5d60d4eab84aaf76f36cbdc6be836acb1a 100644
--- a/src/main.py
+++ b/src/main.py
@@ -4,6 +4,7 @@ import uvicorn
 from fastapi import FastAPI
 from starlette.responses import RedirectResponse, JSONResponse
 
+from Settings import SETTINGS
 from logic import Constants
 from logic.databaseNew import Models
 from logic.databaseNew.Database import engine
@@ -15,11 +16,6 @@ Models.Base.metadata.create_all(bind=engine)
 with open('version.json', 'r', encoding='UTF-8') as f:
     versionInfo = json.load(f)['version']
 
-with open('../settings.json', 'r', encoding='UTF-8') as f:
-    settings = json.load(f)
-
-API_KEY = settings['api']['key']
-
 app = FastAPI(title=Constants.APP_NAME,
               version=versionInfo['name'],
               description='The StorageLeaf API')
@@ -36,4 +32,4 @@ async def version():
     return JSONResponse(content=versionInfo)
 
 if __name__ == '__main__':
-    uvicorn.run(app, host=settings['server']['listen'], port=settings['server']['port'])
+    uvicorn.run(app, host=SETTINGS['server']['listen'], port=SETTINGS['server']['port'])